Across this vast Fediverse, I have encountered a trend of people answering questions with esoteric programming language speaking in tongues that I don’t understand, including under my own posts. I am a Boomer when it comes to coding and I am only 27. I don’t even know where I would start to learn it because programming is so diverse. I want to feel like I know what’s going on but I don’t. Coding is the future and the future is now and I am lagging severely behind. I guess I’m asking where a bumbling novice like me can learn more about where to start when it comes to programming.
What are these answers…
Wrong place to ask, but whatever.
It depends on what you want to build. If you’re not sure, start with Python. It’s likely easiest to pick up and get running. There’s a book called “Automate the Boring Stuff.” I think there’s an online version.
If you don’t want to set up Python (or any language, really) on your computer, there’s a tool called a REPL that you can find online. So you can just search “Python online REPL,” and you’ll get a functional online environment to code. Now, you won’t be able to do stuff interacting with your local computer this way, like reading files, but it’s good for learning the basics of the language.
In terms of software for writing code in on your local computer, Visual Studio Code (NOT to be confused with Visual Studio) is a free, lightweight code editor. It supports every language via plugins.
If you do go the Python route, make sure to learn about virtual environments before you do ‘pip’ or ‘conda’ anything. Also, unless you’re doing data science things, stick to pip. (Maybe some personal bias there, but I hate anaconda.) If you’re starting from nothing, it’ll be awhile until you get there anyway, so don’t worry too much about it.
Most importantly, find a community that welcomes new learners. Learning to code is absolutely fucking brutal, so having supportive people available makes a world of difference. Bonus points if you can find an offline meetup in your local area.
CIA_chatbot@lemmy.world 1 year ago
I got you fam
www.codecademy.com/catalog/language/c-sharp?g_net…
Free course, C# is a genuine pleasure to work in/learn. Runs in all OS environments, and is probably the most modern “general” language
Only way to learn is to start learning
Holodeck_Moriarty@lemm.ee 1 year ago
Don’t mind me, just saving this comment too.
Molecular0079@lemmy.world 1 year ago
Lemmy allows you to save a comment without commenting btw. Just click on the three dot menu and then click the star.
favrion@lemmy.world 1 year ago
Okay, C# is a music note which links with my fondness of music theory. Kewl.
voidf1sh@lemm.ee 1 year ago
Is C# really that nice to work in? I’m looking to expand my horizons past JS now that I feel fairly comfortable with one language.
CIA_chatbot@lemmy.world 1 year ago
It’s a genuinely nice language with tona of syntactic sugar. It’s fast, flexible and runs everywhere. Honestly my favorite language.
Other nice things about it is you can write object oriented code as well as functional style with it, so it even handles the style of code you prefer which is a lot harder to do with other languages. Finally it’s open source but also has deep pockets behind it so the language is constantly being pushed forward.
ale@lemmy.world 1 year ago
Yes, it’s nice and worth learning, especially if you try at both highly abstracted code and performance sensitive projects. Don’t get stuck thinking in c# though. Its brand of strict oop seems to be getting less popular these days.
TitanLaGrange@lemmy.world 1 year ago
C# is my primary language, so I’d certainly recommend it. It can be a little daunting to get into because it is a large ecosystem of tools, so you might want to watch some videos and keep things simple for a while.
For work I mostly use it for APIs for web sites, that might be a good place to start if you’re familiar with JS/TS front-end work. From there you might want to try Razor or Blazor for handling web UI work in C#. I’m not very experienced with that aspect of it, but it’s mostly been a positive experience (TBH I kind of prefer React, but I’d need to spend more time on the Razor/Blazor side to have a strong opinion).
The desktop development side in C# is kind of a mess at the moment. Maybe stick with web until you’re feeling pretty comfortable with the language.
loutr@sh.itjust.works 1 year ago
I’d go with Kotlin. It’s a really nice language, easy to learn if you already know JS (or even better, TS), and with KMM and Compose Multiplatform you can write apps which run natively on smartphones, browsers and PC/Mac.
Mr_Buscemi@lemmy.blahaj.zone 1 year ago
I absolutely loved learning C# a few years ago. I haven’t touched programming since my last C# class and I’m probably going to relearn it later this week.
Xylight@lemmy.xylight.dev 1 year ago
Smh, you’re not even dumping them into Linux from scratch to learn C++ yet!
CIA_chatbot@lemmy.world 1 year ago
Hehe baby steps!
Pyroglyph@lemmy.world 1 year ago
The first language I learned is C# and it sparked that interest that got me the job I’m in now!
I see other people recommending Python for beginners because of the simpler syntax (the way you write the code) but I’d still recommend C# because although the learning curve is a little steeper you’ll find it MUCH easier to learn pretty much any other language you choose. And even if you don’t choose to learn another language, you’ll still know a good (and fast) general-purpose language!
CIA_chatbot@lemmy.world 1 year ago
This. I love me some python, but it’s so unstructured (and by that I mean more how the structure is based off spacing), I actually think it makes it harder to learn vs. easier.
“Bracket” languages let the learner get a feel for when a piece of logic ends, which I think is important to learn at first. Also, C type languages, ESPECIALLY C#) are everywhere, depending on the field you end up specializing in you probably have a 90+% chance of needing to know one of these languages.
Seriously, there is nothing wrong with python, but I think the easiness of it actually works against learning to code (imho)