Step 1 in being a developer: Make a thing that sucks
Here we are at day 3 of my articles on becoming a developer and yesterday I said that I was finally going to get down to coding and write about variables - global, local, string, numeric - but now I'm not.
I'll tell you two reasons why. First, because I tried learning R that way. I started a course and read a book, by someone who was supposed to know all about computer science and R. It was a complete waste of my time. There was a whole chapter on data types and another whole chapter on data frames. But, what I wanted to do was analyze some data. Second, even if I had managed to make it through all of that without dying of boredom, I still wouldn't have been able to program in R.
Knowing the statements and rules for a language doesn't make you a software developer any more than speaking English makes you a novelist
I know a lot of English words, most of the rules for grammar and punctuation, and, yet, I am not a screenwriter.
So, you want to be a developer? Make something.
Oh, and your thing will suck. I can say that with certainty, even though I know nothing about you, because everyone's first version of everything sucks.
What should you make? Well, it may come as no surprise to you that I have some advice on that. Your thing should be harder than just programming "Hello, world" but not so difficult that you won't be able to do it in a relatively short period of time. My suggestion is that your first thing should take somewhere between a week and a month of your spare time. It should be complicated enough that you make mistakes and swear a lot and interesting enough that you want to finish it.
There are two ways to make your first thing. Neither is the correct one and it will suck either way.
领英推荐
Funny thing, the memory game above was one of the first programs I wrote. I found it in a book on games with JavaScript and HTML. Fast forward nine years and I realized that I could write it much better than the book's author had and I completely rewrote it.
Okay, I will say something about variables ...
As you work on your thing, it won't work and that is how you will learn to be a developer. You'll get an error that says something like "ERROR: Variable grade in list does not match type prescribed for this list." or "Frank is not a number" . Now, you will remember that there are string/ character variables and numeric variables. You might discover that JavaScript is dynamically typed and will change the variable type as needed, even if that was no what you had in mind. Other languages will not change variable type, so if you had defined age as a character variable, even if age is entered as a number, you'll get an error. This sounds like a bad thing but it's probably not because it prevents you from doing stupid stuff like finding the mean for race when it is entered as 1=African-American, 2 = Asian-American and so on.
Things to make - three better ideas than a tip calculator
I've seen a program to calculate tips given in several places as an example of a first project. I disagree with that. A. Not everyone lives in America, so many countries don't have tipping. B. Tipping is easy. If you live in Chile, it's 10%. Look at the bill. Move the decimal. Give that. In fact, waiters just say ?Incluye propina? and you say, "Sí" so you don't even need to do that. If you live in the U.S. , take 10% and multiply it by two. Done.
Your first thing should be something you want to finish. Here are three ideas I've seen get a lot of people started: