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

rotobadger

macrumors 65816
Original poster
Sep 18, 2007
1,272
159
I've always been fascinated with what goes into hacking, designing and developing software for computers and devices like the iPhone. In terms of knowledge and brainpower it amazes me what guys like Comex are capable of.

I know next to nothing about coding but am interested in learning what I can.

Can anyone suggest where I might start? I am considering taking a beginners course at a local community college but am not sure what direction to take. I'd love to learn a little about application coding and design as well as just having a general knowledge of the art.

So, what languages are a good foundation? Does having a grasp of one language help in learning another?

I certainly know my way around a computer (Windows mostly) but not the "back end" kind of stuff.

Any advice on where to begin would be appreciated!
 

Applejuiced

macrumors Westmere
Apr 16, 2008
40,672
6,533
At the iPhone hacks section.
Start with some intro to computers classes, programming courses and some basic programming languages like "basic" or pascal to begin with.
The look into C+ database design and some SQL maybe.
 

rotobadger

macrumors 65816
Original poster
Sep 18, 2007
1,272
159
Start with some intro to computers classes, programming courses and some basic programming languages like "basic" or pascal to begin with.
The look into C+ database design and some SQL maybe.

Thanks for the heads up.

I would assume learning Basic and/Pascal is to provide a foundation for learning other languages? Aren't these "dead" languages?

Also, what about Visual Basic? Is that relevant at all?

I was assuming C+ was the way to go but really wasn't sure.
 

RaceTripper

macrumors 68030
May 29, 2007
2,867
178
Start with some intro to computers classes, programming courses and some basic programming languages like "basic" or pascal to begin with.
The look into C+ database design and some SQL maybe.

BASIC and Pascal? Really? :rolleyes:

BASIC isn't really much of a mainstream language anymore, especially on Mac and definitely not for iPhone. Pascal hasn't been a Mac programming language (or a language for much of anything) for probably 20 years. SQL is specific to only relational database development. There is no such thing as C+

The languages to learn for Mac OS X and iOS development include C, C++, Objective C, and JavaScript. Learning programming fundamentals and starting with one of these languages would be a good start. Java is also a good language to start for learning programming in general since it is less complicated than the C languages and let's you focus more on concepts.
 

rotobadger

macrumors 65816
Original poster
Sep 18, 2007
1,272
159
Visual basic is just for windows.

If you wanna learn Unix operating systems such as Linux, Mac OS X, iOS etc. you'll want to start with C, C++

A good language to start with is python as well.
Check this link out too: http://catb.org/esr/faqs/hacker-howto.html

Thanks for the link! I just skimmed it (will read it carefully tomorrow) but it has a ton of info that I was looking for. Looks daunting though!

After reading a couple of posts here it sounds like C, C++ and Python are good starting places (thanks RaceTripper).

I gotta take baby steps to start! I'm going to do some reading online and look into local courses. I want to get my feet wet and see if I like it/take to it at all.

Also, RaceTripper mentioned learning programming fundamentals. Is there a way of doing this (in some shape or form) before actually diving into a specific language?
 

cobra5mil

macrumors member
Jun 26, 2010
30
0
I would start with C# and/or Java. Very good languages to learn Object-oriented coding. Also, Ruby on Rails is very promising.

Basic programming classes will not teach you the deeper design aspects, but you will get familiar with the basics. Programming fundamentals are usually based around a specific language. The great thing about Object oriented programming is that the general concepts carry over to other languages.
 

Applejuiced

macrumors Westmere
Apr 16, 2008
40,672
6,533
At the iPhone hacks section.
BASIC and Pascal? Really? :rolleyes:

BASIC isn't really much of a mainstream language anymore, especially on Mac and definitely not for iPhone. Pascal hasn't been a Mac programming language (or a language for much of anything) for probably 20 years. SQL is specific to only relational database development. There is no such thing as C+

The languages to learn for Mac OS X and iOS development include C, C++, Objective C, and JavaScript. Learning programming fundamentals and starting with one of these languages would be a good start. Java is also a good language to start for learning programming in general since it is less complicated than the C languages and let's you focus more on concepts.

I know sir.
Those are old and pretty much dead languages but used basicly by most colleges/universities to get students their feet wet and learn some fundamentals.
Those along with Cobol is what I learned on my first year in computer programming.
C+ is short for C++ but thanks for trying to teach me my profession :D
 

impulse462

macrumors 68020
Jun 3, 2009
2,085
2,872
Really though, hacking/coding requires a creative mind, sort of like doing math.

Some proofs in discrete/linear math courses require you to think out of the box. Hacking/coding is similar in that aspect in the fact that, if you want be a "natural" such as people like comex or planetbeing, you have to think out side the box using the principles that you've learned and applying them to basically solve problems. In the case with jailbreaking that would be finding exploits in the OS ;)

Of course that comes later, when you have a solid foundation and you know some languages really well. The best practice you can get is install a distro of linux on your computer and just play around with it.

When first learning C, I didn't know where to begin so i picked up the "C for Dummies" book by Dan Gookin. It's a really novice friendly book. That's just what I did though.
 

cobra5mil

macrumors member
Jun 26, 2010
30
0
C+ is short for C++ but thanks for trying to teach me my profession :D

I would disagree with that comment. There is no such thing as "C plus." Saying C+ is short for C++ is nothing but laziness. Every time someone says C+, I think ABCL/c+. I know Rick Mascitti would agree with me.
 

RaceTripper

macrumors 68030
May 29, 2007
2,867
178
I know sir.
Those are old and pretty much dead languages but used basicly by most colleges/universities to get students their feet wet and learn some fundamentals.
Those along with Cobol is what I learned on my first year in computer programming.
C+ is short for C++ but thanks for trying to teach me my profession :D
My company has some of the best C++ developers in the business, and none have ever called it C+ for short. Nor have I ever heard that any any sites I worked. In fact, you are the only one I have heard call it that, ever, and I've been in the business 20+ years.

I don't know what schools still teach Pascal, but the one I attended dropped using it for courses well over a decade ago. I guess some schools still need to join the 21st century and develop curricula in tune with the times. No one even bothers putting Pascal on their resumes either, because nobody cares about it. Hell, does anyone even make a Pascal environment for current operating systems anymore? Learning BASIC has very little practical use for much of anything but Windows .NET, and probably is a waste of time if you want to be a MacOS/iOS developer.

To the OP, Bruce Eckel's Thinking in Java or Thinking in C++ are good books to get you started (I'm familiar with the Java one, not so much the C++ edition), and there are free versions available online. Others may have more to recommend. You might also look into taking continuing education course offered by local colleges. Those can be a lot cheaper than taking regular credit courses.
 

moussekateer

macrumors 6502a
May 12, 2009
733
0
I think languages/resources have been pretty much covered here. I'm just going to add that if you want to be the next comex/planetbeing/musclenerd it's probably a bit too late. Hackers like that usually start pretty young, spending a lot of time learning how things work and why they work that way. You can be a very good programmer but be completely clueless on what happens behind the scenes and how to exploit systems with buffer overruns/code injection etc.

I'm not trying to discourage the OP; I think learning to code is a great talent to have, and will give you so much more appreciation of the work that programmers and hackers do.
 

Dr Kevorkian94

macrumors 68020
Jun 9, 2009
2,175
76
SI, NY
I'm only 15 and I want to take a computer programming class in senior year. I've been learning some basics to get ready on various sites. The class teaches an intro to C,+,++. as u can tell I'm a major geek but that dosent stop me from having a life!! Lol
 

Applejuiced

macrumors Westmere
Apr 16, 2008
40,672
6,533
At the iPhone hacks section.
My company has some of the best C++ developers in the business, and none have ever called it C+ for short. Nor have I ever heard that any any sites I worked. In fact, you are the only one I have heard call it that, ever, and I've been in the business 20+ years.

I don't know what schools still teach Pascal, but the one I attended dropped using it for courses well over a decade ago. I guess some schools still need to join the 21st century and develop curricula in tune with the times. No one even bothers putting Pascal on their resumes either, because nobody cares about it. Hell, does anyone even make a Pascal environment for current operating systems anymore? Learning BASIC has very little practical use for much of anything but Windows .NET, and probably is a waste of time if you want to be a MacOS/iOS developer.

I dont care what you did or didnt hear before and I dont need to explain to you anything.
I just made a suggestion to the op what would be some languages to get his feet wet and get a feel on basic programming. I didnt suggest those as a career move or as ios Development either cause those are old and outdated.
He doesnt want to develop for ios but more interested in hacking so nowhere he mentioned he would add those to his resume or anything like that.
Im getting sick of all these ignorant and rude comments, I was just trying to help the OP and not get into a pissing match why I used 1 plus and not 2.
Get a life:rolleyes:
 

RaceTripper

macrumors 68030
May 29, 2007
2,867
178
I dont care what you did or didnt hear before and I dont need to explain to you anything.
I just made a suggestion to the op what would be some languages to get his feet wet and get a feel on basic programming. I didnt suggest those as a career move or as ios Development either cause those are old and outdated.
He doesnt want to develop for ios but more interested in hacking so nowhere he mentioned he would add those to his resume or anything like that.
Im getting sick of all these ignorant and rude comments, I was just trying to help the OP and not get into a pissing match why I used 1 plus and not 2.
Get a life:rolleyes:

No one is being rude and ignorant to you. You're just being pissy because people disagreed with you, but none who disagreed were unreasonable. I thought you gave bad advice to the OP, so I spoke up. You don't have to like it.
 

Applejuiced

macrumors Westmere
Apr 16, 2008
40,672
6,533
At the iPhone hacks section.
No one is being rude and ignorant to you. You're just being pissy because people disagreed with you, but none who disagreed were unreasonable. I thought you gave bad advice to the OP, so I spoke up. You don't have to like it.

I suggested what I thought was appropriate for his situation, you can suggest something else without the rude comments and rolleyes you posted above.
I dont mind if someone disagrees or has a polite debate with me in a conversation.
Not one opinion on this topic is right, wrong or according to you bad advice.
 

jayo123456

macrumors regular
Jun 29, 2010
213
0
I don't know how far you wanna take it, but if it's just for casual, don't expect to be doing anything groundbreaking.

If you wanna take it far, you must be at it 24/7 to be at a hacker level. And even then, there's no guarantees. Those guys eat live and sleep code.

but nonetheless, programming is fun. We got started with 'c' in university. So that's what im going to suggest. Then learn any 'object oriented' language.

There's the STandford iphone programming online course in itunes. Wouldn't hurt to check it out.
 

rotobadger

macrumors 65816
Original poster
Sep 18, 2007
1,272
159
Hey guys...

Thanks for the great advice so far.

RaceTripper: I think I'm going to dip my foot into C++ to start with by picking up a copy of "C++ for Dummies". If my interest remains sparked, I will then seek out a community college course on the subject in a couple of weeks. Is this a reasonable starting point?

Let me be clear about one thing a couple of posters have commented on: I have no illusions about becoming the next Comex or hacking extraordinaire. I'm doing this because of an ongoing interest in coding and have decided to take the first step.

I look forward to learning coding simply for the joy of learning something new. Maybe, someday, I'll be able to apply what I've learned in real life!
 

RaceTripper

macrumors 68030
May 29, 2007
2,867
178
I suggested what I thought was appropriate for his situation, you can suggest something else without the rude comments and rolleyes you posted above.
I dont mind if someone disagrees or has a polite debate with me in a conversation.
Not one opinion on this topic is right, wrong or according to you bad advice.
You're right. I shouldn't have made the roll eyes. I'm sorry to you for that. But I stand by my other statements, and stating other advice is bad isn't rude or ignorant. It's an opinion.
 

RaceTripper

macrumors 68030
May 29, 2007
2,867
178
Hey guys...

Thanks for the great advice so far.

RaceTripper: I think I'm going to dip my foot into C++ to start with by picking up a copy of "C++ for Dummies". If my interest remains sparked, I will then seek out a community college course on the subject in a couple of weeks. Is this a reasonable starting point?
I don't know how the book has come along in recent years, but for C++ I really liked Deitel & Deitel C++ How to Program. It was a great book in it's time (I had an early edition). Others may be able to weigh in on the latest edition.
 

Applejuiced

macrumors Westmere
Apr 16, 2008
40,672
6,533
At the iPhone hacks section.
You're right. I shouldn't have made the roll eyes. I'm sorry to you for that. But I stand by my other statements, and stating other advice is bad isn't rude or ignorant. It's an opinion.

Its ok bro.
Im not here to argue or like to fight with anyone.
I spent countless hours on this forum trying to help people and also to learn and keep up with the JB scene.
Take care and have a good night.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.