You’ve gathered up the courage to ask your favorite Instagram coder the ever-so-popular question, “I want to code. How do I start?”. There is a high probability that your favorite Instagram coder will sigh and feel a little frustrated because that is a very loaded question; there are too many ways to start coding !! It is ultimately up to you, and your personal interests, to decide which languages will be best to learn. If you want to be a web developer, then there’s a specific set of languages that you should learn to support that. The same applies to become a software engineer, roboticist, game developer, computer scientist, systems engineer, networks engineer, or whatever else it may be !!

However, let’s not get ahead of ourselves… this IS the “Beginners Guide to Programming” !! I’ve broken it into 2 parts:

  1. CS Headstart — A reference for those who are considering tackling computer science at the university level
  2. IG Resource Collection — A collection of links that forward you to 12 resources created by various IG programmers

CS Headstart

A quick reference for beginners who are looking to pursue a degree in computer science and would like a headstart on what to expect (based on the collected experiences of myself and my peers).

Java (Object Oriented Programming)

The best book, for me, to learn Java was “Absolute Java” by Walter Savitch.

Complete the projects and practice questions in the book !!

I believe the text is up to 6 editions so choose which you like.

  • Abe Books has the cheapest cost of textbooks !!

The book that I use now as a teaching assistant is “Big Java: Late Objects” by Cay Horstmann

IDE

IDE stands for ‘Integrated Development Environment’. It is an application that you can use to program and run your code in.

IDEs are very helpful before you learn to code using UNIX and the command line. The IDEs that I used while learning Java were BlueJ and Eclipse.

BlueJ may be better for beginners, but I think Eclipse is better overall.

Both are free, so download and check ‘em out !!

API

API stands for ‘Application Program Interface’ which means that this is where you can find protocols and tools for writing programs and to understand how software components interact together. This won’t be intuitive right away, but after a couple of programs, you will find that this is a super useful resource !!

Web Programming

W3Schools is the best starter website for web programming (free).

This includes HTML, CSS, JavaScript, and so on.

W3Schools is especially cool because of the “try it out” window.

Extra Help

StackOverflow is a website that I use when I have questions. I usually don’t go there unless I need something answered.

YouTube!! I suggest to only use it when you don’t understand what’s going on with your reading or if you just can’t visualize something. It’s my last go-to, but still very helpful. Here is a video on setting up BlueJ and writing your first program in Java. Everyone’s first program is ‘Hello World’ !! :)