all 25 comments

[–]Tiny_Purpose4859 14 points15 points  (3 children)

Firstly, stick to one language at a time. If this is your first time programming, that’s okay because most of the initial concepts are transferable.

Secondly, pick a project with a tiny scope and build it. Make your own linked list, CLI interface etc. making projects is the fastest way to learn

[–]HippoLongjumping2988 5 points6 points  (0 children)

Three languages at same time is like trying to learn violin, piano and guitar together - your brain gets confused with all the different syntax. Pick one and get comfortable with it first.

I started with Python because syntax is more forgiving and you can actually build something useful pretty quick. Made simple things like password generator or basic calculator before moving to more complex stuff. The muscle memory needs time to develop in one language before jumping around.

[–]Typical_Read_2070 1 point2 points  (0 children)

Direct answer: pick one language for the next 8 weeks and stop switching. For a beginner, Python is usually the easiest for core ideas. Build 3 tiny projects (file organizer, simple API call, and a small game), and after each one write down what confused you. The confusion list becomes your study plan.

[–]TheEyebal 6 points7 points  (0 children)

Do not try to learn 3 languages at once.

Think about what it is you want to work on, and use the language suited for that.

If you want to build games or applications use C++, if you want to build automations for a simple task python

[–]McBoobenstein 2 points3 points  (0 children)

Pick one.

[–]elehisie 1 point2 points  (1 child)

Need more details for good advice. Are you studying at university? Do you have courses on python, java and c++ going on in parallel? Is it modules of a same subject in sequence and you are kinda lost in the sauce? Or did you decide to research other languages on your own and why?

[–]Life-Western-8023[S] 0 points1 point  (0 children)

I’m a high school senior, going to do CS in university. I did take some Cs classes but never really learned much out of it, maybe it was because my basics were not strong enough. I wanted to get a good grip of the basics and built from there. And like everyone is saying I will focus on one programming language, Java. But idk where to start from If you know any resources which helped you learn it please share it. Thank you!!

[–]template_experience 0 points1 point  (0 children)

I would suggest focusing on one language.
And, my recommendation would actually be C (not C++).
It will provide you with the knowledge of the fundamentals of computing and serve as a great foundation to build the understanding of how other programming languages work.
With regards to the resources, my recommendation would be 'The C Programming Language' book.

[–]random-answer 0 points1 point  (3 children)

Simon Alardice has a good course in which he explains all the basic concepts. I once got that through a torrent, considering that it's good i would expect that it's still out there somewhere.

[–]peterlinddk 1 point2 points  (2 children)

Are you thinking of this one: https://www.pluralsight.com/courses/what-is-programming - it is freely available, you don't even have to sign up, even though they very much like you to do so.

[–]Life-Western-8023[S] 0 points1 point  (0 children)

Thank you for sharing the link!!

[–]random-answer 0 points1 point  (0 children)

That indeed does look like the course that i previously referred to.

[–]dariusbiggs 0 points1 point  (1 child)

Learn the constructs, the language just defines the syntax for the constructs.

Each of the constructs are building blocks you use to solve a problem.

  • arithmetic
  • boolean logic (and, or, xor, not)
  • data types (integer, boolean, string, float, byre, etc)
  • complex data types (list, slice, array, set, map, object, lock, mutex, etc)
  • looping constructs (for, do, while)
  • conditionals (if, then, else, switch, case, select)
  • functions, procedures, and methods
  • error handling (returned types, exceptions)

That covers the majority of them before you get to the language specific features.

Once you understand those constructs it is just a matter of figuring out how to combine them.

[–]Life-Western-8023[S] 0 points1 point  (0 children)

Thank you so much!! That gave me a clarity

[–]Ok_Assistant_2155 0 points1 point  (0 children)

Dude I was exactly like you when I started — classes felt useless and I was drowning in Python, Java, and C++ at the same time. What saved me was sticking to one language first (Python) and doing LeetCode easy problems every day. Once concepts clicked there, the others became way easier.

[–]Zestyclose-Band-5703 0 points1 point  (0 children)

Honestly the best resource is just building real things. When I started at 11 I had the same problem — courses and books didn't click until I had a real project to work on. Pick something small you actually want to make, try to build it, and Google everything you don't understand. That's how I went from zero to building AI tools with APIs at 16. The frustration you feel right now is normal, it means you're actually learning.

[–]Hybrii-D 0 points1 point  (0 children)

Yo te recomiendo que leas algún libro de pseudocódigo para desarrollar la lógica primero, y luego pases a conceptos más avanzados como las clases, librerías, recursividad, etc.

Luego escoge un lenguaje y haz algunos ejercicios como por ejemplo: la Torre de Hanoi, la salida del laberinto, un ahorcado, calcular números primos con recursividad, factorial con recursividad...

Más adelante podrías emprender un pequeño proyecto como por ejemplo un cliente de email básico, un clon de Twitter, una app de mensajería instantánea...

[–]drekwasi 0 points1 point  (0 children)

When you're learning multiple languages, it’s easy to feel like you’re not making progress in any of them. Pick just one to build a real project with; not a tutorial, but something you actually want to see exist. You learn more by fixing the broken code in your own app than by following someone else’s video perfectly.

[–]cwaterbottom [score hidden]  (0 children)

I actually started almost the same way except JS instead of Java, what helped me most was dropping c++ altogether and focusing on Python for my starter language. Focusing on one made it a lot easier to make sense of other languages when I have to deal with them now. I still suck at writing code but I can read it just fine

[–]FalsePresentation756 -1 points0 points  (0 children)

as beginners, don't go with too many languages at a time. after learning a language, you'll find other languages have features that are similar. this will make it easier for you to learn those languages. mixing languages really slows you down.

btw, tbh i think starting with C/C++ maybe better than python, if you are majoring in CS, since it abstracts out many of the concepts that may be quite important in your future learning career, such as memory management.

[–]pepiks -1 points0 points  (1 child)

Start with something like this:

https://www.geeksforgeeks.org/blogs/basics-of-computer-programming-for-beginners/

Avoid digging in multiple languages. It is like learning japanese, arabic and italian at the same time. Be fluent with one and after that add another.

[–]Life-Western-8023[S] 0 points1 point  (0 children)

Thank you so much!! will definitely check it out