• Post Reply Bookmark Topic Watch Topic
  • New Topic

How difficult is Java?  RSS feed

 
Benjamin Bajic
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello,
I am planning on attending an academy that focuses on programming. The main goal of the academy is learning Java, mySQL and a bit of C#. My question is basically how hard is Java for someone who has quite a bit of experience in coding? I have done many projects before in Visual Studio C# (nothing super complicated tho) & I have done some simple tasks in Pascal, QBasic, and C. The academy is 1 year long.
 
jon ninpoja
Ranch Hand
Posts: 291
3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hi ben...im a java noob the last 6 months..maybe less
sometimes i hour a day is all i get to work on this stuff

its good that you have some background...

i think java or OOP principles arent hard to learn...they are just hard to apply

i guess it also depends what your long term goals are,where/what area you want to move into etc etc

its the old easy to learn difficult to master speech i guess...

but if you have a passion and dedicate lots of time there is no reason you wont succeed

good luck...i envy you...i would give anything to give up my day job and go do a degree in software development

this is a great community here...speak again
 
Campbell Ritchie
Marshal
Posts: 56534
172
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to the Ranch
Basic Java® is really easy to learn. C# is very similar to it.
Programming, on the other hand, is very difficult. It is not the language which is difficult, but the underlying concepts.
 
Avishek Das
Greenhorn
Posts: 2
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to Ranch
I am also a noob in the Java platform.

But I have passed your situation having the same question.. and now I have the answer.

Java is not quiet hard. it's all about how you can think of a System.
Syntax learning won't kill your time much.
But, as it has a giant library you need to study as well as apply them.
And of course, keep Traveling in Ranch.
It will skill you up, silently
 
Benjamin Bajic
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thank you for the warm welcome. I like the feedback. I already did hear that its quite simple to use but has many quirks and tricks about it.. Which seems like something great once you do master it, as it offers a wide range of libraries...
 
Dwayne Barsotta
Ranch Hand
Posts: 86
1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
One of the things I like about Java is the scope of use in the real world.  You'll find it almost everywhere.  Second is the amount of places like this where people are willing to help.  The Java community in general is very helpful!   On this note I agree with Campbell, Java in general is fairly easy once you understand the basics.  What I did learn is the concept of Programming can be difficult.  I have recently (past year) gone back to University to get my CS bachelor degree.  It is amazing how much outside of a language is involved in computer programming.  For this reason I am not a big fan of coding academies as a starting point in this industry.  I believe once you understand programming in general then the camps or academies are good for teaching you a language - but the language is not the skill it is a tool.

Let me use an analogy that is common for me.  I am by trade a Diesel Technician.  I spent a long time learning how trucks work, are diagnosed and repaired.  In order to fix them I need to use different tools like a torque wrench, ratchet wrench or impact wrench.  Each one of those tools can be used to accomplish the same task but all work a little differently.

The same holds true with programming.  A customer presents a problem, you learn as much as you can about the problem and conditions then you use a tool like Java, C/C++, Javascript, Python ext to solve the problem.

Hope you enjoy this.   
 
Paul Clapham
Sheriff
Posts: 22823
43
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I gave you a cow for that post, Dwayne. I agree with all of that, a programming language (and likewise a computer program) is a tool for doing something useful for somebody. That seems to be overlooked a lot by beginners -- you'll see a lot of people struggling with artificial homework exercises which are obviously just meant to teach you about some feature of Java. I find it much easier when what I'm programming is related to something specific which is related to the real world, and I get the feeling that's true for a lot of people.
 
Junilu Lacar
Sheriff
Posts: 11477
180
Android Debian Eclipse IDE IntelliJ IDE Java Linux Mac Spring Ubuntu
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dwayne Barsotta wrote:I need to use different tools like a torque wrench, ratchet wrench or impact wrench.  Each one of those tools can be used to accomplish the same task but all work a little differently.

The cow for the reply was well-deserved.

I'd point out a nuance here though: Knowing when to use a torque wrench vs. an impact wrench requires a deeper understanding of what you're trying to accomplish. To the naive layman, a torque wrench and an impact wrench are just different tools that help accomplish the same thing: turn and tighten a nut or bolt. However, Dwayne will probably be the first to yell at someone who starts tightening an engine cylinder head bolt with an impact wrench. Only someone who understands the danger of doing that will understand why Dwayne would yell out and stop that person from doing some pretty costly damage.

Likewise in programming, there are things you need to know outside of the language that requires a deeper kind of understanding, one that goes beyond the mechanics of the language and into the realm of principles and design to know, for instance, when it's more appropriate to use a for-loop instead of a while loop or when to use dependency injection instead of a service locator or vice versa. These are more advance concepts though and requires a bit more study and experience.

What I often complain about is that it seems even the basics get overlooked these days at schools and students are made to focus too much on mechanics. Looking back over my last 1000 or so posts, most of them tend to be reminders to beginners that they should think about choosing good names, organizing their code properly, breaking down a problem into smaller, more manageable chunks, assigning responsibilities properly, etc. Most of these are about basic code and design hygiene.  In Dwayne's world (scha-wing!), this is like basic shop organization and cleanliness. You can't work well in a shop where tools and parts are just strewn about all over the place, equipment is haphazardly stored if at all, and workers are just walking about aimlessly with no purpose or direction, unsure if they should change the oil, rotate the tires, or replace the catalytic converter. If you observe carefully, many of our newbie posters here seem to be just like that.

We old-timers at the Ranch can only hope that what we do here helps folks who are willing to take the time to read and understand the advice we give so they can have a better and deeper understanding of programming principles and techniques, not just the mechanics of the Java language.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!