Maybe check events at your local library? Maybe Meetup.com or Facebook events? Maybe you could audit a programming course at a local college? Just a few thoughts, others will probably have better suggestions. I'm not much of a programmer.
No Stupid Questions
No such thing. Ask away!
!nostupidquestions is a community dedicated to being helpful and answering each others' questions on various topics.
The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:
Rules (interactive)
Rule 1- All posts must be legitimate questions. All post titles must include a question.
All posts must be legitimate questions, and all post titles must include a question. Questions that are joke or trolling questions, memes, song lyrics as title, etc. are not allowed here. See Rule 6 for all exceptions.
Rule 2- Your question subject cannot be illegal or NSFW material.
Your question subject cannot be illegal or NSFW material. You will be warned first, banned second.
Rule 3- Do not seek mental, medical and professional help here.
Do not seek mental, medical and professional help here. Breaking this rule will not get you or your post removed, but it will put you at risk, and possibly in danger.
Rule 4- No self promotion or upvote-farming of any kind.
That's it.
Rule 5- No baiting or sealioning or promoting an agenda.
Questions which, instead of being of an innocuous nature, are specifically intended (based on reports and in the opinion of our crack moderation team) to bait users into ideological wars on charged political topics will be removed and the authors warned - or banned - depending on severity.
Rule 6- Regarding META posts and joke questions.
Provided it is about the community itself, you may post non-question posts using the [META] tag on your post title.
On fridays, you are allowed to post meme and troll questions, on the condition that it's in text format only, and conforms with our other rules. These posts MUST include the [NSQ Friday] tag in their title.
If you post a serious question on friday and are looking only for legitimate answers, then please include the [Serious] tag on your post. Irrelevant replies will then be removed by moderators.
Rule 7- You can't intentionally annoy, mock, or harass other members.
If you intentionally annoy, mock, harass, or discriminate against any individual member, you will be removed.
Likewise, if you are a member, sympathiser or a resemblant of a movement that is known to largely hate, mock, discriminate against, and/or want to take lives of a group of people, and you were provably vocal about your hate, then you will be banned on sight.
Rule 8- All comments should try to stay relevant to their parent content.
Rule 9- Reposts from other platforms are not allowed.
Let everyone have their own content.
Rule 10- Majority of bots aren't allowed to participate here. This includes using AI responses and summaries.
Credits
Our breathtaking icon was bestowed upon us by @Cevilia!
The greatest banner of all time: by @TheOneWithTheHair!
Do you have maker spaces or lugs or universities in your area? Thats where I would look.
This is where school can come in handy. You don't become a good programmer from learning school books. You become a good programmer by doing and being intrinsicly curious. What school can help with is networking. It brings you in contact with peers. You can work together with classmates, discuss code an nerd out with them. Community makes you a better programmer. Community is just as impirtant as code.
If you're looking to network within software development communities, a user group is a good starting point. For example, I am a .NET software engineer, and the Portland Area .NET User Group was instrumental in building out my PacNW professional network. Plus their meetups are generally a fun time.
Look for API meetups in your area, it doesn't matter what kind of APIs. Even if you have no interest in API development, API meetups are usually run by Developer Relations (DevRel) engineers. It is the job of DevRels to help software engineers become better and to connect people to resources. Source: used to be a DevRel.
And even if you live in a small or low-density region, there is probably some kind of computer users, web development, and IT group. Again, even if you're not exactly interested in those aspects, these people tend to know senior or principal software engineers who can either connect you to resources or directly take you on for mentoring.
All that said, I frequently say "we are not meant to engineer alone," however self-motivation is a prerequisite to programming and software engineering. Go to the library and immerse yourself in some books on software development; off the top of my head: "Modern C++ Programming with Test-Driven Development," Refactoring, Design Patterns, "The Pragmatic Programmer," "Code Complete," "The Missing Readme," "Object Oriented Analysis and Design with Applications." A lot of these are going to go over your head at first, but just take a look at them.
Some people will take issue that I suggest learning C++ first, but I've been at this a while (34 years). I liken it to learning to drive a manual transmission car with no synchromesh. The difference between a software engineer who understands memory pointers and one who learned only managed languages is always immediately apparent.
Good luck out there.
how you go about learning C++ probably has an effect too, as if you're just running a program that initially uses 2kb of ram on a system that has 64GB or similar, you probably won't notice if it has memory leaks unless you're checking for that 😅
Using C++ and having to handle your memory yourself does not mean you understand how to handle your memory yourself. I had a lot of colleagues who thought it would mean exactly that. I had to tidy up behind them, and I wished they'd use C# or Java instead.
Fully agreed. We've all had those colleagues, and their lack of deep understanding of memory management propagates up the stack. </bad pun> Can a developer know only managed frameworks and still be good at their job? Absolutely, but in my experience they are the rarity. I think it is tricky to truly understand, say, garbage collection, reference/dereference, etc without understanding direct memory management.
Extending the driver aid metaphor, features such as ABS, traction control, and lane assist allow good drivers to use their finite attention on quality, rapid decisions. But those good drivers know how to handle the edge cases where the machine fails or is unable to handle the current situation. Managed frameworks are a bucket of super sweet driver aids. There are good reasons why .NET added pointers, because sometimes we need to disable the traction control. Weird COM Interops leap to mind. Sometimes you just need to grab control of that array and be able to do so in memory-safe ways.
And to throw myself under this bus, could I whiteboard a doubly-linked list in C++ with needed methods? Gawd, no, not in the time allotted to a tech interview. But I could spot the bugs in one in seconds.
It depends on what aspect of programming you want to network over.
If you want too discuss the intricacies of different algorithms and nerd out over O notation timings and such then you'll want to inhabit very different spaces then if you want to write videogames which is a different space from if you want to make home automation gadgets and small webpages.
Sure they're all "programming" but you'll generally find the people doing them in different spots.
Overall though, broad ways:
- Hackaday.com has a decent community and events
- Hackerspaces will sometimes have networking events
- local college classes
- events at local college
- mentor first robotics team (they often need programming mentors too)
- Make stuff and blog about it
I'll say though, networking with other programmers isn't how you get good at programming in my experience (currently as a Senior Software Engineer developing programs for language learning). In my experience being curious and trying to make stuff is how you get good. That billionaire quote only really truly applies to money.
Team-based hackathons are always fun. In-person is better, but remote is good too. Lots of intense collaboration.
Multi-day conferences or events with discussion panels, socials, or Q&As are all places to hang with, drink/eat with, and interact with people from all around an area who all share a common interest.
Find the Slacks / Discords for the groups you’re interested in. Crash out of those weirdos and find new ones. This one is tough, but not impossible.
This one is weird, but you could start a tutoring group. There are probably other students and studiers, and reinforcement learning and pair learning might be really beneficial, allow you to provide a service, and meet new people.
Just a few that came to mind quickly
Had a similar issue in college where I wasn't social enough to form connections in class. I found clubs and work were where I formed my friendships. Places where I was put in a group for extended periods of time. Also, learning that if you're the one who wants to form the friendship you will most likely need to be the one who initiates conversation and activities for some time
If you're interested in programming see if there are local beginner hack-a-thons where you can be in a group to complete a project with people that have a similar level of experience.