Over a million developers have joined DZone.

What is Your Favorite Open Source Project?

DZone 's Guide to

What is Your Favorite Open Source Project?

Free Resource

I do spend at-least couple of hours everyday reading about what is going on in Java community to be aware where we are heading and what is hot these days.

Because in Java land everyday new frameworks, new libraries came out and few of them might be really good and can drastically simplify the work you are doing. So I thought it is good to know about these new and hot stuff even if you are not going to use them in your official project.

In the last few years it looks like frameworks craze is gone and Programming Languages era begins. Ceylon, Kotlin, XTend, Go, Dart, Swift etc etc...every BIG company is trying to invent their own programming language.

But I feel like again things got changed in 2014, now everyone talks about MicroServices and Platform.

Based on my understanding, Platform means a generic infrastructure tailored to solve one type of domain problem by using one or more programming languages (Polyglot programming) based on the need. You no need to stick to one programming language.

And then I am seeing on web, more and more companies started calling their "framework" as a "platform" which makes me wondering when this framework turned into Platform.

To tell this satirically I posted the following tweet on twitter.

"Seems frameworks & programming languages craze is gone..Now if u want to sound like a model IT developers spel Platform as much as possible."

Interestingly this turned into another interesting discussion https://twitter.com/sivalabs/status/484369820805124096 where my favorite twitter buddies participated.

Now the topic of interest is "Whether writing a book is good option or not. If yes, writing on what? Spring, SQL, JOOQ???

My friend @lukaseder feels instead of writing about Spring, better to write on SQL. And @petrikainulaine expressed his opinion that "he is not that passionate about SQL" which is my opinion too.

Twitter isn't nice place for long discussion because of 140 char limit. So I created this post on my blog so that we can continue on this topic more elaborately.

First is writing a book a good option?

Yes, if you are passionate about technology and the topic you are writing about. No, if you are writing just to earn money. No, if you don't want to spend your weekends also writing content thinking you could improve content within the page limit :-).

And my friend @dr_pompeii brought up another issue "Piracy". Yes, that's one of the problem. You can get a pirated e-copy of most of the books in 2 months.

On what topic should you write? Better to write on SQL instead of Spring?
Here I disagree with LukasEder :-). I write on topics which I am interested in and have good understanding. And let me shamelessly agree that I am not very good at SQL and I can't write a book on it which is more interesting than any of the existing SQL books. And most importantly I don't have a passion on SQL.

Promoting the articles on popular website might not be that difficult. I can write couple of posts about JavaEE 7 and let Reza do the promoting part :-)

I like Spring not just because of its popularity, I do learn how to design and code in a better by going through its source code. I learn how to write a good abstraction layer by looking into various Template classes and Adapters in Spring source code.

At time I also feel like I am after this Spring framework for a very long time and want to learn something different and more interesting.

So if it is not Spring, what is a good open source project that you suggest worth reading its source code and learn something good?
I thought of taking a deep look into Jersey (JAX-RS) and SLF4J libraries.

What would you suggest? Any ideas? - See more at: http://www.sivalabs.in/2014/07/what-is-your-favorite-open-source.html#sthash.3cToVHgZ.dpuf


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}