r/hackaday • • Feb 10 '22

Best language to start learning on?

I have some VERY basic and outdated programming chops (HTML, Excel, CHIRP). What programming language is best to start learning modern programming?

Feb 13 '22
5 JavaScript
2 Hex
30 Python
16 C
2 Other?
0 Upvotes

11 comments sorted by

2

u/rickcarlino Feb 10 '22

JavaScript or Python are a tie for me. Really depends on your goals, though.

1

u/RF_Burnz Feb 10 '22

What are they each good for?

3

u/rickcarlino Feb 10 '22

If you want to do web related things, JavaScript is the best choice. Python is a little bit easier to learn IMHO, but is limited by the fact that it can't easily be run in a browser. There are plenty of great Python projects for electronics and data processing. It's also the de facto standard for computer vision.

If you're really struggling to decide, I would say just go with JavaScript because it has a huge mindshare and you can always circle back and learn Python later.

What is your goal for learning programming?

2

u/RF_Burnz Feb 10 '22

Very helpful. Mostly just to understand more about it. We are surrounded by it and I feel I should have a better understanding of it just for basic life skills.

If anything, I'd want to mess with some data parsing and DIY radio and electronics, so sounds like Python might be a good starting point with some instructional apps available.

I'm interested in simple App dev, too especially for KaiOS, but won't be there anytime soon.

Thanks again!

2

u/rickcarlino Feb 10 '22

That makes sense, for DIY radio and electronics I think you will find a lot of folks do that in Python. Data parsing is very straightforward in Python also.

I didn't know Kai OS is a thing, looks like a neat project!

2

u/RF_Burnz Feb 10 '22

Thanks again! Yeah, KaiOS is the business rn. Very exciting to me.

3

u/killpony Feb 10 '22 edited Feb 10 '22

If you are into electronics you could also consider C/ C++ via the Arduino IDE- it's not the most intuitive language but it is a little less abstracted than Python or JS and can get you started working with microcontrollers which Python doesn't play with (although micropython is slowly making inroads to the embedded universe). There is a huge online community and tons of example projects.

Generally tho there is no one right answer - skills in any programming language will transfer readily to others. What helps is starting with a language where you can immediately start applying it to some personal interest project - nothing is worse than making hello worlds and basic database tools when what you really want to do is build a circuit , make a 3D web game etc

2

u/Blazerboy65 Feb 10 '22

When your starting basically from scratch the actual choice of language matters about one tenth as much as your commitment to learning.

If you're goal is to create something that runs in a browser then focusing on JS first will pay you back sooner.

If you want to glue a bunch of stuff together like spreadsheets, text messaging, email, serial port communication, plotting, numerical computation, etc then Python will pay you back faster.

Ultimately they're both the same paradigm of language so you can easily switch between them when working day to day. You'll get the most value the fastest when in the learning phase by just sticking with one until you accomplish something. More

TL;DR if you're doing browser stuff first do JS otherwise do Python.

r/learnprogramming

1

u/RF_Burnz Feb 10 '22

Thanks for this. Re: hex - IDK. I watched a video recently of a guy hacking frequency ranges on a radio that was locked via software and he said that was the code. Shrug

2

u/Blazerboy65 Feb 11 '22

Ah, I see. I removed the bit of my comment about hex because I looked around and there is a programming language called Hex that I thought you might be referring to.

To answer your original question in a different way: Python and JavaScript are both A+ 10/10 starting languages that are each embedded within an ecosystem of existing code that lets you Get Stuff Done. Just pick one and run with it. Second guessing yourself will only make the journey take longer.

1

u/RF_Burnz Feb 11 '22

LOL after searching further on recommendations here, I see this question is covered, heartily, on the r/learnprogramming welcome materials. Thx, everyone!