• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • Liutauras Vilda
  • Jeanne Boyarsky
  • paul wheaton
Sheriffs:
  • Ron McLeod
  • Devaka Cooray
  • Henry Wong
Saloon Keepers:
  • Tim Holloway
  • Stephan van Hulst
  • Carey Brown
  • Tim Moores
  • Mikalai Zaikin
Bartenders:
  • Frits Walraven

Isn't Java version 1.4 obsolete?

 
Ranch Hand
Posts: 694
Mac OS X Eclipse IDE Firefox Browser
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
It seems to me that learning Java version 1.4 is obsolete.
1. For the Cattle Drive, we bought an edition of "Just Java 2" that covers Java version 5.0.
2. Here is a link that I followed from the Cattle Drive website to download Java 1.4 and the Sun site says that 1.4 has reached the end of its life.
http://java.sun.com/j2se/1.4.2/download.html
3. I believe that my computer running Vista may require Java version 6.0

Can we use Java 5.0 (or even 6.0) for the Cattle Drive now?



 
Sheriff
Posts: 1367
18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
You may use the later versions of Java, but for the assignments we will ask you to ensure that they would compile as Java 1.4.

Java 5.0 adds some complexity that is really great, but essentially unnecessary for the major lessons that the Cattle Drive - eh - drives home.
 
Kaydell Leavitt
Ranch Hand
Posts: 694
Mac OS X Eclipse IDE Firefox Browser
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
OK, Thanks.
 
Master Rancher
Posts: 5060
81
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Perhaps it's time to update the instructions so they ask the user to download a JDK that is more readily available,
like maybe something here. I suppose if you really want to, it's possible to find more ancient JDK versions. But you have to skip past several messages suggesting you use something less cobwebby. I suggest the Cattle Drive instructions should maybe either link to a modern JDK, or at least give a better link to the specific now-deprecated JDK that you want people to use. If you opt for the former, it would be helpful to add instructions on how to compile with the -source flag in order to (a) eliminate pesky generics warnings, and (b) actually do what Katrina just asked: " ensure that they would compile as Java 1.4." Well, there are more complicated library issues too I suppose, but the biggest source of friction at the moment is that you're asking people to use a restricted subset of the language, without clear instructions on how to achieve this.

Note that it's probably worthwhile to check other links in the instructions to verify whether they're still current, and useful. There's at least one other problem ("Sun's JDK class documentation") just on the intro page; I haven't tried the later pages.

[ EJFH: Fix weird formatting issue ]
 
Kaydell Leavitt
Ranch Hand
Posts: 694
Mac OS X Eclipse IDE Firefox Browser
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
One of the reasons that I'm taking the Cattle drive is to get more experience so that I can pass the SCJP 5.0 exam.

I believe that Sun no longer offers the 1.4 SCJP exam certificate. It doesn't make sense for me to use Java 5.0 and compile for 1.4 (though this is an interesting thing to me).

 
Katrina Owen
Sheriff
Posts: 1367
18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I agree that the instructions could use an overhaul - maybe one of the volunteers around here will take care of it.

I'm not here to convince you (or anyone else) to take the Cattle Drive. I am here because I took the Cattle Drive and found it to be very helpful - it taught me many things that I did not learn at university. So I stuck around, hoping to help other people who may want to learn what the Cattle Drive has to teach.

I'm not sure if you are asking whether the Cattle Drive will help you pass the SCJP 5.0 exam - I can't say, because I haven't taken it. I can only share with you what I have learned from it.

1) Writing readable code.
I learned more about writing good code from the lessons in the cattle drive than any books or courses. The lessons are applicable to other languages (I code in a different language at work). There are books that are fabulous that teach these things:
Clean Code (Robert Martin)
Implementation Patterns (Kent Beck)
The Pragmatic Programmer (Thomas/Hunt).
But I don't know if I could have learned from the books the way I learned from the Cattle Drive without having taken it first.

2) Humility.
I learned more here than any other place that there is always another way of approaching a problem - there is always a different solution, and it might be better than the one I came up with. Even when I thought I had coded a masterpiece the nitpickers had something to say. And they were right - every time
This is a lesson that I apply every day in my work. Only yesterday, I had a tangled piece of legacy code that I had to extend. I took the core idea of the code, wrote some unit tests, and tried to extend the idea. I think I spent 4 hours digging a deeper hole before I realized that a different approach might be better. After that it only took about an hour and a half until I had a working prototype.

I also learned a few things about optimization, and a thing or two about conforming to the standards set by a group - not because they are the best standards, but because they are the ones that the group has chosen. I place my braces one place here - a different place at work. I don't have a very passionate view about where they go, but I certainly appreciate the uniformity, no matter where I am.

3) The idea of refactoring.
While the Cattle Drive doesn't teach you to refactor in the sense that you change the structure of the code without changing the behavior in a controlled manner (with automated tests and small steps), the Cattle Drive does teach you to look at your code and see that this here is similar to that there, that if you move this over here then the flow of the code becomes easier to follow, that if you change the name of this variable, then the reader isn't guessing what you mean anymore, and once you do that, you suddenly see something that allows you to simplify the whole thing. If anything, I learned that the number of times I submitted something before it passed was irrelevant. The code went back and forth, and each time, a layer of crud was taken off, and something more beautiful emerged. Each layer exposed something new in the code - and each time I learned something else.

In college, I never got feedback on my code. If it ran, it passed. Heck - I know some people in my classes that submitted code that barely compiled, much less ran correctly, and their code passed. So I learned whatever I could figure out on my own. The problem being that I didn't know what I might have misunderstood or just plain missed. I didn't know what I didn't know. Here, I could be certain that I would be led to an understanding based on where I was right at that moment.

Katrina
 
Kaydell Leavitt
Ranch Hand
Posts: 694
Mac OS X Eclipse IDE Firefox Browser
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I appreciate the Cattle Drive. I think that I am learning from it. I'll try to be more humble because I can't learn without being humble, and I'll try to show gratitude for what I'm learning.

I accept the nit-picking that I received and I revised my exercise until I was passed. This is exactly why I took the Cattle Drive too, is to get feedback from other Java programmers) and I think that the Cattle Drive is good.

I think that turn-about-is-fair-play. The people running the Cattle Drive run a good program, but it's not perfect. For example, since we can only use version 1.4, I believe that I could have bought the earlier edition of the book "Just Java" for $6.00 instead of paying $26.00 and I would have had a book that matches the curriculum.

It makes a lot of sense to me to learn 1.4 as a subset of 1.5 before learning the full 1.5.

Also, the link to download the JDK says it links to 1.4, but it links to 1.6 and you have to search for 1.4, wondering whether you should use 1.4 like it says on the Cattle Drive webpage or not.

What I really want though, is to get on with it and get some exercises done and get more feedback.

 
village idiot
Posts: 1208
1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Kaydell, if there is one thing that defines the people here at JavaRanch, it is openess to suggestions. I am sure someone will have a look at the links you mentioned in the instructions, (and thank you for the heads up, by the way) and update the page shortly. Just a reminder though, your nitpickers are volunteers, as are the folks who keep things running, and to my knowledge the folks who update the download pages at Sun don't notify them when things change. So when you run across something like this, send up a flare!
There has been talk of moving on to version 5, but obviously it hasn't happened yet.
 
Kaydell Leavitt
Ranch Hand
Posts: 694
Mac OS X Eclipse IDE Firefox Browser
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I respect the JavaRanch.com and the Cattle Drive. I showed this by paying $200.00 tuition instead of paying $300.00 to Sun just to take a multiple-guess exam SCJP 5.0.

Other things that I like about the Cattle Drive is to learn about JDBC and Servlets because it seems like these skills are worth money in the current job-market.

Hmmm. If I'm humble, I should also learn better object-orientation by doing the exercises for OOP and getting the feedback.




 
Sheriff
Posts: 9109
12
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Many companies are still (for one reason or another) using java 1.4. You can download and use java5 or java6 or perhaps even java 7, but it still must compile and run using java 1.4 (at this time). Most of the CattleDrive pages/assignments are ready to move to Java 5, but not all, and I think it would be really confusing to start with 5 or 6 and then have to move backwards when you get to Servlets, for example. Therefore we haven't officially moved to java 5 yet.

I haven't taken the java5 SCJP exam, but I'd be really surprised if they concentrate on questions regarding the format method and such. Once you get to the OOP assignments and begin to use Collections, then the real advantage of java 5 begins. I think the strength of the Cattle Drive is in teaching things that are more generally applicable than the specific differences between java 1.4 and java 1.5 ... as Katrina mentioned above.
 
Marilyn de Queiroz
Sheriff
Posts: 9109
12
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Mike Simmons wrote:Perhaps it's time to update the instructions so they ask the user to download a JDK that is more readily available,
like maybe something here. I suppose if you really want to, it's possible to find more ancient JDK versions. But you have to skip past several messages suggesting you use something less cobwebby. I suggest the Cattle Drive instructions should maybe either link to a modern JDK, or at least give a better link to the specific now-deprecated JDK that you want people to use. If you opt for the former, it would be helpful to add instructions on how to compile with the -source flag in order to (a) eliminate pesky generics warnings, and (b) actually do what Katrina just asked: " ensure that they would compile as Java 1.4." Well, there are more complicated library issues too I suppose, but the biggest source of friction at the moment is that you're asking people to use a restricted subset of the language, without clear instructions on how to achieve this.

Note that it's probably worthwhile to check other links in the instructions to verify whether they're still current, and useful. There's at least one other problem ("Sun's JDK class documentation") just on the intro page; I haven't tried the later pages.



Thanks for the info, Mike. I wasn't aware that the contents of the link had changed. Hopefully, now that the new year has begun, my life will get back to a more normal pace and I can get this finished quickly.
 
Get me the mayor's office! I need to tell him about this tiny ad:
Gift giving made easy with the permaculture playing cards
https://coderanch.com/t/777758/Gift-giving-easy-permaculture-playing
reply
    Bookmark Topic Watch Topic
  • New Topic