When all you have is a (Java) hammer...

Submitted by Xilodyne on Sat, 07/09/2016 - 21:56
program langauages graphic

There's the old saying that when all you have is a hammer, everything looks like a nail.  That's pretty much been my philosophy in terms of computing languages -- when it comes to the programming problem, Java is my hammer.  With a side bit of UNIX Bash scripting for quick data problems and gluing together solutions.  Outside of academia languages, which I do not even pretend to follow,  or statistics languages, or frameworks, is it really necessary to know everything?  I'll peruse the articles in IEEE Computer or my ACME magazines, but that's about it.

Having a hammer avoids the problem of opportunity cost.  If one is spending time doing an activity, there isn't time to do something else.  Getting proficient in language isn't easy, the learning curve is high no matter which a language one chooses.  Or at least for me.   At some point in the last 20 years I've had that problem before and have the code, which still works with just a little updating.  Plus there is a great online corpus of Java code and discussions. 

It isn't that I've avoided other languages.  I've worked directly in BASIC (Radio Shack TRS 80 - my first time programming in 1981), Pascal, Fortran, Watfiv, Databus (DataPoint computers), Assembler (never again!),  C, C++, Visual Basic, SQL, SQL Plus (Oracle), Script Builder (Lucent CTI).  Have I missed one?  It's possible.    At work other like minded programmers have their own passions (nay, religion) when it comes to their language: Perl, PHP, RPG, Ruby, Python, Lisp, C++ C, C#, JavaScript,  COBOL, Visual Basic, ABAP (SAP),Power Builder, Scala, Objective C.  They have their niche.  Each language does one area very well but, granted this is my opinion, they spend just as much time debugging and overcoming some arcane feature of the language as I do in Java.  And sometimes bugs are never solved.  Is there such a thing as a perfect language?  Perhaps when our robot overlords take over they'll create one.

However, never say never.  Java is old.  Technology changes.  The majority of the machine learning courses I'm looking at are in python and there are some great libraries for ML (nice summation of libs with some Python advocacy) .  Having used Python a few times now my first reaction is still, what a mess!  I see another big learning curve "opportunity" coming...

 

Tags