nedeľa 17. októbra 2010

Hey Mr. Developer, what are you gonna do?

These days, it is not easy for a developer to choose where to invest his or her additional creativity and effort. The decision depends on developers' skills, interests and finally on the available projects and challenges. The happy ones are doing enough creative work at their jobs or academy. But there are many developers seeking for exciting projects which would wake up their passion and let them show what they are good at. Let's have a look at few of these opportunities.

Do you want to be at the cutting edge of technologies?
Then read technological blogs. That is the place where you get hot ideas and trends about where to invest your additional time.  Here are some of the blogs you may have a look at:
http://www.dzone.com/links/index.html
http://java.dzone.com - for Java developers
http://planet.jboss.org - JBoss is strong community supporter and aggregates many valuable blogs on their site
To be at the cutting edge of technologies development, you may need to focus more on platforms then on what can actually be built using them. For example in Java EE 6, there was a new extension mechanism introduced, which enables extending the functionality of Java containers. If you create something valuable, there are chances that Java EE 7 will have your signature imprinted.
The Java platform may seem a bit "huge" for the beginner, but there are plenty of relatively new and less evolved technologies, which will welcome your helping hand. After all, you may want to help improve one of the platforms that you are familiar with.

Do you want to make a business?
Try customization. There is huge amount of good software, which is not used by the right users just because the software needs a bit of a customization and users need helping hand in getting it to work. Try to be helpful and listen to the people in your community. Their needs and ideas are your key to a global business which lays within your reach.

Are you bit of a "scientific soul"?
You can have a look at semantic web or other applied AI areas (natural language processing, pattern recognition, games AI...). The semantic web is quite developed and does not feel like a new wonder of the world anymore, but that doesn't mean it's not interesting. Actually it is becoming more interesting then it was before mostly because some people did a great job in this are. You can have a look at Linked data and think of adding semantics to your existing web application or widget. Or add semantic functionality to web browsers by extensions, which may become used by thousands of users in very short time.

Do you like to compete?
If you like to compare your results with other developers, you can accept some of the challenges available out there. There is a variety of opportunities, from which you can choose. If you are looking for creativity challenge, have a look at Intel AppUp developer challenge or Android Developer Challenge. Participation may also bring you unexpected financial satisfaction ;-) For those who feel like competing in creating software by the specification, there is popular TopCoder web with many features and opportunities that may inspire the whole range of your development passions.

At the bottom line, i would like to mention one recommendation which i have read in Jason Frieds' books - try to solve your own problem and you will find solution to problem of many other people. Not all of us get brilliant ideas every day, but waiting for such an idea is a wasted time. Start doing something and you will figure out what you wanna do along the way ;-)