So You Want To Be A Developer

So when I discovered I quite liked programming, and decided that it was something I actually wanted to pursue (how I arrived at this conclusion is a story for another day), I faced a dilemma that many beginners face. What are some of the things I need to do to get from beginner to pro?

Here’s my attempt to answer that.

1. Learn introductory Computer Science

(This is particularly important if you don’t have a typical CS background, and even if you do, it won’t hurt to brush up on your knowledge.)

I’m not sure why, but it seems that to many people, “Computer Science” and “programming” are more or less synonymous. This isn’t strictly true. It’s difficult to come up with a definitive definition, but most people would agree that computer science is all about problem-solving. “So is programming,” you may say, and I agree. But your typical programming course wouldn’t delve into core CS concepts, like algorithms, artificial intelligence, computer architecture, security, and concurrency, all of which are really important things to know, and can be understood (at least on a basic level) without writing a single line of code.

2. Get familiar with the command line

Graphical user interfaces are great. But as a developer, the command line is infinitely greater. :) Many apps and developer tools run on the command line, and you can get so much done so much more efficiently by running a single command, than you would by clicking and dragging windows on your screen.

If for no other reason, do it to look badass and show your non-technical friends who’s boss when they see seemingly random statements flying off your black terminal screen (and yes, I firmly believe terminal backgrounds should be black. Personal opinion :D).

3. Install a text editor…

… or go hard core and code in command line.

I’m not against IDE’s, and a good developer chooses the right tool for whatever they’re currently working on. But if it counts for anything, I’ve never had to use an IDE ever since I started working professionally as a (web — mostly Python and some JavaScript) developer. And as a beginner, chances are that all you’ll need is a text editor to get going. You can start off with something simple like Gedit for Ubuntu, or Notepad++ if you’re on Windows (which, IMHO, you shouldn’t be. Refer to Point 1).

But later (or right now if you want), move on to something a little more sophisticated, à la Atom or Sublime Text (I’m a Sublime person, myself). If you want to check for errors, highlight syntax and/or adhere to style guides, there are plugins for that (and some features, like syntax highlighting, come right out of the box!)

3. Git it together!!

No that’s not a typo, just a lame pun. :) Version control is essential for any developer, even if you’re working on a solo project. Go open a GitHub account, and learn how Git works (here’s a simple link for that!). Thank me later :)

Stack Overflow is like Google for developers — it has all the answers. :D So if you’ve been dabbling around with programming you’ve probably stumbled upon the site once or twice. Being a passive browser is ok, but it’s much better to open an account and start contributing! As a beginner it might be hard to find questions you can actually answer, but keep at it and you’ll grow your reputation as a good developer (and, of course, do your part in helping other developers get better).

That’s it for now! Go forth, beginner developers, and build awesome things. :)

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.