Another year has passed since my last blog post, so it’s time to review what happened in 2024. It has been five years since I switched from simulation engineering to coding and more than a year since my latest blog post.
Main language: Python
I have been continuously relying on Python in 2024, too. I occasionally learn advanced features (e.g., I learned about named tuples from “Python Cookbook” by David Beazley and Brian K. Jones). It is essential to keep learning, even if you can solve problems with a given language. Otherwise, you can get stuck with specific, not-so-elegant solutions without questioning them or improving them in the future.
SQL and (Py)Spark remained essential tools in the data field.
A little bit JavaScript
I learned some foundational vanilla JavaScript to broaden my skills. Python and JavaScript are the two most popular languages among programmers. JS is more about web development and has professional frameworks for front-end development (React, Vue) or node.js for backend development. Python is more about any data-related field or for the backend within web development (with the help of Django or Flask frameworks). Learning different programming languages and different syntaxes can be stimulating so as not to become too comfortable.
Books I Bought
Python Cookbook (by David Beazley and Brian K. Jones)
I haven’t read it; I’ve just read the first few pages. It is not a beginner’s book, but it is worth reading and seeing some advanced coding solutions in the long run. You never know what Python trick or solution could be helpful if added to your toolbelt. Reading and learning about Python without any deadline or time pressure is a relaxing but very beneficial strategy in the long term.
Designing Data-Intensive Applications by Martin Kleppmann
It is less about a given technology or programming language and more about high-level data engineering concepts and problems. I encountered this book several times while looking for suggested literature for data engineers.
Slow Productivity by Cal Newport
It is a less technical topic, but Cal Newport’s books and ideas are handy, especially as we become increasingly connected and distracted by technology. I’ve read his earlier book about career planning (“So Good They Can’t Ignore You”, which highlights the importance of market demand beyond the popular “follow your passion” hint) and another about the digital world’s impact on our lives (“Digital minimalism”, describing a healthier way to live with today’s technology, being more aware of compulsive mobile and social media use).
His latest book was reassuring. He explained how often one can be distracted by messages and pings, but continuous incremental work could add significant value in the long term. Proper, distraction-free environments and rituals can also matter. In 2024, I tried to implement his suggestions about having deep work sessions during the day. During those periods when you are not on Slack or checking e-mails, you focus on a complex (coding) problem and try to avoid context switching.
Summary
In summary, there is always potential to learn and keep your skills fresh. It might seem less steep than the early phase of learning to code, but you can never really lean back. I could learn more about Python or add other topics to my skill set, like machine learning, cloud computation, more profound theoretical knowledge, security, and virtualisation (e.g., Docker, Kubernetes). You try to find the balance of imcomputingproving your “T-shape knowledge” between a focus area (e.g., Python, SQL, PySpark) and additional, broader topics mentioned above.