Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

stealthsniper96

macrumors regular
Original poster
Jul 20, 2007
169
0
hey guys ive never relly done much programing but i'd like to get into it so what programs and such should i start out using?
 

dingdongbubble

macrumors 6502a
Jun 1, 2007
538
0
Yes plz help me too. I have not done ANY comprehensive programming at all except for copying down a mall code for temperature converter and thats all I guess. I dont have ANY idea as to how to START programming nd what it is aout and stuff. Treat me like a dumb idiot retard. On the web development forum, I started HTML using HTMLog.co and it helped a lot and now I lov HTML and CSS. But I dont know about programming it sees way more complex and daunting. How do I start. Where do I start.
 

x704

macrumors regular
Apr 15, 2006
118
0
first you need to decide what you want to do, which will narrow down what languages you will want to learn first. The first big split for different languages is interpreted vs compiled.

What do you want to do? What are your ultimate goals in the programming world?
 

stealthsniper96

macrumors regular
Original poster
Jul 20, 2007
169
0
um i dont really know. im just lookin for something to do in my spare time. and maybe something to make a little spare money if i get good enough at it.
 

Loc

macrumors newbie
Jul 23, 2007
21
0
Southern California
If you are just starting out...learning something like Python would be good. Its an easy language.

I second learning Python and would like to add Ruby. I prefer Ruby and using Rails for the web. :D

You can also start with Java but I feel there's more of an initial learning curve.
 

stealthsniper96

macrumors regular
Original poster
Jul 20, 2007
169
0
python and ruby? ahha i have absolutely no idea what they are but i would like to be able to use something easy that i can learn how to use off the net because im a poor student and i dont wana buy any more books than what i need for school.
 

dingdongbubble

macrumors 6502a
Jun 1, 2007
538
0
I think Ruby would be better. You can get a free book for Ruby called Why's Poignant Guide. Its not hose fake crappy free books but this is something serious. You can try Ruby right in your browser. Go to Hackety Hack also.
 

jtalerico

macrumors 6502
Nov 23, 2005
358
0
Personally I would start with PHP. But Python is also a good language to have under your belt. PHP has great documentation online as does Python and Perl.

Good luck with your studies.
 
ok well i downloaded python. what are some good recources to learn how to use it?

One of the things you need to tell us is why you want to learn programming? General interest in things computery, a few small scale ideas you want to turn into reality or maybe some grand plan and career choice?

(There is no wrong answer to this, of course.)

In terms of the python distributions, you should have a programme called IDLE installed under /Applications/MacPython 2.5/ , assuming you downloaded from http://www.python.org/download/. If not, get your distribution from here.

Fire up IDLE and you can start programming. Follow the tutorial on the python website - there is a beginners guide section under their documentation menu.

I have just skimmed over this one http://hkn.eecs.berkeley.edu/~dyoo/python/idle_intro/index.html which looks like a nice first steps type tutorial.

Read up on the official tutorial http://docs.python.org/tut/tut.html starting at Chapter 3, 4, 5 and 7 which cover the major programming concepts.

Also set yourself a little project - I would suggest something like reading a file containg several rows of numbers as text and printing out the sum of adding each column and row. You can implement this in lots of different ways, using new techniques as you learn them.

From there, it depends on where you want to take it - you might be interested in web development, graphics, GUI apps, number cruching, anything ...

The best news is that python is more than capable of taking you anywhere you want to go (certainly until you have the knowledge to choose a more appropriate tool for a certain job with minimal outside input).
 

stealthsniper96

macrumors regular
Original poster
Jul 20, 2007
169
0
One of the things you need to tell us is why you want to learn programming? General interest in things computery, a few small scale ideas you want to turn into reality or maybe some grand plan and career choice?

well right now maybe just some simple apps to get started. but since im still in highschool it would be nice if i could get good enough at it that by the time im in college i could make something people would actually like and make it like donationware or something and be able to make some extra money. i was thinking maybe an all around system monitor for laptops.
 

stealthsniper96

macrumors regular
Original poster
Jul 20, 2007
169
0
haha winterspan. why should i use google when i got all these smart people here to answer my questions?
 

kurzz

macrumors 6502
May 18, 2007
391
28
If you haven't done any programming, read any beginner's programming book. Start by learning the basics like data types, structures, memory allocation and compiling. Then move on to learning the language of your choice. If you want to make mac software, focus on Objective C. After that, learn Cocoa and how the OS works. It takes a lot of reading and practice.
 

x704

macrumors regular
Apr 15, 2006
118
0
Alright, so programming as a spare time hobby kind of thing for fun, at least for now?

If that is the case then almost any popular interpreted language (Ruby, Perl, Python) will work well, Java would be a good choice too. Your first language just should probably not include manual garbage collection...

Whatever you pick, be absolutely sure you don't drop it in favor of something else until you feel like you can get stuff done with the language and you feel like it is somewhat lacking for what you want to do. If you drop any one language before then, then you will be wasting your time and will never be satisfied with what you currently are learning (even if it happens to be the best for the job). Stick with it, people in this forum is willing to help out ;)

I actually started in BASIC (very bad choice), did some interesting things with it, then basically moved on to Java. Now I am working on the C/Objective-C language.

My goal is to have fun in my spare time working on open source projects and for them to be cross platform compilable (excluding windows, lol). Even though my (to date) choice profession has very little to do with programming.
 

Soulstorm

macrumors 68000
Feb 1, 2005
1,887
1
I wouldn't bother starting with anything less that an Object Oriented language, since most programmers use them nowadays. Also, they will help you accomplish tasks easier and more efficiently.
 

janey

macrumors 603
Dec 20, 2002
5,316
0
sunny los angeles
haha winterspan. why should i use google when i got all these smart people here to answer my questions?

What kind of weird attitude is that when google can help you find other useful resources and communities full of people who develop in these languages professionally...people who design these languages..people who contribute to the projects...people who are brand new to these languages and are just learning...?

If you expect to be spoonfed, sorry, I have to say that's really not the best way to go about learning something new.


Your first language just should probably not include manual garbage collection...
objc has garbage collection nowwww :)

although, personally i'd probably go with ruby or java as a first language..maybe.
 

x704

macrumors regular
Apr 15, 2006
118
0
I wouldn't bother starting with anything less that an Object Oriented language, since most programmers use them nowadays. Also, they will help you accomplish tasks easier and more efficiently.

Yes, because it _is_ the more sensible way of thinking and structuring programs. All newer (mid 1970's to now) languages are based on this model with few wide* spread exceptions. The only exception is the C language, which started way back when people realized that something was needed that was almost as low level as ASM only much faster and easier to make programs in; back when BASIC and fortran were around before the C language came about. The low levelness of C is evident where it is still being used today, namely in kernels, drivers, and embedded devices like microcontrollers and cellphones.

People then decided shortly after making C that OOP was the future way of thinking and a few years later devised the C++ and Objective-C models based on the already popular C way of doing things. If you noticed that the most widely* used languages have some of the same syntax rules because C was so popular.

*I say most widely because there are lots of languages out there that are around solely because of CS people getting together to try something new, like lolcode (lol, kinda funny really :) )

I have no idea why I got into that stuff... I don't really feel like deleting perfectly good text either.

objc has garbage collection nowwww :)

Well, yes... kinda. But that is not really my point... If you can do garbage collection by hand, then you don't want to start with it... the D language falls into this category as well. The main reason is to not get bogged down with how to do garbage collection while you are still learning what a loop is.
*unless* you _know_ that is the language you want to end up using... But even then I encourage going from a higher level to a lower level language to get a wider understanding of how software and computers work in general, and so you don't say "this one language I half know is the best" like I did with Java ;)


One more thing I would like to add... when you do decide on a language, get at least two books by two different authors, if you are having trouble learning the language one way and are stuck, then you can switch to the next. It will also help season what you put into your own code, trust me. :rolleyes:
 

janey

macrumors 603
Dec 20, 2002
5,316
0
sunny los angeles
Well, yes... kinda. But that is not really my point... If you can do garbage collection by hand, then you don't want to start with it... the D language falls into this category as well. The main reason is to not get bogged down with how to do garbage collection while you are still learning what a loop is.

I know it wasn't your point, but this is a mac forum after all..even if the OP is new to everything, it wouldn't hurt to know of the existence of one of the most commonly used languages on this platform.

One more thing I would like to add... when you do decide on a language, get at least two books by two different authors, if you are having trouble learning the language one way and are stuck, then you can switch to the next. It will also help season what you put into your own code, trust me. :rolleyes:
Agreed. In fact, I'd recommend more than just that...maybe talk to people who might be able to help, you get the idea. Sometimes when I get stuck on something I just talk it over with someone else who might know the language well, or maybe ask in the appropriate IRC channel...just because sometimes actually talking with someone and going over it is better than just passive reading or googling.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.