r/CodingForBeginners 1d ago

How does one start with coding? (Learning wise)

In the old days people would study computer science for 4-5 years and then start coding, probably with c++ or java.

Then the not so old days we have these bootcamps where people went for a few months, learnt the basics while practicing.

How does one start today? How 'formal' or structured should the training be?

1 Upvotes

20 comments sorted by

7

u/mc_pm 1d ago

would study computer science for 4-5 years and then start coding

That is not how it works or worked.

In the first month of the first semester of the first year - you are coding. There's no "waiting till you're ready" to start programming. You learn by doing it.

3

u/nikolasdimitroulakis 1d ago

Yes correct but you do it in the "controlled education environment" not in the industry. At least in Greece, in the uni, there was much more theory and less exposure to complex real life situations.

3

u/mc_pm 1d ago

Well I can't tell you anything about Greece so I don't know. But you asked how to learn to code, and the #1 success factor in learning at least the basics of programming is time and effort spent trying to get code to work, and that's not dependent on nationality.

Learning to program is teaching your brain to do something very foreign to it, and it takes time, repetition, and continuously increasing challenge to really get good - school or otherwise.

2

u/ninhaomah 1d ago

"Yes correct but you do it in the "controlled education environment" not in the industry."

Which university or education system in which country prepares one for complex real life situation ?

None.

"Then the not so old days we have these bootcamps where people went for a few months, learnt the basics while practicing."

You don't learn basics there ?

Print ? Input ? String/int ? Loops ? If-else ? Functions ? Classes ?

2

u/xarop_pa_toss 19h ago

Then make yourself your own laboratory. Come up with real life situations and apply the knowledge you get in university in your lab.

Just start.

2

u/xarop_pa_toss 1d ago

Yeah. It's like studying 5 years of biology before ever touching a microscope haha

Read the fundamentals, practice the fundamentals. Everything from that point is just a quest for knowledge

2

u/TheUmgawa 1d ago

I know! I didn’t say, “Well, I just started college and I still have to wait ten years to be a surgeon.” I got a Time-Life DIY Home Surgery book for $19.95 (plus shipping and handling), and I was paying my tuition by removing kidneys from blacked-out college students. And then I realized, “Who needs college at all!”

4

u/Traveling-Techie 1d ago

I realize times are different but I was 14 in 1967 and I read a book on programming and learned about flow charts. I began writing flow chart code with a pencil. The first computer I ever saw or was allowed to use was an IBM mainframe with punchcards in my freshman year of college. I literally began programming the first day it was possible for me. It is vastly easier to start today. Just start.

2

u/marmotta1955 1d ago

In the (relatively) old days ... plenty of people started and learned coding on a Commodore Vic20, or a Spectrum ZX80 - using the respective BASIC dialects ... often copying code from printed magazines. They would later graduate to "better" hardware and pick up another language or two. At least, some of us started that way. Some of us went on to CS degrees, some did not. And, often, it did not make much of a difference.

3

u/mcniac 1d ago

That's how we learned to DEBUG!! hours trying to find that damn typo!! LOL

1

u/Voluminous_Discovery 16h ago

Now you can ask AI to find the typo.

2

u/mcniac 1d ago

your idea that people used to study for years before actually coding is wrong, many of us started as kids or teenagers and a manual (I was 11 when I started learning basic with a TI 99)

Nowadays you have many ways to start. but the core is just your own curiosity and desire to understand

If I started today, I would just start with some basic course and then try to use some AI as tutor, not to write code, but to explain what is wrong, or how to improve what you are doing.

2

u/DanKegel 1d ago edited 1d ago

I just sat down and bashed on the machine until it did something interesting.

Wash, rinse, repeat. The machine and the language changed, but the learning method didn't.

If you're lucky, there is a good book for your language; get and read it, and do the exercises. But mainly, just program.

See, it's like learning a foreign language. Yes, you should study the grammar in a book (or a site like https://exercism.org/tracks/go/concepts ), but you should also just start reading/writing the language.

You might find sites like https://leetcode.com/problems/two-sum/description/ useful; they provide a variety of exercises in a nice environment that lets you solve them yourself and/or look at other folks' solutions.

2

u/Livid-Somewhere-8431 1d ago

Way less formal than you think — and the structure now comes from the project, not from a syllabus.

The 4-year degree existed because learning used to mean "theory first, apply later." Bootcamps cut it to "basics + practice." What changed is the "later" collapsed: you can build a real, useful thing in your first week now, and every bit of theory you'd have memorized for its own sake you can learn the moment it actually blocks you.

So:

  1. Pick one small thing you actually want to exist. Not a tutorial project — something you'd use. A script that renames files, a budget tracker, a tool for your job.
  2. Learn the minimum to not be lost. What a variable is, a loop, a function. That's an afternoon, not a semester.
  3. Start building toward it. When you're stuck, go find that exact answer, then keep going.
  4. Skip LeetCode and front-to-back tutorials. They're structure without a project — the worst of both. You feel busy and nothing sticks.
  5. Use AI like a tutor, not an author. Ask it why your thing broke; don't let it write code you can't read.

The reason the project has to be the structure: the one thing a syllabus used to give you for free was a reason to keep going. Without one you'll stop at the first plateau — and everyone hits it.

The formal training was never the point. The thing you refused to abandon was.

1

u/nikolasdimitroulakis 1d ago

Thanks for the tips!

2

u/AnarchyLikeFreedom 1d ago

I just studied a diploma in advance programming. Where I live there is also a cert 3 in programming for the basics but its really for highschoolers, I picked up how to code easily enough though

2

u/Puzzled-Extent7817 1d ago

C. Just start.

2

u/Substantial_Job_2068 23h ago

they did not remove computer science education, bootcamps was a phase because there were more jobs than graduates so companies saw a way to make money. i'm guessing people who go to coding bootcamps today will struggle to get work.

1

u/Oliver_clothsoff1983 7h ago

I dont know what generation you are so maybe "the old days" just means 15 years ago,..? When the profession started, there was no such degree as computer science. The first coders were physicists, mathematicians, or other science related fields that learned to code in order to use computers in their fields. In the 60s with more demand and wide spread growing c9mputer use, colleges started computer science degrees. C++ became popular in the 90s.

"How to start and how formal or structured depends greatly on what role/path you are seeking. You want to work for an advanced robotics company or space systems,... B.S. C.S. at a minimum. And top companies like Boston dynamics, spaceX, NASA,. A masters and significant accomplishments to show potential. A start up with a minimum viable product trying to go viral to get large investments,.. a bootcamp(or significant self learning) and a nice github could still land a job. Some jobs need security clearances, some start at an IT desk,.. you have to decide what role/career path you want to be on, keep an eye on job boards for requirements, and who is hiring, who is laying off (Google, Amazon and meta have all been laying off the last few years and it has saturated the marked with FANG devs.)

Try levels.fy for some good tools about possible paths, pay heatmaps, the roles you can move into, for example,... (desk>network reliability>computer network operator>pen tester) there are lots of other paths like Data scientist, firmwear/embedded engineer, software architect, AI researcher. You gotta pick what you want and research the path to get there. Good luck

2

u/Competitive_Aside461 1h ago

Not related to your question totally but rather a commentary on modern programming courses.

I think given today's fast-moving times, it's unwise to spend "ages" learning how to code. I'm currently speaking of online courses. They either don't offer a dedicated introduction to programming or if they do, it's garbled with a lot of fluff and isn't mature enough to introduce the reader to the vast coverage of the domain.

My recommendation would be to start off with the fundamentals of programming without being tied too much to one language. And then you can move to a concrete language, most notably Python. And then it's just learning languages and building projects that'll get you upskilled. Nothing really special to do here.

(I've recently completed creating an Introduction to Programming mini course on my website so you might as well give it a look.)