Jiggmin's Village

Full Version: Starting to code
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
If I wanted to start learning how to code... what would be a good place to start? Think Spin

Thanks! Fred
For starters, which language?
@Stxtics asks a very important question. It really depends on what you want to do!
That's a good question, I hadn't really thought about that before. I'm not really sure hat I wanna do, but after doing some research I think I'm gonna start with Python. Thoughts?

For reference I do have some experience coding with MATLAB, but that's not like, coding coding
(26th April 2020, 3:05 PM)Dan-83 Wrote: [ -> ]That's a good question, I hadn't really thought about that before. I'm not really sure hat I wanna do, but after doing some research I think I'm gonna start with Python. Thoughts?

For reference I do have some experience coding with MATLAB, but that's not like, coding coding

Python is a fun language. If you know Python you can program small electronics too with a Raspberry Pi  Tongue

Are you doing this as just purely hobby or looking into it as a possible job?
(26th April 2020, 3:05 PM)Dan-83 Wrote: [ -> ]That's a good question, I hadn't really thought about that before. I'm not really sure hat I wanna do, but after doing some research I think I'm gonna start with Python. Thoughts?

For reference I do have some experience coding with MATLAB, but that's not like, coding coding

I usually like to recommend PHP to start. It's easy to use and no compiling is necessary. Plus, no extra programs. Just as long as you have access to a server or a command line with PHP installed, it's very easy to use.
Thanks for the responses.

(26th May 2020, 6:20 PM)Lunanova Wrote: [ -> ]Python is a fun language. If you know Python you can program small electronics too with a Raspberry Pi  Tongue

Are you doing this as just purely hobby or looking into it as a possible job?

And yeah it's just a hobby for now. Trying to take advantage of this quarantine time lol
(27th May 2020, 4:17 PM)Dan-83 Wrote: [ -> ]Thanks for the responses.


And yeah it's just a hobby for now. Trying to take advantage of this quarantine time lol

Gotcha. Back like 4 years ago I started learning on https://www.codecademy.com, they've got tons of material to learn. And I'm sure whatever language you want to learn they have a starters course on it.
(27th May 2020, 4:17 PM)Dan-83 Wrote: [ -> ]Thanks for the responses.


And yeah it's just a hobby for now. Trying to take advantage of this quarantine time lol
Wanted to quickly input, another question that should have been asked would be for example: Do you wanna make games? Do you wanna make software like Microsoft Word? Do you want to make a Website? Do you want to learn to program servers? 

Things like these matter a lot when picking a language because they all have their own strengths and weaknesses.

My personal beginner languages would be C#, HTML, Javascript, and Python these all have their strengths and weaknesses I said so it'd still depend on what you want to learn. As well, you could start with lower-level languages like C or C++ if you want more of a challenge. Many industries use all the languages I mentioned if you'd like to eventually make it more than a hobby.

In any case, good luck!
Here are some references that I give out to people and I find them good enough to necro this thread:
  • This is Project Euler, it has good math-related problems, so good for MATLAB or Python.
  • This is beej's network programming, a very excellent to learn how to create networked program like how web servers work or multiplayer video games.
  • This is handmadehero, a low-level game programming tutorial, just watch the first 100 episodes.
  • This is a textbook-based learning how to program. I'd recommend going through the first 4 books.
  • Once you're comfortable programming, you may find you don't know what to do, here's a list of good projects to do
For programmers who are looking for advanced projects, here's a list I also have (I'd also recommend the textbook-based learning for advanced concepts too):

(26th May 2020, 7:04 PM)bls1999 Wrote: [ -> ]I usually like to recommend PHP to start. It's easy to use and no compiling is necessary. Plus, no extra programs. Just as long as you have access to a server or a command line with PHP installed, it's very easy to use.
That has to be the oddest first lang rec ive heard so far lol.. at least its not python though.

I started with Java and C
I think focusing on one language is a good starting point. I think a lot of people get caught up on different languages and want to be "language-agnostic" where they just know general ideas, rather than code-specific things itself. But I've found if one does that, one just really slows and is uncomfortable in every single language.

I'd recommend sticking with one language and moving forward. If one wants to learn, I suggest C. If one wants to just do things, I suggest Python.

By "things" I mean that Python is a one-stop-shop, and can do everything: websites (flask), data analysis (scipy), machine learning (pytorch or keras/tensorflow), or even game dev (pygame) all in Python.

One may find YouTube videos out there where people suggest learning Python, but I believe Python is just a tool. Every aspect of hardware is completely abstracted away and one learns nothing about it. All aspects of data management are done "underneath the hood". One only need focus on data analysis, never any aspects of the machine itself. In C, one learns how to do that. It will be positively frustrating, I'll have you know, working in C, but it will be so much worse to learn Python first, then learn C afterwards if one ever needs to learn C in the future.

One could make an argument that Rust or Go is better to learn than C, but no, Rust/Go are like an abstracted C, which is pointless from a learning perspective. They're useful in production, but learning is not production.
The problem with python is theres no syntax like it so a lot of python devs are stuck in their bubble and cant even edit simple C# programs. Its sad. Plus i'd argue learning a framework like pygame or flask is basically like learning a new language so it really isnt productive.. idk. Im also a C maximalist in most regards. Ultimately its up to what you want to program.. I started with runescape private servers so java was the goto
Though I'm not as versed as the others who have posted here, I'd recommend just going with C and just starting with some projects you're interested in. C is a very rigid sort of language, and lacks many of the abstractions that other, higher-level languages have. Writing programs in it may be a struggle at first, but it will offer you good insights and knowledge in just how programs operate; it has an elegance in its simplicity. Recommendations like Python are understandable, but using it may build bad habits in other programming languages.

Ultimately, it all depends on what you're interested in. Languages are built for different purposes, but if you wanna get started, roll with C and go from there.
(18th January 2022, 7:45 AM)Rei Wrote: [ -> ]The problem with python is theres no syntax like it so a lot of python devs are stuck in their bubble and cant even edit simple C# programs. Its sad.
Yup. I'm a Python programmer. I haven't done anything outside of Python for the past 3 years of my life and I had an aneurysm trying to use Go lang in the Advent of Code. Don't be me. Python is good for data science, but don't get stuck in it.
I appreciate your thoughts guys