Java

Discussion in 'Mac Programming' started by Watabou, Apr 27, 2008.

  1. Watabou macrumors 68040

    Watabou

    Joined:
    Feb 10, 2008
    Location:
    United States
    #1
    Anyone know of a good website that can teach me java...that is free?

    I mean I want websites that actually teach me from the beginning. I have visited websites that just go straight to applets or object oriented programming.

    I know some basic stuff from java including oop but I'm not that good so I figured that starting from the beginning would help. I'm really interested in programming and its fun when I figure out something right and make a program even though its frustrating at times.

    I would greatly appreciate the help.
     
  2. RaceTripper macrumors 68030

    Joined:
    May 29, 2007
    #2
    Bruce Eckels, Thinking In Java.

    It's an excellent book. Not only teaches you Java, but teaches OO concepts, which is proabbly more important.
     
  3. cube macrumors G5

    Joined:
    May 10, 2004
  4. Watabou thread starter macrumors 68040

    Watabou

    Joined:
    Feb 10, 2008
    Location:
    United States
    #4
    Ok thanks.

    cube, I will start learning programming instead if you feel that is the way I should go first. Thanks for the link.
     
  5. RaceTripper macrumors 68030

    Joined:
    May 29, 2007
    #5
    You do want some programming fundamentals before you tackle the Eckel book. But as as soon as you are ready this book is what I recommend.

    I design and teach Java and XML courses for Washington University's Center for Application of Information Technology. We give the Eckel book to students of the core Java programming classes. I like it because it goes beyond just teaching the language.
     
  6. Watabou thread starter macrumors 68040

    Watabou

    Joined:
    Feb 10, 2008
    Location:
    United States
    #6
    Thank you for helping me.

    Also, anybody know if Apple is interested in programmers? I mean how much is the salary on average in any companies? I was thinking I could maybe develop OSes. That I want to do. I think I might set a goal to be computer scientist.
     
  7. Cromulent macrumors 603

    Cromulent

    Joined:
    Oct 2, 2006
    Location:
    The Land of Hope and Glory
    #7
    Well I imagine they are looking for programmers yes. But don't expect a job there without a Masters or PhD.
     
  8. elppa macrumors 68040

    elppa

    Joined:
    Nov 26, 2003
    #8
    Well, actually Apple recruit largely on talent and proven experience, rather than academic qualifications.

    Sure you'll probably need a degree, but I wouldn't say a Masters or PHD is necessary.

    Apple do need software engineers and programmers — look at Leopard, delayed because they did not have enough staff with the relevant expertise to do their Desktop and Mobile Operating Systems.
     
  9. RaceTripper macrumors 68030

    Joined:
    May 29, 2007
    #9
    That's probably true of many companies in the IT sector.

    I have a team of about 20 software engineers, and hiring them involved reviewing their experience and checking them out in pair programming sessions. Academic degrees count for far less. While I've done some grad. studies in computer science, I have a liberal arts degree (music and history).
     
  10. lee1210 macrumors 68040

    lee1210

    Joined:
    Jan 10, 2005
    Location:
    Dallas, TX
    #10
    http://dice.salary.com/ is a good place to start to see average salaries. Look for computer programmer, software developer, and software engineer positions to get an idea of a range. Software architect as well, but at this level that's not what you'd be aiming for.

    If you want to learn more about OSs Apple's Darwin, which is the basis for OS X, is open source, as is Linux. You can get the source code and look around. It is very complex, however, so that is not where I would start.

    The goal of being a computer scientist might not be exactly what you mean. From wikipedia:
    "Computer science (or computing science) is the study of the theoretical foundations of information and computation and their implementation and application in computer systems."

    Note there is no mention of programming. They are different though related pursuits. I would not discourage you from getting a theoretical basis while you're learning programming, but just wanted to let you know that there is a distinction.

    I doubt a lot of PhDs are actually coding operating systems. Highly educated computer scientists are probably building the foundations of OS design, investigating security, etc. but not doing a lot of the coding. I'm not saying they couldn't, but you don't get a PhD in programming you get one in Computer Science (or some similarly titled program). Some of the best programmers don't have degrees, and some of the worst do.

    -Lee
     
  11. psingh01 macrumors 65816

    Joined:
    Apr 19, 2004
    #11
    A graduate degree is not necessary for an entry level job. Obviously it helps, but once you have a PhD you are not likely to be applying for an entry level programmer anyway :)

    Salaries are different in different parts of the country. I once had a job as a "Junior Programmer" that paid $25K/yr....I quit and went back to school where I made more as a graduate research assistant after you factor in that they paid my tuition as well LOL. With other companies I was offered around $50-55K/yr after I had my bachelors. With higher degrees expect to get more (and you should ask for more!) too.

    As far as developing OS's goes, there aren't many places that do that. There's Apple, Microsoft, Sun, IBM, various companies that contribute to Linux. These are the common ones that people know about and maybe you had in mind. Not to discourage you, but if that's what you want to work on then those are the places you need to target and research what is available.

    Studying up on Operating Systems couldn't hurt either ;)
     
  12. Watabou thread starter macrumors 68040

    Watabou

    Joined:
    Feb 10, 2008
    Location:
    United States
    #12

    Yes I am about to call human resources on Apple's costumer service and see what is up. I'm already doing my research :)

    Oh and I have to tell you, I didn't even start my uni. :p I'm still in high school. Going to uni next year.
     
  13. maxjg macrumors member

    Joined:
    Aug 6, 2006
    #13
    If you haven't invested in any specific programming language yet, it may be awhile before you start looking for a job at Apple. And if you do intend to someday work for Apple, Java is waaay off course. You need to be looking at Obj-C.
     
  14. RaceTripper macrumors 68030

    Joined:
    May 29, 2007
    #14
    But Java is still a great first language. No one who gets to the level of obtaining a developer job at Apple is going to get there knowing only one language. Java is also more mainstream than Obj C and will provide many more opportunities to gain experience. One that experience is gained, one can pick up new languages to prepare for other job goals.

    If you start with only Obj C, you are pretty much locking in to a narrow job market in the grand scheme of things.
     
  15. yeroen macrumors 6502a

    yeroen

    Joined:
    Mar 8, 2007
    Location:
    Cambridge, MA
    #16
    If your eventual goal is to learn OS development, Java will be of no relevance.

    You will however need to learn C, and to become fairly expert at it (C is simpler, if trickier, than Java). All mainstream OS's are written in C. In fact, if you learn C/C++ first, you'll have a definite edge up on your peers who only know Java. Learning Java when you already know C/C++ is much easier than learning C/C++ when you only know Java (in fact Java itself is implemented in C).

    XNU, the (open source) Mac OS X kernel, is about 80% C, with the remainder in assembler, and C++ in the IOKit. Sources for Darwin/XNU are available for free download from the Apple site. It may be instructive to download the source tar bundle ( or other free OS's like BSD/Linux) and have a look see to find what you're getting into.
     
  16. lee1210 macrumors 68040

    lee1210

    Joined:
    Jan 10, 2005
    Location:
    Dallas, TX
    #17
    Seconded.

    If it were up to me every person that wants to learn to seriously program would start with vi, gcc, and "The C Programming Language". It's nice to know that so many people want to program apps for the iPhone (this is not OT, but i think it will help the point I'm trying to make) and they're trying to write their first program using XCode, Cocoa and Objective-C. I think that's too much to get caught up in. If you don't know how to use a hammer I wouldn't trust you with a high-powered nailgun.

    C is essentially the foundation for most modern languages. When C++, Java, Objective-C, C#, etc. were built it was to do things that C didn't, but they still maintained a very similar syntax. Just because you can't do pointer arithmatic in Java doesn't mean that knowing how the machine lays data out in memory is useless.

    -Lee
     

Share This Page