top | item 5201728

Roadmap to Learning Software Development: A Beginners Guide

23 points| mcardleliam | 13 years ago |mcardleliam.tumblr.com

10 comments

order
[+] rmangi|13 years ago|reply
While I applaud anyone trying to get into software development I find it hard to believe that in 2011 "the resources available to a new student developer were limited". I'd also object to ruby being the best first language for someone to learn. Maybe you had trouble getting advice as to where to look to get started, but the internet is full of folks who are eager to give you their 2 cents on that topic. As far as ruby goes, nothing against the language but I personally think it's much more difficult to learn than java or c# which have more applications, a wider audience (and hence more material to read) and better support in terms of IDEs. They are also syntactically much easier for newbies.

That said, I congratulate you on your new found love of programming and your willingness to share the knowledge.

[+] caseysoftware|13 years ago|reply
My only problem with Java and C# as beginner languages that starting off takes so much understanding or glossing over of details. In Java, it's a class with "public static main void" before anything will work.

PHP or Python are a better way to start because "hello world" is literally a line or two of code.

That said, I always recommend Python over PHP because it enforces good a habits from day one. Once you learn the skills and concepts, working in the much looser PHP environment is safer.

[+] lquist|13 years ago|reply
"java or c#...are also syntactically much easier [than Ruby] for newbies."

Wait, what?

[+] avenger123|13 years ago|reply
This is a great list/discussion of resources. I am also helping someone get started learning software development but I have taken a slightly different approach. I am focusing on the computer science fundamentals first and afterwards focusing on web development. I have found that the Coursera courses as a great starting point. There is the Algorithms I and II with two introduction to programming courses using Python.

I also believe the Stanford courses (such as CS106A) is a great resource. I also would not discount the Oreilly Technology School.

The danger with starting with web development is that unless the person is very keen on learning, gaps in knowledge can develop and bad coding practices can be learned.

[+] ekm2|13 years ago|reply
It would have been nice if Coursera offered an Algorithms class in Python..
[+] rednukleus|13 years ago|reply
> Regardless of whether you are looking to become an iOS developer, a Mac developer or a Web Developer [...]

Yes, because those are the only three types of developers. iOS, Mac or Web.