LatCraft goes Javanese! Our September event is devoted to building and testing stuff in Java — one of the most popular programming language and platform in the world. See how to make your tests shine using Spock framework, understand the principles of Mutation Testing and grasp Java 8 features for writing type-safe code.
Type safety is considered to be a trend this year. It helps to catch mistakes during compilation time and enables powerful auto-completion in IDE. Lets explore to what extent we can push type safety in Java 8! Dmitry will live code a simple framework in Java 8 using lambdas, method references, generics, dynamic proxies and a bit of reflection magic. All that in 33 minutes. You will learn how future frameworks can evolve to enhance type-safety and how these advanced approaches could be used in your code.
Nobody argues these days that unit tests are useful and provide valuable feedback about your code. But who watches the watchmen? Or, in other words, who is testing tests themselves? Let's talk about test code quality, code coverage and introduce mutation based testing techniques. Ideas behind mutation testing are nothing new in academic world, but only now become recognized by software developers while programming their production systems. This talk will look into how mutation testing can be used to improve your test-driven development cycle and will try to answer if existing tooling is mature enough to be used while coding your daily tasks.
JUnit has been around for over a decade. Enhanced with Mockito and AssertJ it still can be used to write decent automatic tests, however, there is a better way. Thanks to Spock Framework tests/specifications can be written faster in shorter and more readable form. During my talk I will present 7 opinionated reasons why it is worth learning Spock to bring your automatic tests to the next level. This presentation is targeted at Java developers who care about writing automatic tests (all of us?) and for some reasons haven't decided to give Spock a shot yet.
Proud to be made in Latvia! August event is all about local success stories. From small ideas up to the worldwide markets - learn how locals actually did it! Don't say that you have to live in the big city to become BIG!
eazyBI is an easy-to-use business intelligence web application. I will talk about a different startup story of eazyBI – how to build a profitable, growing, international niche business without a venture capital, without a big team, without an office and without millions of users.
Success stories aren’t born overnight, success comes with hours of hard team work, persistence, and innovative ideas. During my speech, I will share our experience of building Mintos, the Top 3 peer to peer lending marketplace in Continental Europe.
We are living in the "era" of start-ups and business incubators where individuals with an idea in their arsenal are desperate for an investment. I would like to share a story about the journey with a different path taken. A story of what it means to grow from one guy in a living room to a stable and successful business without a dime of external investment. We are small yet powerful - nine people are taking good care of more than 1.5M users worldwide.
This time we decided to organize a workshop around probably the most mentioned technology in last 3 years. Let's play with Docker in July! Fully Hands-on! Laptop is required! Limited places!
Extreme automator and software craftsman. Dev that likes Ops.
IT consultant and automation evangelist identities trapped in one human body.
Software delivery guy, community builder and technology explorer.
Did you know that about 80% of your career success is due to Soft Skills and Emotional Intelligence? Technical skills are not enough. Join us to learn how to manage your time and finally get things done, how to turn emotional feedback into a constructive discussion, how to start thinking out of the box, and achieve more!
The fundamentals of time and task management are well known to everybody. Still majority of us does not succeed in managing tasks, deadlines and schedules in the long run. Why personal efficiency methods are not working? How to make them working for you? How does our brain maintain the activities, wishes and emotions we have? What you should do in order to overcome the procrastination? Ljubov will provide her answers to these questions, as well as share her life hacks.
Have you ever been verbally attacked by someone? Have you ever heard something like "You always miss the deadlines!" or "Your code is a mess!"? Spend 40 minutes with me and learn how to turn such statements into your advantage!
During the presentation, you will hear the real life experience how to transform boring work through the divergent thinking into incredible, breathtaking work. You will find out how to use your creativity to implement impossible ideas to your work in a short time. Moreover, you will learn to take the initiative and to make mistakes without fair. Most complex problems have a solution; sometimes we just have to think about them in a different way.
Let's dive into understanding and improving effectiveness of agile retrospectives with interactive workshops by two active Scrum practitioners: Angel Diaz-Maroto (Agile Coach) and Alexey Krivitsky (Certified Scrum Trainer). Everyone will participate in the action!
Despite of all the ocean of information on this topic, there still seems to be a big gap between the wisdom that is in the books and what people actually do in office meeting rooms under a lit sign: "Don't enter. Retrospective on air".This session will provide details to the 16 exercises of the Retrospective Cheat Sheet allowing you to build a good number of retrospective agendas varying the exercises based on the team mood, size and setup.
Retrospectives are one of the most powerful concepts in Agile and often one of the most difficult ceremonies to facilitate. The reason is that with Retrospectives we’re trying to put together the concept of Kaizen continuous improvement and the leverage of team coaching. In other to take advantage of this powerful idea, powerful skills and maturity are needed both for teams and facilitators. Furthermore, is critical to differentiate between Kaizen and a team coaching process. In this session I’ll start going through both concepts separately: team kaizen and team coaching. The goal is to get the audience understanding more in depth the core concepts behind retrospectives so they can go beyond the ceremony and explore how to evolve their needed competences and retrospective structure to the next level.
Let's investigate Infrastructure as Code (IaC) forefront - how to express the configuration, production and deployment infrastructure in executable and repeatable form, what tools are suitable for that purpose, best and worst practices - all covered.
One of the ways to describe software architecture is to express its configuration in executable and therefore repeatable form – infrastructure as code. Software configuration has a variety of frequently appearing patterns and ready-made abstractions to better communicate the intent of the architecture described in the form of infrastructure as code. The intent of this presentation is to provide summary of such patterns.
In this quickie, Eduards will explain what Terraform is all about and will show how to build and evolve Amazon Web Services infrastructure using this great tool.
Yevhen will show he has built a system that keeps your code and infrastructure in Git, deploys a Windows-based project to AWS via Octopus Deployment, and describe lessons he learned during that journey.
This time, we decided to try a totally different format - 100% interactive, 2-hour panel discussion with lots of questions varying from career development and motivation; to the latest trends in software architecture, personal f%ckups and lessons learned. Four rock-star software architects. Different companies, background and opinions.
Dmitry is a coding architect specializing in large-scale Java, Web, CI, Test Automation and Agile development. He has experience in banking, insurance and telecom industries. He is Java User Group Latvia and Test Automation Club co-founder and producer of Riga Dev Days conference. Dmitry leads a crowd of serial software craftsmen in Neueda, Riga working on the next generation of test automation tools.
Experienced software architect with entrepreneur mindset who enjoys building products - from idea to working software. ex. CIO of 4finance, ex. CTO of BuyerDeck
IT system architect with 10 year experience in data search and retrieval technologies, parallel computing and natural language processing. Jurgis co-founded Clusterpoint in 2006. Prior to that he spent 6 years managing a team that was building a large-scale internet crawling and search technology.
Software Architect, Web Application Developer, Project manager who loves to connect business and reality of web development through agile. Fan of Ember.js.
Eduards is a hands-on architect and software development coach who helps awesome teams around the globe become more awesome – work smarter, run faster and enjoy the journey. He leads Latvian Software Craftsmanship Community, organises DevTernity – the biggest software craftsmanship conference in Baltics, blogs, speaks, and even sleeps. Sometimes.
Let's open new year by covering topics that are tightly related to software craftsmanship and professionalism. How to behave professionally? How to cure 'Agile hangover'? How to advance your career? How to choose tools properly and avoid falling into tool-hype trap? Let's address these questions together!
As part of the software craftsmanship community we want to deliver great results (and have fun with it). There are so many tools out there that could help you craft the best software (and have fun with it)! Choosing your tools is as hard if not harder than building it. We shall talk about how to balance the stakeholders' interests, the team's interests, your personal desires and even give something back to the community when picking the tools you use.
Meet Johnny - a full-stack developer with 5+ years of experience under the belt, M.Sc degree and 'get sh%t done fast' mentality. Although Johnny possess exceptional technical skills, Milton - his manager, doesn't give him promotion, no matter how hard Johnny tried and how many late nights he has spent coding. Together with Johnny you will walk the thorny road to his remarkable career; the road full of struggles, discoveries and actions that may or will influence your professional life.
This time, we decided to dedicate an event to some of the greatest Latvian startups made in Latvia. Let's check out how they started, the hard ways they got at their beginnings, as well as their grow process, and where thy are today.
FROONT is the application for 90% running in the front-end. In this presentation you'll find an explanation how FROONT implements orchestration of data storage (MongoDB, SQLite), back-end services (Flask) and browser with the help of BackboneJS, HTML5 and other modern client-side technologies. We’ll also explain the reasoning behind technological choices, share our mistakes and pitfalls on the way, so others can avoid them.
BuyerDeck is a small startup trying to change the way complex B2B sales are done. In this short talk Andrejs will describe what's under the hood of BuyerDeck - how it's built, what technologies and tools are used and what challenges faced. And Andrejs will share his personal experience of what does it mean to be software engineer at startup.
JVM is the most widely used runtime in the world and Java is the most popular programming language. Let's learn how to craft well-structured Java applications, how to make Java applications reactive by diving into RxJava and see what performance tuning tools JVM offers.
Reactive programming is a new big thing for a couple of years now, but it also shrouded with a distrust as any new technology with mindblowing concepts. Lets pretend together that you didn't hear about Reactive and start learning it from scratch!
Monitoring your production JVMs is extremely important. Though, not always you have a luxury of having direct access to production servers, which suffer from performance peaks, memory leaks or concurrency issues. Not always you are able to catch JVM issues without an ability to debug the code in-place. There are quite many tools that can help analyzing performance issues of your JVMs based on real-time monitoring data as well as on logs available only post-mortem. This presentation will give an overview of these tools.
Software developers spend most of their time working with code on literal level. Unfortunately, vast amount of design flaws hides behind hundreds of interrelated packages, classes and methods, destroying your system deliberately. In this talk will supply you with knowledge necessary to manage complexity of your logical design from theoretical, practical and tooling perspectives. Time to keep architecture in predictable and manageable state!
Let's talk about BigData - how BigData can serve for entertaiment services and help you build service like Shazam, what is the role of SQL and NoSQL databases in BigData and how can you build a real time architecture with huge amount of data using Kafka and Storm.
Everybody talks that NoSQL is cool! It says absolutely nothing. Let's take a concrete NoSQL database (Cassandra). Check what's inside and compare with a concrete SQL database (MySQL). Then try to make some real conclusions. Interested? Come to this talk.
This presentation is going to discuss how to develop real-time data processing system with such technologies as Kafka and Storm. The first part of the presentation will give a high-level overview of the real-time data processing and what is Lambda architecture. The second part will dive into a lot of specifics and give advice on how to put this into practice effectively.
Over 500 million people have identified a playing song with Shazam. From obscure remixes to the latest hits and more - Shazam links what you hear to the greater Web. Get a glimpse into the challenges faced when sourcing content for one of the world's most popular apps.
Let's leave technical stuff for a day and concentrate on things (mostly) no one is talking about, things that play major role in your professional life - the way we think, the way we behave and the way we market ourselves. Come and extend your knowledge beyond software and get closer to better and complete professional life.
The second half of the last century brought us “Systems Thinking” - a proven approach for developing solutions to messy situations that often seem like intractable dilemmas. In this talk Silvija will reveal what Systems Thinking is all about and how it can be applied in our daily life.
Seller thinking plays key role in achieving your goals - successful career, better environment, independence, happy family or all of them. If you want to become most well paid specialist and learn how to make offers others can't resist - welcome on board!
There is strong evidence base from neurosciences, health care, education and organisations systems that mindfulness is powerful tool for enhancing well-being, self-regulation and emotional intelligence, personal and professional effectiveness. Indra will reveal the mindfulness concept and practical applications for stress regulation in personal life and professional environment.
Mobile is booming! Consumers all around the world are adopting smart devices at an astounding pace, opening up more and more opportunities to engage in new ways – changing the way we interact, entertain, educate and shop. Let's see what experts can teach us!
Your idea for an app worth nothing. Nobody needs app alone, people are too spoiled today and they want products, not apps. UX, UI, development, support website, tutorials, promo videos, regular updates and support – these are all the parts of a product. Are you ready for that?
Jovche’s gonna talk about technical and organisational issues and mistakes done by the local brands like Ask.fm and Fabula during mobile product development, and ways to avoid them by his personal experience.
Andrey will give a brief history of wearables and their current state, discuss current market state and volume and finally share ideas about future trends of this very hot market and what might come next.
Android is a great piece of machinery as a platform, but one thing it which it fails hard is its API. In his short talk Alexey will nag about some brain exploading APIs that he stumble upon during his experience with Android. Expect some brain teasers, quizes and fun trivia.
Let's talk about Ops, DevOps and Continuous Delivery without hype - how hard DevOps adoption in enterprise organisation is, what goes wrong with Continuous Delivery, why do we have package managers zoo and what can we do about it.
Hopefully everyone has enough of presentations 'What is DevOps?'. Let's talk about real stuff - what are DevOps issues and struggle in enterprise life. I'll give you few ideas and several simple steps what covers it all.
Continuous Delivery is still trendy and everyone wants to get there, but there are so many walls you have to break and nerves to spoil! In this talk Eduards will present real-world battle stories of continuous delivery adoption, 8 underlooked things that tend to go wrong and what practices can you apply in order to survive.
Packages are everywhere in software development. Every ecosystem, every operating system, every programming language brings in a 'new way of managing dependent libraries and packages. What are they? Are they that much different? Why can't we have a universal package manager? Should you create yet another package manager? This presentation is based on the experience of strugling through managing dependencies in different ecosystems and gives some interesting findings.
Let's talk about data and NoSQL - how does data panorama looks like nowadays, why should you care about NoSQL and market-leading solutions like ElasticSearch.
In this presentation Valery will briefly describe types of NoSQL storages available today, their pros and cons and use cases. As an example you will see how to model Twitter Feed using different storage types..
Software development has changed. There is no standard database technology to use anymore. If you know SQL perfectly, it will not be sufficient to stay qualified in 2015. This session will explain how to pick the most appropriate database for your next project, reveal common misconceptions about SQL and NoSQL and provide listeners with a rough idea where it is all heading to. The talk is based on personal experience of making the shift from fitting square pegs into round holes to stopping worrying and embracing the change.
Advanced search capabilities are becoming mandatory for web application of any size. In this talk Ruslan will present the industry-leading solution - ElasticSearch. Let’s see what functionality does it offer and how you can tame it for your needs!
Amazon Web Services is the best cloud platform available on the market. LatCraft is probably the most visited IT user group in the country. Experts from Luxembourg, United Kingdom, Czech Republic and Latvia are gathering in Riga in order to share their knowledge, success recipes and war stories with you. 5 amazing speakers. Spectacular talks. Rocking AWS.
Improve, validate, iterate. Current development practices promote avoiding waste - a challenging task, especially in a traditional infrastructure. With programmatic control over your environment Amazon Web Services lets you optimize the infrastructure as needed and treat it as another versionable aspect of your application. In this session we'll look at how both start-ups and enterprises use AWS to increase their rate of innovation and continuously deliver new functionality to users in a cost efficient way.
Do you believe it’s possible to quickly build a cluster that allows you to work with a datacenter like it’s a single pool of resources? In this practical session Jakub will show how to build scalable, fault-tolerant cluster from scratch with minimal effort and maximal gain.
Everyone keeps telling about how AWeSome Amazon Web Services are. How they are all about elasticity, simplicity and scalability. But we all know that nothing is perfect in this world, except Chuck Norris. So what about the dark side? The talk will be about some nice tricks you can do with AWS, some things you can not do with AWS, and some things you can do, but with tears, pain and swearing.
Developers are always looking for ways of improving their efficiency. Over the last years container technology has become an increasingly popular way of managing application packaging and deployments, however handling many containers running on many machines has its own set of challenges. The recently announced Amazon EC2 Container Service aims to simplify the management of running containers in a cluster of EC2 instances. In this session the initial feature set of the service will be introduced we'll go through a demo of common operations.
We’ve all heard Big Data pouring out of the press over the last years and frankly, are probably all sick of it. The term is probably one of the most successful buzzwords of our industry to date. Why is that? This session will aim to shine a light on the enigma by introducing example use cases we’ve worked with our clients. We’ll walk through the AWS toolset for Data Management and introduce concrete architectures and the good, the bad, and the ugly sides of them. This isn’t your mother’s MySQL sharding...
There are cool programming languages available that are not yet mainstream, but deserves significant attention. Come over and learn more about sharp programming languages such as Rust, Golang and Erlang.
Every chef now and then uses pinch of his secret spices to make a dish somewhat special and exquisite. This talk will provide introduction into nature of Rust sweetness and will answer to most important questions: Why and When does it make our dishes better? We will iterate over small code snippets and take a look How strong typing and functional thinking can be applied to low level system programming.
This talk will guide you through the core concepts of the Go. We will cover the type system, memory model, packaging and of course the famous concurrency primitives of the language: goroutines and channels. Small working code snippets will be available on the github for immediate coding experience.
This talk is devoted to giving overall insight on some fundamental problems on how we perceive and perform development of modern software and suggesting plausible cure in Erlang adoption. It has never been easier to address many of never-ending issues with parallel, distributed and fault tolerant computing. Get to know the Erlang-way of fighting against complexity of software world before those problems catch you unprepared!
We'd love to spend 24/7 in code, but software development is all about people. We will talk about teams, people, what makes them tick and what should you do to become a great team player.
Andrey will share his experience and discoveries on the topic of Growing Teams. What does it take to grow a team? What environment facilitates team growth? What distinguishes great teams? What can kill teams? What are characteristics of great team member? And some more.
Romans will talk about a developer's journey from college to senior developer. What is wrong with our education? What is wrong with our expectations? Roman will share his idea of the focus points on our path to success as a person and as an industry.
Having worked both as developer and as team manager, Aleksej will share his experiences with team, personal and process aspects that facilitate or inhibit productivity. What makes one successful in the eyes of others? How is efectiveness developed and maintained? These and related questions are important to any conscious software craftsman.
Learn what does it mean to lead the way and what true leaders expect from their peers. Come over to hear deep insights from guys that went long path towards becoming Chiefs.
Maris will share his empirical findings from two very distinct perspectives of IT Specialist and CIO - how kicking some ice is related to to literally breaking speed limits while going to work, which [just as a side effect] - leads to earning a lot more money too.
Raimonds has been CTO for large software development company and now is CEO/CTO of a small startup. He will talk about several topics and compare from his experience what has been common and what different in large and small teams.
Jakub will reveal how not to get killed when a developer becomes a manager. What happens, when you become a manager? How do you organize teams, workspace? How do you help people? How do you deal with politics, communication? And much more.
Want to share your knowledge with like-minded people?Contact us!
Want to become a sponsor? Get in touch!