Happy Midsummer! While some of you (and some of us too) are already on the holidays and for others, it's right around the corner, here is this month's Dev Breakfast newsletter to provide you with something new to learn and to get inspired by.
Meet Timur, this month's curator
Timur is a Helsinki-based software developer primarily focused on backend and cloud. He likes exploring approaches and techniques that help build more efficient software. When he is not tweaking scripts and staring at source code, he enjoys jogging outdoors, reading good fiction, and playing video games. You can read about Timur's hands-on findings here
Programmers often tend to think about the success path of their programs, leaving out errors at times (I'm no different, guilty as charged). Some languages — looking at you, Go — force us to at least acknowledge that errors could happen, which definitely helps. In this article, Joe Duffy writes about how to think about errors in general, differentiate them, and communicate back to the user, making the application more reliable and robust
Richard Hamming gave a famous speech called 'You and Your Research' at Bell Labs back in the 1980s, but I keep coming back to its transcript over and over. The speech, despite the name, is vastly applicable to software engineering and still holds up. Dr. Hamming goes over different aspects of work that might help advance one's career: promoting your work, collaborating with others, what one should concentrate on, and much more. Besides, he is just a really good lecturer, it's a pure pleasure to read or listen to what he has to say.
Understanding how to write concurrent programs in Go might take a bit of time, especially for someone coming from a language that deals with it differently, like me with C#. Katherine Cox-Buday, however, does a really good job explaining how it's done in Go and introducing patterns that help write efficient concurrent applications.
If you happen to follow Jonathan Blow, a game designer, and programmer who created Braid and The Witness, you might find his opinions on software engineering a bit idealistic. However, more often than not he has solid points on many aspects of the job. In this interesting talk, he speaks about the increasing complexity of software and points out that while we move up the ladder of abstraction, we should not forget what's down there and how we ended up where we are.
Many projects these days do not use a traditional backend any more but have moved their logic to FaaS (Function as a Service) like AWS Lambda. The core idea is that you don’t have to manage a server, and instead you just upload code and it will be executed on some event.
This Tech Weeklies episode shows you how to write a stateless service (in our case a telegram bot) in Haskell and deploy it to AWS Lambda with Terraform.
When: The application period starts on 27.6.2022. and the study program starts at the beginning of October 2022.
Who: We are looking for fresh graduates who are eager to become developers or data engineers. Or early professionals who wish to start a career in tech. You do not need to know everything. You only need the motivation to learn and enjoy the ride this Autumn.
We are always happy to hear from people who love learning and have their hearts in the right place. You may check other interesting open positions we have.