If you want to learn how to code, can’t you just google “coding tutorial for beginners” or something similar? Probably you would need to pick a language, but that would similarly be solved with “recommended coding language for beginners”. Then it’s very easy to find a resource that starts with hello world and gradually introduces new things. And I’m sure if it moved beyond a browser toolbox, a guide for setting up whatever IDE would be included.
Learning to code is by no means easy, but it’s possibly the best type of thing to learn when it comes to having a wealth of free, easily discoverable guides. The main obstacle is choosing to put in the time, and this comic removes that obstacle by forcing them to not put it off.
Well, put yourself in the shoes of someone who knows nothing about programming and googles what you described. They’ll be flooded with information that they can’t really make sense of. What language do I choose? I want to make games! So is C++ the right one? Can I learn another one?
Look at the questions in beginner forums. The naive, seemingly stupid questions. Many beginners struggle to understand what a language is, and how languages are related. To many a programming language is a series of magic incantations that make the computer do stuff. They treat it like spells.
Then, if you do manage to get over that hurdle, you’ll have to put in quite some time to get anything useful out of your code. You’ll have to bang your head at many hard surfaces, read tons of unrelated crap because, once again, you don’t even know what to google.
I don’t know, if you ever worked with complete novices. People who want to learn, but know next to nothing. Where I live, you can do apprenticeships for software development, and I had to guide a few of our apprentices. At that point I had been programming since 14, had programming classes in school, master’s degree in CS and several years of work experience. So I was very much removed from being unknowing. Being confronted with the utter incompetence and lack of any context of these guys was extremely eye opening to me. Those were bright, motivated younglings, but everything that seemed obvious to me, was completely beyond their capabilities.
In short: you may underestimate the difficulties to learn without guidance.
I’m sure its different now from when I started - because coding is very popular, and the internet is a thing… But I can tell you, that it took a long time before I knew what a programming language was, or ‘coding’… these words were just not familiar to me.
I learnt stuff by just opening random executable files in notepad to see what they look like… mostly it was just garbage that no one can understand - but some of them were readable, and I replicated and learnt from them. (they were .bat files.) I became a bit of an expert in making very fancy batch files. I made customisable menus, and a little adventure game. Then my parents helped me out by buying me a programming book. It was about programming in Visual C++. I was pretty excited - until I quickly worked out that Visual C++ was something you had to buy before you could use it.
Anyway, my point is that it is easy to see what you need from the point of view of an expert; but from the point of view of a novice, you don’t know what you don’t know. You don’t know which words are important, or what anything is called. The first steps are not hard except that you don’t know which direction you are meant to be stepping in, or where the starting point should be.
No because most tutorials will start from “write print(“Hello World”)” and the like without mentioning compiling or where to write it or with what…
I didn’t really get into coding until someone guided me through the basics of python, which is an easy language that doesn’t even require compiling. One of the reasons was precisely not knowing where to start.
It’s gotten a lot better in recent years tbf in terms of those kinds of resources. Beginner recommended languages like Python are still a pain because it’s super easy for a beginner to bork how they set it up, but on the whole there’s plenty of online code sandboxes and other ways to get started.
Your point is definitely valid though. Why on earth would we want someone who’s just showing an interest in programming to write their own compiler??? Wtf? If someone wants to get into baking you don’t send them out into the fields for 6 months to grow some wheat.
When I was a kid I mucked around with html and css to make some GeoCities sites. I decided I wanted to learn how to code so I got a book from the library called “how to code games for beginners” or something. The thing never told you how to set up an IDE or compile the game. So I was just frustratingly typing out the code examples into notepad without a clue as to what to do. I think this was during the dialup era so it wasn’t like there was a wealth of info online.
I ended up abandoning programming for quite a few years. It just seemed like nonsense because writing graphics libs for C in notepad does feel like nonsense to a child. I wonder what life would be like if I had some better resources at that moment in time and decided you continue pursuing it.
If you want to learn how to code, can’t you just google “coding tutorial for beginners” or something similar? Probably you would need to pick a language, but that would similarly be solved with “recommended coding language for beginners”. Then it’s very easy to find a resource that starts with hello world and gradually introduces new things. And I’m sure if it moved beyond a browser toolbox, a guide for setting up whatever IDE would be included.
Learning to code is by no means easy, but it’s possibly the best type of thing to learn when it comes to having a wealth of free, easily discoverable guides. The main obstacle is choosing to put in the time, and this comic removes that obstacle by forcing them to not put it off.
Well, put yourself in the shoes of someone who knows nothing about programming and googles what you described. They’ll be flooded with information that they can’t really make sense of. What language do I choose? I want to make games! So is C++ the right one? Can I learn another one?
Look at the questions in beginner forums. The naive, seemingly stupid questions. Many beginners struggle to understand what a language is, and how languages are related. To many a programming language is a series of magic incantations that make the computer do stuff. They treat it like spells.
Then, if you do manage to get over that hurdle, you’ll have to put in quite some time to get anything useful out of your code. You’ll have to bang your head at many hard surfaces, read tons of unrelated crap because, once again, you don’t even know what to google.
I don’t know, if you ever worked with complete novices. People who want to learn, but know next to nothing. Where I live, you can do apprenticeships for software development, and I had to guide a few of our apprentices. At that point I had been programming since 14, had programming classes in school, master’s degree in CS and several years of work experience. So I was very much removed from being unknowing. Being confronted with the utter incompetence and lack of any context of these guys was extremely eye opening to me. Those were bright, motivated younglings, but everything that seemed obvious to me, was completely beyond their capabilities.
In short: you may underestimate the difficulties to learn without guidance.
I’m sure its different now from when I started - because coding is very popular, and the internet is a thing… But I can tell you, that it took a long time before I knew what a programming language was, or ‘coding’… these words were just not familiar to me.
I learnt stuff by just opening random executable files in notepad to see what they look like… mostly it was just garbage that no one can understand - but some of them were readable, and I replicated and learnt from them. (they were .bat files.) I became a bit of an expert in making very fancy batch files. I made customisable menus, and a little adventure game. Then my parents helped me out by buying me a programming book. It was about programming in Visual C++. I was pretty excited - until I quickly worked out that Visual C++ was something you had to buy before you could use it.
Anyway, my point is that it is easy to see what you need from the point of view of an expert; but from the point of view of a novice, you don’t know what you don’t know. You don’t know which words are important, or what anything is called. The first steps are not hard except that you don’t know which direction you are meant to be stepping in, or where the starting point should be.
No because most tutorials will start from “write print(“Hello World”)” and the like without mentioning compiling or where to write it or with what…
I didn’t really get into coding until someone guided me through the basics of python, which is an easy language that doesn’t even require compiling. One of the reasons was precisely not knowing where to start.
It’s gotten a lot better in recent years tbf in terms of those kinds of resources. Beginner recommended languages like Python are still a pain because it’s super easy for a beginner to bork how they set it up, but on the whole there’s plenty of online code sandboxes and other ways to get started.
Your point is definitely valid though. Why on earth would we want someone who’s just showing an interest in programming to write their own compiler??? Wtf? If someone wants to get into baking you don’t send them out into the fields for 6 months to grow some wheat.
When I was a kid I mucked around with html and css to make some GeoCities sites. I decided I wanted to learn how to code so I got a book from the library called “how to code games for beginners” or something. The thing never told you how to set up an IDE or compile the game. So I was just frustratingly typing out the code examples into notepad without a clue as to what to do. I think this was during the dialup era so it wasn’t like there was a wealth of info online.
I ended up abandoning programming for quite a few years. It just seemed like nonsense because writing graphics libs for C in notepad does feel like nonsense to a child. I wonder what life would be like if I had some better resources at that moment in time and decided you continue pursuing it.
I did not choose to start with VB.net - It was the first thing youtube came up an I think was interesting, because I could start with something GUI.
Today I make enterprise factories go brrr.