Milen Dyankov

Software Engineer, Consultant, Developer Advocate

Recent Posts

  • February 14, 2018

    The fruits of our labor

    I usually do rather technical talks around software architecture and design. Unless one is а famous storyteller, IT conferences would rather take one more “What’s new in the latest version of XYZ technology” than risk a bet on something that may end up anywhere between boring and sales pitch. I don’t blame them but that is why it is not often that I’m given the opportunity to speak about culture, purpose and all those non-measurable, soft, human things. Therefore I’m extremely grateful Let’s Manage IT invited me and trusted me to give exactly this type of talk. Knowing that I’ll likely not have the opportunity to present it anywhere else, I decided to convert it into a blog post and publish it here.

  • January 09, 2018

    Java EE, EE4J, OSGi, ... and the paradox of choice

    Not so long ago, I had very interesting conversation with someone who works on Java SE. At some point we discussed the donation of Java EE to Eclipse Foundation. I don’t quite remember what statement I was making when I got this response (not a precise quote):

    Do you seriously believe this whole EE4J thing has any chance to survive? Oh my god, you are so naive if you do! We sent Java EE there to die!

    This was a private conversation and I didn’t ask nor I was given a permission to quote my interlocutor, so I’m not going to tell you who that person was nor where and when exactly this conversation took place. But the sentence got stuck in my mind. It made me think about OSGi - a technology claimed dead by way too many Java developers. Funny enough, many OSGi projects are developed at Eclipse Foundation. All of a sudden the Eclipse Foundation started to look like a nursing home for terminally ill “used to be famous” Java technologies.

  • November 10, 2017

    Am I against JPMS and microservices?

    I started writing this on my way back home from Devoxx BE 2017. The reason is, two things happened during the conference, that made me ask myself this question.

    First one was a conversation with a very well known person working on Java who was curious to know what benefits I (or perhaps the company I work for) get from publicly speaking against JPMS (a.k.a. JSR376 a.k.a. Jigsaw). The second was a message from a colleague of mine who was asking me to explain how do I feel about microservices because he apparently saw somewhere I’m publicly speaking against them.

    That got me thinking. Is it possible that two of my most popular talks, namely “What’s not new in modular Java?” and “Microservices and modularity or the difference between treatment and cure”, were picturing me as the person who is against JPMS (and therefore Java 9) and against microservices.

  • September 03, 2017

    Cleaning up my GitHub mess

    You know how it goes. You continuously stack stuff in the most convenient place (shelf, drawer, desk, …) and it’s all fine, up until the moment you no longer can find what you need. That is the day when you need to put everything else aside and clean up your mess. Not sure if it is Conway’s Law to blame but this seams to happen to my repositories on GitHib. And today was the day when I no longer could recall which repo is under which account, where it resides on my local hard drive and if it’s actually in sync. So today was my GitHub cleanup day. Just in case you need to cleanup yours or if you use one of my projects and something is no longer where you expect it to be, here is what changed.

  • May 06, 2017

    What to expect in post-JPMS Java world

    The atmosphere around Java 9 (and most notably JPMS a.k.a. JSR 376 a.k.a. Jigsaw) is getting really hot. Java community seams to be divided into 3 camps “developers who honestly believe JPMS can simplify modularity”, “developers who have been dealing with modularity long enough to clearly see the issues Java platform architects don’t want to see” and “developers who don’t care (for now)”. I personally think the 3rd group is by far the largest and this is the main issue and the main reason for the noise. Why? Because those are the developers who never cared about modularity. Most of them still don’t care, but now they will be forced to learn about modularity. The question is what will they learn? Real modularity as described in Modulariy Maturiy Model or limited version of it wrapped in a package with a label “simple” on it?

    This is not a new thing! The battle between “good quality code” and “simple to write code that works” is something that takes place in every project! And you know which one wins most of the time. At least I think I’ve been in this industry long enough to know, so I though I’ll write down a few prediction based on what I think will happen to JPMS and what impact it will have on Java projects in the following months.