Setting up for java dev on Windows with Chocolatey

This guide shows steps for the complete setup of Windows pc for developing java applications. Traditionally, software packages on Windows are installed by manually downloading them from their web pages. This feels very fiddly when compared to using Unix package managers such as yum. Fortunately, there is Chocolatey, which brings some of this experience to…

Stay away from dogmas kids

In software development, there is no single right way to do things. Not one natural way to model data. Not one correct way to design API. Neither there is one true way to design your classes. Trial and error Software development activity, like most things we do in life, is not something our human minds…

Key to effective software development teams

Last year I have transitioned to developing our microservice-based SAS products. Ever since then I had a feeling that our progress is slow considering relatively low complexity of the new features we delivered. My realization of what was the real cause of it came late and it made me reevaluate what factors stand behind effective…

Brain science tips for efficient skill learning

This post is a follow-up of what I wrote about brain science and memory. That previous article was more theoretical, where I just reviewed my findings on this subject. Now I would like to use this knowledge and suggest some practical approaches to learning and mastering skills, not only from the software development area. Visualize…

My favorite keyboard shortcuts for basic code editing

Taking your hand off the keyboard and putting it on a mouse is an expensive operation. It costs a lot of time and energy and although it sounds like a joke I am actually serious. Compared to having your hands lying still and just tapping fingers, any whole-arm movement suddenly feels like a helluva work….

What does brain science say about learning

Some people are better at learning and mastering skills than others. For us, programmers, this ability is especially important. While some professions rely on the same set of skills that are acquired before or at the first job, there seems to be no end of learning in software development. It is just both vast and…