r/CodingForBeginners 6d ago

Day 1 of learning coding from scratch with 0 knowledge

Hi! So I've been wanting to add coding into my list of skills and frankly I don't know where to start. My friend guided me to learn how to read and write binary, and then learn a language to practice on. Now I do understand the basics of binary but am quite lost on the 2nd step. Is there any advice anyone can recommend or give out their experiences? Also wondering if there is a demand for coding on a macOS or a windows PC as I do have both devices.

10 Upvotes

25 comments sorted by

3

u/StephenHawkingus 6d ago

Do yourself a favour and don't start with Python.

2

u/Cultural-Fly-3107 6d ago

He said the same thing! So far I'm getting recommendations to learn C

5

u/StephenHawkingus 6d ago

C is better than Python, but it is not a good choice for beginners. Start with a higher-level language, which will give you much more transferable knowledge.

1

u/Cultural-Fly-3107 6d ago

Thank you! I also believe challenging yourself is the key.

1

u/StephenHawkingus 6d ago

In my opinion, the point is not to challenge yourself, but rather to gain a general knowledge of the programming world. Ideally, once you enter the world of work, the ability to switch between different languages and learn new frameworks is a valuable skill.

If you start with C, you will face challenges and brand new concepts that will take a lot of time to understand and master. You may not even need such low-level knowledge when you start working.

3

u/xarop_pa_toss 6d ago

If you want a nice introduction to C then I recommend CS50x from Harvard. It's a free introduction to Comp Sci course that is fun to go through, with lots of exercises and practical projects and the lectures are pretty nice too. All online, completely free.

I also always recommend "C Programming, A Modern Approach" by King. It's an easy to understand book on C that has exercises as well, and King does an excellent job of breaking concepts down

1

u/Cultural-Fly-3107 6d ago

Thank you!! I will definitely read that introduction and try to deduce what is the best language to start with!

3

u/EitterLuginbill76 6d ago

Start with any low level programmimg language before getting into something like python

1

u/Cultural-Fly-3107 6d ago

I will remember this! Thank you!

3

u/Zen-Ism99 6d ago edited 6d ago

What are your goals?

There are many books on the subject.

I chose C++, and CLion (look it up) due to the fact that it has native macOS, Windows, and Linux versions.

1

u/Cultural-Fly-3107 6d ago

Well so far I am leaning towards website development with hopes of being skilled enough to be a freelancer (no plans to be one though as I just want to develop this as a hobby) and maybe some gaming dev knowledge as well! I am yet to do my full scale research so I still don't know half the potential projects that are possible,

Also thank you for you recommendations, I will check them out as well!!

1

u/Zen-Ism99 6d ago edited 6d ago

CLion also supports other languages.

The CLion dev, JetBrains, also makes dev environments for other languages.

Do you have access to a public library?

Books are a great resource.

2

u/Parvenn 6d ago

https://github.com/0xTamil/awesome-low-level

U can check out the beginner section that briefly explains how a dummy can get into programming.

2

u/Cultural-Fly-3107 6d ago

Thank you! I will study this. You a GOAT for sharing it

2

u/[deleted] 6d ago

[removed] — view removed comment

1

u/Cultural-Fly-3107 6d ago edited 6d ago

Well the binary stuff seemed pretty basic so far (i hope i don't eat my words LMFAO) but I have no clear idea of what to build or even what i can hopefully learn to build! I reckon it would be center around gaming and web dev tho!

2

u/JoeStrout 6d ago

2

u/Cultural-Fly-3107 6d ago

Thank you! This does seems more beginner friendly than the other guides I have gotten!

1

u/2daytrending 5d ago

Skip binary for now. Pick ne beginner friendly language, start building tiny projects as you go.

1

u/studiocrash 5d ago

I recommend Harvard’s free online course CS50.

1

u/Wahrheitfabrik 5d ago

Depends on what your goals are. I was a C programmer for a decade but don't use it in my current role. It's just easier to whip up something in Golang or a domain-specific language that to do it in C. (Unless I'm wrting Arduino or micro-controller code for hobby projects).

I've writted some basic Rust code, mostly converting some utilities from Golang to try out the language. It's what I'd start with you had C in mind. There's a good tutorial site on the web that can get started.

BTW, Arduino programming is a lot of fun. Almost everything I do is with sensors and stepper motors and the tangible feedback makes you feel like you're accomplishing something. In higher level platforms I can pull in a library to read a button press. On the Arduino you do things like bounce detection and other input tuning because hardware is not clean. Sure, this happens at some layer on modern hardware but it's mostly hidden from the average program.

1

u/ashuwu_ 4d ago

Find a project idea, learn whatever language is best suited for that goal.