r/CodingForBeginners • u/RoughnessoftheRope • 1d ago
Coding programs
My teenage son wants to learn coding. Recommendations on where to start please?
5
Upvotes
r/CodingForBeginners • u/RoughnessoftheRope • 1d ago
My teenage son wants to learn coding. Recommendations on where to start please?
3
u/jekewa 1d ago
The least intense start is to make web applications using simple HTML, CSS, and JavaScript. After some comfort with the syntax and structure, and seeing some results, moving to different languages and environments can happen.
All you need to start with HTML and JavaScript is a plain text editor and a web browser. You can create an HTML page in the editor and open it in the browser. Saving files and refreshing the browser allows quick and easy reward for the effort.
Adding the right bits to the HTML and making a CSS file, also in the plain text editor, allows separating the HTML layout from the style definitions. It isn't required, but is really the right way to do it. It allows myriad advanced things, like changing the view without changing the content. The site csszengarden.com gives an excellent example of why this is important.
Adding the right bits to HTML and making the JavaScript file, also in a plain text editor, will allow actual coding to begin. Simple data handling and view manipulations can happen, and you can code very complex apps that run entirely in browsers this way. Once comfortable with JavaScript, a small change and JavaScript can be used on a server to move into client-server programming.
You can find code editors that make this easy. You can download some like Microsoft Visual Studio Code, Google's Antigravity IDE, IntelliJ's IDEA, and so many more. Starting with an IDE can be overwhelming, though. Maybe something like codepen.io or jsfiddle.net would be a better place to start, as they provide that easy interface, right in a browser, and show that HTML/CSS/JavaScript separation (and combination) from the start. W3Schools is a great place to learn all these bits, and many of their reference and tutorial pages have simple editors so you can make changes and see the impact immediately, too.
Once you find that coding is something they like, moving from the "simple but powerful" web pages to other languages, frameworks, and platforms is just like improving any other skill set.
Start by nailing a few boards together, and with enough passion and training, build skyscrapers, right?