• Post Reply Bookmark Topic Watch Topic
  • New Topic

Getting over a fear (justified or not) of starting java  RSS feed

 
Sayth renshaw
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi

Just trying to get some thoughts so I can come to a decision. The decision whether to progress onto learning java(which I keep going to do) or pushing further with python. Why I keep going to move to java is for jobs(why else), on our area java jobs are 5x more numerous than ruby or python jobs. Also thinking of java as skills are more transferable to C# and possibly swift moving forward.

Currently I don't rely on python for my income I do it for personal projects. IT is a section of my current role and when I am its small scale reports and databases so using VB and SQL and SharePoint.

I have my own business ideas as well that I am starting to build in python. So will [b]Java add significant development time to my projects?[/b]? Is this really a justifiable fear I assume from the rhetoric that Java does take longer but how much in reality.

for example and because its the last thing I wrote, this simple csv reader writer I wrote in python would I be scared if I saw what it took to write in Java or pleasantly surprised?



All it does is take a bad csv file like this.


and clean it to be like this.


Where is my fear of development speed justified, versus security of jobs and potentially being more agile and entrepreneurial with python. Its been bugging my mond and I just need to come to a stronger decision.
 
Knute Snortum
Sheriff
Posts: 4279
127
Chrome Eclipse IDE Java Postgres Database VI Editor
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I've been programming in Perl for about 15 years and in Java for about two, and I can tell you, there are places that Perl would would be hard pressed to go where Java fits very well. I still program in Perl -- I wrote a nice little Scrabble word finder in it -- but I wouldn't want to write a dynamic web page in it.

This may not apply as well to Python, which is a more modern language. But my point is, I still write shell and batch files sometimes. I write in Perl sometimes. But Java is going to make writing big programs, like ERP, much less buggy.

I never found developing in Java slow. Yes, you can knock out a quick script in Perl or Python faster, but with Agile programming, things keep rolling fast and solid.

Keep Python. Develop in Python. But learn Java.
 
Winston Gutkowski
Bartender
Posts: 10575
66
Eclipse IDE Hibernate Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Sayth renshaw wrote:for example and because its the last thing I wrote, this simple csv reader writer I wrote in python would I be scared if I saw what it took to write in Java or pleasantly surprised?

Sayth,

I'm afraid your sample file lines are far too long for our "code=java" blocks, which makes your thread very tough to read.

I've swapped them for "code=text" blocks which, unfortunately, wraps some of the lines, so it's not perfect; but it does make the thread much easier to read.

Winston
 
Winston Gutkowski
Bartender
Posts: 10575
66
Eclipse IDE Hibernate Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Sayth renshaw wrote:Is this really a justifiable fear I assume from the rhetoric that Java does take longer but how much in reality.

Unfortunately, like most answers to questions like this, it's: It depends.

It depends on your background, your motives, what you want to do...and probably a hundred other things I haven't mentioned.

Comparing the two languages is rather like comparing apples and oranges: Java is a statically-typed, object-oriented, compiler-based language based on C-style syntax; Python is dynamically typed, and so exhibits a lot more traits of a scripting language.

I have no experience of Python itself, but my experience of languages like bash and awk suggest that they are quicker to develop, and especially quicker to "program on the fly". Unfortunately, they can also allow you to make much bigger mistakes:
I once wrote a script that did the equivalent of an "rm -rf /" on a Unix box. Obviously, that wasn't how I wrote it, or what it was intended to do; but my employer wasn't best pleased when that's what it actually did do on one of their servers.

Learning Java involves a whole new paradigm where coding generally isn't the first thing you do; and for that reason development is usually slower. On the other hand, what you get at the end (if you do your job right) is industrial-strength, safe applications that cover a multitude of areas and are easily extendable. I suspect that for many things they may also be faster than Python; but it's pure speculation.

Also: Java has a fabulous amount of (some might say too many) 3rd party libraries and frameworks that are mature and well-tested.

So: you pays yer money and you takes yer choice: rapid development or structured design? dynamic typing or static? There's no "right" answer, and it's highly likely that your choice will depend on what you need to do, or where you work.

About the only other thing I can say is that, according to the TIOBE index, Java is still vying for #1 with C, although the graph shows a shallow, but steady, decline over the heady days of the early 2000's; but the overall numbers tend to go with what you've seen for available jobs: about 5-6 times "more users". Python would also appear to be in decline after a peak around 2011, so maybe there are other "up and comers" in its niche.

HIH

Winston
 
Stevens Miller
Bartender
Posts: 1445
30
C++ Java Netbeans IDE Windows
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Winston Gutkowski wrote:I once wrote a script that did the equivalent of an "rm -rf /" on a Unix box.

You are not a doctor until you've killed your first patient.
 
Sayth renshaw
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Python has a little decline going due to python3. Even though python3 has been out for 5 years it has very low usage numbers. It appears by a few articles and guides that some may have gone to Go rather than move. Fair but a little strange considering Go was meant as a better C/C++.

I've never used python for my job only VB, SQL, sharepoint and excel/access.

With the changing work landscape here of restructuring and partnering my job will change or go.

I think Java will put me in better stead. I have done a Diploma in database design and SQL with VS and some c#(not much) so Java may complement that as well.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!