One Ring To Rule Them All!

Can we have the ubiquitous language, or IDE, or company, or server etc…the answer i think is NO. However in this series of posts, I will be looking at languages, Companies, IDE’s etc that are gradually becoming that One that rules them all.

During my few years of programming, I have found out that one language has ALMOST established itself as the lord of the languages…that language is Java. I will point out several application areas where Java can be and is being used.

1. Desktop: although not the most popular or most used, but it still CAN be used and IS BEING used for desktop applications

2. Web: For both minimal and especially enterprise web applications, Java has also established its foothold.

3. Mobility: Java is almost the only language for developing cross-device mobile phone applications. The CDC can also be used for several other things where resources are limited. A good example is the java pen.

4. Telephony: Java can also be used for telephone applications, the java telephony API handles this.

5. RIA: With JavaFX, Java has also come into RIA applications development, although still in its infancy (and some believe JavaFX will never grow out of infancy….tallk for another day) the several online demos show that flash has got a competitor.

6. Smart Cards: Except you want to write assembly code, or basic….the only other alternative I know to developing smart card based applications is Java(I stand to be corrected).

7. Mobile Agents: With mobile agents, distributed applications are made easier, Java is almost the only language of choice in this arena too.

8. Artificial Intelligence: Although functional languages are preferred in this space, Java CAN and IS BEING used for developing AI. Facial Recognition, Biometrics, Robotics, name it.

9. Operating System: JNode is Java’s attempt at OS. The other languages that plays in this space are C and assembly language.

10. Java also plays in the multimedia space (BluRay…the only language so far).

There may be more application areas of java, and these only proves that Java may (and may not, I could have written the same thing about C/C++ 20 years ago) become that ubiquitous language. Lord of the Languages.

Advertisements

7 Comments »

  1. jrod said

    Hello,

    I rarely post my opinion online because I’m generally too busy, but this topic is something I’m quite passionate about. These types of articles often become a target for people to rant and rave about their language of choice and complain about the authors ‘opinion’. I just wanted to say that I totally agree with what’s written here. I pretty much see the following as the best options when choosing the best language to learn and master:

    1. Pick a mainstream technology/language/framework and master everything you can in that arena:
    Option 1: Java – which is a bit more challenging, because as seen above, you end up with a ton of directions, frameworks, etc. etc. My advice, start with one area (e.g. web or desktop) and master it, then move on to the next. In the framework arena I’d recommend the same approach, start learning a technology stack well, rather than just knowing about all of them. Most of what you’ll learn is transferable to other frameworks.
    Option 2: .NET – I know, I know – don’t throw stones at me!!! This is a huge employment option and pretty much offers almost all the same options as above as far as career opportunities goes. C# is so similar to Java that I was up and writing code in a day. It’s kind of hard to be a master in Java and .NET unless you work on both all the time, but these two technology groups give you a ton of career options. Most employers are either in one camp or the other. If you’re a *nix person who likes open source or openness then Java is probably the better choice. If you could care less and live in an area that is dominated by .NET…well enough said.

    2. Pick a niche market and become a master in that area:
    I would venture to say (although I could be wrong) that there’s a lot of money to be made as a consultant if you are a master of a niche. By this I mean less common languages like 4D, ObjectiveC, etc. I spent a number of years mastering 4D and have found some pretty sweet contract opportunities because the resource pool for expert level 4D developers is so small. This is always a bit of a gamble because the number of employers is also so much smaller. If you live in an area where there is a lot of demand for a niche like this go for it. For long term career advancement I’ve found that I’ve chosen Java, PHP, and Python to be my languages of choice, with Java being my primary focus. My reasoning, I love open source and *nix OSes and there are a ton of employers in these three arenas. The Java ones seem to pay best though.

    3. Jump on the RAD bandwagon:
    If you want to be able to turn stuff around quickly, not worry about scalability or extensibility (You can accomplish this with scripting languages, but should think hard about the advantages of Java/.NET if it’s an enterprise app), and just get it out there then the scripting languages definitely rule. I love Java to the point where I’d consider myself a Java evangelist. I even used Java to code in my interview with Microsoft (dumb idea I know; think that’s why they didn’t call me back ?!? ), but for a small businesses to turn around small e-commerce apps or data driven web apps, scripting languages are just so quick. The other advantage is that many hosting services offer Apache/MySQL/PHP and perhaps some other Apache modules, but not Java and if they do offer Java it’s probably limited to Tomcat.
    While I’m sure it’s a matter of opinion and I don’t want to start a silly debate, PHP is probably your best bet for fast scripting with a ton of hosting options. It’s also probably the lowest paid gig in town though. Ruby on Rails and Python on Django also both have caught my attention. I’m still trying to learn Django (decided to go that route since I know Python already). I’m not saying one of these is better than the other. They pretty much all have the same options, question is, where’s the jobs and what do those pay?

    Good luck fellow developers!

  2. B. Marbury said

    There is data that I think proves your point: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

    I don’t see java going away any time soon.

  3. I couldnt agree with jrod more. PHP has been the almost only language for small scale web developement. Despite my love and expertise in Java, I still find myself using PHP on a daily basis.

    @B.Marbury From the chart I can see that python is rising fast with a +1.18%, its the highest in that table, did that say that python might be the future java? after this post yesterday, I spoke with a friend and he said you can now use python do develop apps for s40/s60 phones. I think the popularity of python is something to also write about.

  4. Java is certainly the language that has found it’s use in every aspect of Information Systems/Information Technology space.

    @jrod i do agree with you on a lot of things, however on the “Jump on the RAD bandwagon” we are beginning to see a lot of frameworks based on JEE that is handy when it comes to turning things around quickly e.g JSF(with all the associated flavors : Richfaces, Icefaces, myfaces), Wickets etc. And like you advice Its an advantage picking one or two of such frameworks and get beyond intermediate level in using them.

    It’s a pity though that we haven’t seen a proliferation in JEE hosting, guess that’s why it is called Enterprise Edition, not for everyday mashup application.

  5. nairalists said

    Whaoooo….nice article, as a java shop we won’t agree less with you.

    Your article popped up netbeans….our favorite ide.

    Kuddoooos !

  6. B. Marbury said

    @Akintayo
    Although it is definitely gaining popularity, I don’t think the data in the table says that Python might be the future Java.

    I predcit Python popularity will flatten out for the reasons listed by the author and jrod. Especially, enterprise applicability and jobs (developer pool, pay).

  7. Temitope Faro said

    Hello Segun, good to see you are bloggin regularly now. Got loads of stuff tos ay but i’ll send a proper reply l8r.

RSS feed for comments on this post · TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: