• Employee Development
  • March 01, 2016

Five Lessons from Jfokus 2016

This year for the first time I had an awesome opportunity to visit the Jfokus conference in Stockholm. Jfokus is a steadily growing developer conference that has been held in Stockholm's biggest and newest congress center, the Waterfront. Its main target is the Java Ecosystem but on a broader scale, it involves anything that is connected to software development in that area. Quoting Mattias Karlsson, the main organizer of the event: "Jfokus covers Java, the JVM platform, open source technologies, microservices, Web/HTML5, mobile platforms, Agile, NoSQL, DevOps and languages such as Javascript, Scala, Groovy and much more". It also gives place to the emerging Internet of Things.

Main Lessons from Jfokus 2016

As you can guess from the number of covered topics, this conference is huge. Over two days, it had almost 80 presentations, most of the time six running in parallel, and hosted around 2,5 thousand people. Nonetheless, the arrangements were perfect. Fast wifi, excellent food and great distribution of rooms, exhibitions and people. In the following, I will try to summarize what Jfokus 2016 taught me:

1. Be passionate
Being passionate is the key to everything: to happiness, success and world peace. Love what you do and do it with all your heart. And find what feeds your passion the best! Explore new things, do hobby projects, read books or articles, and share your thoughts and experiences with other people. You can see many examples of Jfokus from people doing development just for fun. My favorite was Stephen Chin's Java retro console project. Unfortunately, it was not recorded at Jfokus, but you can watch the session here. Also, I warmly recommend you to read Chad Fowler's "The Passionate Programmer: Creating a Remarkable Career in Software Development" book.

Zsolt Berki at Jfokus conference in Stockholm 2016

2. Don't be a ghost
It's not a surprise that being social is one of the main lessons of a huge community event. So, don't be the ghost, who lurks in the night, developing in silent solitude just to vanish on the first light. Be part of the online community that spans across nations and bounds together everybody from freshly graduated Indian developers to Architects of the Silicon Valley. Even if you don't have time to regularly write blog posts or participate in opensource development, you can surely find the time to ask and answer questions on StackOverflow, read and comment the latest articles on Dzone or join some local developer communities close to your area. Worry not, if you don't find any, there are virtual ones as well like VirtualJug, Nighthacking and many more.

3. Value code quality
Believe it or not, many presentations focused more or less on the importance of clean code. Not only Uncle Bob is obsessed with the topic enough to write a whole book about it, but it is a generally accepted good engineering practice that many of us ignore. Clean code is easier to read and understand by others, including your future self, and it also has a better performance and it is proven to be less error-prone. The most common argument against it is that it takes too much time to refactor. The ones who say this may not have looked deep enough into the topic to know how to do clean code efficiently, and probably don't know how to use their IDE's modern refactoring tools properly. It will take you only a few minutes to clean up the code before committing your change. In the long run, with an easily readable code, you'll end up saving much more of your time than just those few minutes you could choose to spend on the cleaning up process.

Zsolt Berki at Jfokus conference in Stockholm 2016 near Liferay stand

4. Keep on going, but follow your own path
Each time these conferences introduce new buzzwords, like the current "microservices". New technologies arise all the time and existing ones release new features on daily basis. Of course you have to go with the flow or else you will lose your market advantages and sink to the bottom. So, be wary since everything may not be meant for you. Sure, microservices could be your new dream architecture, but if you jump into it without a proper knowledge, DevOps and most importantly, without a real need, it can turn into a vivid nightmare. Similarly, the new parallel streams of Java8 can boost your application's performance, but it can also slow it down if your algorithm is poorly written or your dataset is too small. Therefore, I recommend you to keep up with the change, but think twice before you adopt a new thing. Do it only if you can gain business value with it.

5. Build a coding-engineering culture
One of the most important things in a company is to build up a culture. Not just a simple everyday company culture, but also a coding-engineering culture for the developers where teamwork and open discussion are natural and recommended practices used by instinct. This takes a lot of work to implement, but it has long-term benefits which lead to the success of the company. Remember that projects, technologies and even people come and go, but the culture will stay with the company.

Maybe none of this was new for you, or maybe it made you think at least a little. Anyhow, most (but not all) of the presentations have been recorded and you can watch them online here. Also, as a closing note, I would like to recommend you some of my favorite presentations:

Mod Programming, A Whole Team Approach: watch online
The Uncomfortable Truth of Bad Code: watch online
Beyond Features: watch online
Coding Culture: watch online

Zsolt Berki
Software Developer