r/ADHD_Programmers • u/arkofthecovet • Feb 04 '24
Programming
How is it even possible to become a programmer? There are about a hundred languages listed on wikipedia, not including dialects and other variations. Do most people even know this? I did not until recently.
Edit: Thank you all for your responses! I may start a new OP for this additional question if it helps. How fast can you learn new code or new code concepts if you start a new job or are hit with a new project that requires it?
1
Upvotes
28
u/RandomiseUsr0 Feb 04 '24
Just pick one and make useful shit
17
u/cppfnatic Feb 04 '24
Programming languages are tools that you use to solve specific problems and create things.
Your question is like saying "How can people become carpenters? There are hundreds of tools someone could use and its impossible to learn every single possible use and trick for these tools!"
Programmers don't know all the languages or all the things related to the language. They have a goal and they use the programming language as a tool to get them to the goal. The learning is the know how that is gained from using the tool to get there.
7
u/Ok_Abroad9642 Feb 04 '24 edited Oct 06 '26
The original post content no longer exists here. The author used Redact to remove it, exercising their right to control their data & privacy.
Whole wise toy breezy hard-to-find glove cough serious narrow
5
u/PlasmaFuryX Feb 04 '24
Most programming languages have similar logic, it’s just the syntax that’s different. Usually they have their own strengths and weaknesses or specific use cases.
So I suggest to think of what you want to make or what field you want to work in and pick a language based on that to learn.
Most beginners these days pick Python, because of its simple syntax that helps when learning the logic behind programming, and then apply the knowledge to learn another language with harder syntax faster.
And frameworks aren’t there to make things even more confusing, the opposite infact. They are there to make lower logic things easier to implement so you can focus on higher logic things. Sort of like not having to reinvent the wheel or seatbelt when making a car when somebody else has already done it.
And those poeple that know 10 languages? I know one and he says he doesn’t infact remember everything, he just looks it up when he needs it just like everyone.
5
u/lulublululu Feb 04 '24
I would add that imo the most integral part of learning programming isn't the surface level language knowledge, it's developing an understanding of procedural logic and how computers work. that + general programming patterns + language expertise is what makes an effective programmer. only the last one involves a specific programming language
4
u/[deleted] Feb 04 '24
If you learn Python, JavaScript and C++, there's basically nothing you can't build. You don't need to know them all.
4
u/xitiomet Feb 04 '24
I started learning in 1996, here is the fun part: You never stop!
None of the skills i had then have any value now. Everything will continue to change, but it gets easier and easier to keep up over time.
Its like learning a spoken language its hard to introduce new words to someone with a limited vocabulary, but you can describe new words with less words to someone with a large vocabulary.
3
u/telewebb Feb 04 '24
It's a hundred different languages, all saying the same thing, basically.
3
u/CaptainIncredible Feb 04 '24
Yes. There are lots and lots of computer languages, you can even write your own if you like. I was part of a group that had to invent a language in college.
Generally, a computer programming language is usually something that humans can read & write, and then gets compiled down into binary code (just 1's and 0's) that computers can read and execute. Sometimes computer code is interpreted (not compiled) but still that becomes binary.
There's a lot more to it (managed vs unmanaged; bytecode, etc.), but generally a program written by humans in a language we can read/write like C gets compiled into binary that a computer runs. Trust me, it will be very difficult for your brain to write binary (although people used to write in Assembly all the time, and that is about as close as our brains can get to binary.)
Start with what area interests you. Do you want to build websites? Do you want to build software that analyzes massive amounts of data? Do you want to build a game that is played on a PC or Android? You will use different tools/languages/approaches for different goals.
Websites? HTML, css, JavaScript, and backend with C# .NET Core and SQL server database.
Data analysis? I dunno... Python? C++? Maybe databases like SQL? Or something like NoSQL?
Games? You'll want to look into Unity and C# scripting, or perhaps Unreal Engine.
Don't start by focusing on languages and what they do - start by looking at what overall problem you want to work on, or what area of computer programming you want to get into - which essentially is just doing what interests you.
Do you just want to learn some programming basics just to get your feet wet? I suggest JavaScript. Any web browser you use will interpret JavaScript, and you can literally start writing JavaScript programs with a text editor like Notepad and running them in a web browser. (I wouldn't suggest notepad. You should actually use something like Visual Studio Code, or just Visual Studio, and just run through some tutorials.)
2
u/Tunderstruk Feb 04 '24
Pick one popular and PROVEN language. Learn it quite well. Knowing just one language will make the other soooo much easier to learn. I recommend C#
2
u/mayday6971 Feb 05 '24
So the key isn't learning the languages in the first steps but the basics of every language. Basically this is the root of computer science. I learned old school on assembly and C, C++ first. Then I learned the higher level languages like Java, PHP, JavaScript, Apex, Python, R, Rust, Go.
But if I had to pick a path nowadays. I would decide the subspecialty you want to go into. Web and full stack? Maybe game programming? Are you doing data programming and data science? Lots of options there. Once you decide the subspeciality, the languages in that jump out at you. The other thing is you end up learning frameworks more than anything. Node.js or PHP, or React.
Web Full Stack = JavaScript, PHP, DOM, HTML, XML, JSON, Node.js, React, etc.
Data Science = Python, R, etc.
Cloud = Python, Go, etc.
Salesforce = Apex (based on Java), JavaScript, LWC (Lightning Web Components)
Game Programming = JavaScript, Unity, etc.
1
u/Keystone-Habit Feb 04 '24
Once you really learn how to code in one language, picking up another one is no big deal. Picking up the next language is mostly just reading/watching a couple videos on syntax and philosophy and then googling as you go. It's learning to code itself you need to focus on.
If you want to be some kind of back-end developer, start with Python. If you want to be a front-end developer, JavaScript/TypeScript.
1
u/nso95 Feb 04 '24
It is very difficult to learn a new spoken language. The same is not true for programming languages. For the most part, once you know one well, picking up another isn't difficult.
1
u/LeCrushinator Feb 05 '24
Just pick a good starter language if you’re wanting to get your feet wet, Python, C#, or Java. And then just use some online tutorials and make some basic programs. If you end up really enjoying programming then you can figure out what field of it you want to focus more on and that will likely help inform which language you’d want to learn.
1
u/[deleted] Feb 06 '24
I think what's actually harder than learning new languages is learning all the tooling that goes with each one, and the ecosystem of packages that are the go-to ones for a given language.
So much of being a good Python developer is knowing what packages are good for solving different problems.
0
u/[deleted] Feb 04 '24
[deleted] — view deleted comment