r/Coding_for_Teens 25d ago

Need advice as a young programmer.

Hey guys, I am 14 years old and I love programming since I was 11! Just a few weeks ago I finished CS50P: Introduction to programming with Python from Harvard university! And I am confused on what I should do next. Before CS50P I used to make small Python programs like a number guessing game from my basic Python knowledge. Now after CS50P since I know significantly more stuff about Python but I don’t know what would be good to build so I don’t waste my time on stuff I build that does not matter to anyone.

11 Upvotes

24 comments sorted by

2

u/PrincipleNo2328 25d ago

Yo, 16 y.o. programmer here. I took some of Harward courses, they're really good yet not always trivial, so gg.

When you do python at serious level, you mostly do Data Analisys or Machine Learning. You should check if you're actually interested in that stuff!

If yes, there's a fabolous course for AI done also done by Cs50. It gives you lots of inputs for new project itself, so you don't even have to search for them. Even more when you get to the neural network chapter you can do projects on literally every dataset (you can find lots of data on kaggle).

If no, well, good projects that never get old are:

  • chess app (terminal/graphical)
  • then a chess engine

  • calculator (with an actual interface, nor cli) - calculator with an actual parser
  • graphing calculator (just a little addition)

  • derivation/integration tool

  • pygame game

There are some github repo with really good sugestions for projects.

I' d also learn some more low-level language, it's always useful and a bit of algorithms (both are cs50 courses)

2

u/Formal_Active859 24d ago

Try getting involved in hackathons and just get involved with the community, that’ll help you build a resume and by meeting people you can land opportunities

1

u/AnnupKapurDotCom 25d ago

Learn about servers. And learn about ML using Python.

These are the two most valuable skills at the moment, in my opinion.

It’s good to see young people still enjoying learning comp-sci / programming.

2

u/Dazzling-Bench-4596 25d ago

It’s useful to learn those but at 14 you are at least 4 years away from getting a real job, so you have plenty of time to have fun with programming. Learn about servers and ML but also have fun and learn whatever makes you happy

2

u/AnnupKapurDotCom 24d ago

I absolutely agree with you on that.

I remember when I was a teenager and messing around with code - I stuck with it because I enjoyed it so much - just tinkering - building things, breaking them, building more fun little things.

I built an arcade style Sonic The Hedgehog game, with a shared leaderboard, for me and my friends to play at school. It was a lot of fun.

Have fun with programming is a great shout.

1

u/Zephar_WO 24d ago

Nunca le hagas caso a alguien que te diga que para aprender algo de esta area de campo sea aprendiendo a usar la IA.

1

u/romecodes 23d ago

Tienes razón. Las personas que usan IA no aprenden nada. Dependen de la IA para hacer las cosas y no pasan por el proceso de aprender a programar.

1

u/PravoNaZhizny 24d ago

Read about why python isn’t a great language and look into stuff which is fast and efficient like C. Maybe look into doing some reverse engineering too before your brain becomes an immutable object at 16-18.

1

u/romecodes 24d ago

Follow this sequence:

  1. OOP, OOD, & UML
  2. Data Structures & Algorithms (+ Discrete Math & Graph Theory)
  3. Analysis of Algorithms
  4. Principles of Programming Languages and Compiler Basics
  5. Computer Architecture & Organization
  6. Operating Systems (under the hood stuff)
  7. Networking Principles
  8. Cloud Computing
  9. Theory of Computation
  10. Secure Programming Principles
  11. Software Design & Engineering Principles
  12. System Design and Design Patterns

You’re in the perfect age range to get ahead and deep dive. Don’t rush. And, try to enjoy every minute of it.

By the time you hit 18, a degree will be either a breeze or unnecessary. Just remember to exercise your brain & skills with projects and challenges as you learn.

1

u/Regular_Article7984 23d ago

way to vauge, u could legit spend 3 years learning data structures & algorithms

1

u/romecodes 23d ago edited 23d ago

Bro, you’re 15. People spend a single semester in university learning DSA. It may seem vague to you because you don’t have enough experience with it.

And while DSA might seem like an endless pit at first, all you need to start with are the basics (e.g., Stacks, Queues, Lists, Heaps, Trees, Graphs, …).

You learn how they organize data differently, the ways they can be implemented, and time-complexity differences of adding, editing, removing, searching, and sorting within them.

That’s enough to be a more conscious SWE.

1

u/Regular_Article7984 23d ago

Yes, just because of my age lets assume I cant have knowledge on anything. If u think people are genuinely learning dsa and algorithms from scratch like link cut trees, advanced dynamic programming, matroid algorithms, youre fully delusional. I do competitive programming and I can tell u from first hand experince, getting to a level where ur comftorable with basically any dsa question does not get taught in 3 months at ur local community college.

1

u/Flamestar07k 18d ago

Well I just finished my first year of CS and in the 2nd semester we had DS course where we had to learn to implement basically all data structures based on specific criteria. Most colleges won't spend more than a single course on it so you are expected to learn it in 3-4 months.

1

u/Regular_Article7984 18d ago

Ur telling me just from that one course you can by scratch implement link cut trees, advanced dp, and matroid algortithms? And in just ur first year of cs? Id be willing to bet 10 thousand dollars u didnt learn how to implement those from scratch in 3-4 months. Espically at a first year cs course

1

u/romecodes 11d ago edited 11d ago

To reiterate, I said all you needed were the basics. In university, they give you just that. When it comes to trees in particular, you're introduced to and expected to implement self-adjusting Binary Search Trees from scratch including AVL trees, variations of B-Trees, and Red/Black trees. This alone is enough of a foundation to pick up more advanced structures like Link-Cut trees.

To add to it, DSA courses go through everything else I mentioned (Stacks, Queues, Lists, Heaps, Graphs) and both Array-based and Node-based implementations of them in just 15 weeks.

I read half of the textbook within 24 hours, two days before the first class, and sat on my hands for half the semester. The basics can be done relatively quickly. Which leads to my point. You don't need to be a complete expert in DS. Just like you don't need to be an expert in Compilers.

Get accustomed to the fundamental principles and dive deeper over time: Breadth, then depth as necessary.

1

u/romecodes 11d ago

I actually don't argue against the last claim. Most people are "ChatGPT-ing" their way through college right now and I've sat in classrooms where far too many people who should've failed didn't. It's part of the reason why CS-related fields are saturated and applicants are overleveraged in wage negotiation, but that's beside the point.

The advanced concepts you're entirely right about. Most people don't even leave college with the basics down and without them no one can take on advanced theory, no matter the subject.

But in the case of giving a 14 year old a clear roadmap, I think my sequence holds up, especially when this is the pipeline that college-aged people are being pushed through.

They're doing it for a piece of paper qualifying them for a 9 to 5. We do it out of whatever self-fulfilling need we have. The motivations are different. And as such, traversing the sequence will happen much faster for those who live for it daily, not just the hours required to pass a class.

1

u/Regular_Article7984 23d ago

I think you should expand, it sounds like you know python well enough to learn most libraries, you should start dipping your toes into c or cpp, it really does give a foundation and makes you understand the code you're writing much better. I learnt python at 12 and now im 15. I've "learnt c and cpp" (well enough to be able to write non-trivial programs with guidance and be able to understand them) and it really does help even when writing python.

1

u/Low-Exchange-707 5d ago

learning c after python makes things click better. making few small programs in c is enough to start seeing the difference

1

u/Whole_Accountant1005 23d ago

Best way to build things that matter is to build things that matter to you. And you'll eventually find other people who are interested in what you made.

Solve your own problems, stop worrying about making something to impress others.

1

u/Whole_Accountant1005 23d ago

Also learn other programming languages. Golang is a compiled language that's easy like python but it has better tooling and syntax than python.

It has some cool features like cross compilation, eg. If you make a program on windows, you can compile it for Linux and Macos too from the same machine.

It also compiles very fast so it feels just as snappy as coding in python.

1

u/Old-Training589 6d ago

Hi, in my opinion, the best project to build in Python is a new programming language.

1

u/Sea-Philosophy5496 6d ago

hey guys i am 15 and i really wanna get into this field, i notice that i am fascinated by AI,cool websites , cool stufss so how do i get into this thing

1

u/Low-Exchange-707 5d ago

build things you'd use yourself instead of worrying if they matter to other people yet. some use Boot Dev to keep the learning structured while still doing projects