Ask Lemmy
A Fediverse community for open-ended, thought provoking questions
Rules: (interactive)
1) Be nice and; have fun
Doxxing, trolling, sealioning, racism, and toxicity are not welcomed in AskLemmy. Remember what your mother said: if you can't say something nice, don't say anything at all. In addition, the site-wide Lemmy.world terms of service also apply here. Please familiarize yourself with them
2) All posts must end with a '?'
This is sort of like Jeopardy. Please phrase all post titles in the form of a proper question ending with ?
3) No spam
Please do not flood the community with nonsense. Actual suspected spammers will be banned on site. No astroturfing.
4) NSFW is okay, within reason
Just remember to tag posts with either a content warning or a [NSFW] tag. Overtly sexual posts are not allowed, please direct them to either !asklemmyafterdark@lemmy.world or !asklemmynsfw@lemmynsfw.com.
NSFW comments should be restricted to posts tagged [NSFW].
5) This is not a support community.
It is not a place for 'how do I?', type questions.
If you have any questions regarding the site itself or would like to report a community, please direct them to Lemmy.world Support or email info@lemmy.world. For other questions check our partnered communities list, or use the search function.
6) No US Politics.
Please don't post about current US Politics. If you need to do this, try !politicaldiscussion@lemmy.world or !askusa@discuss.online
Reminder: The terms of service apply here too.
Partnered Communities:
Logo design credit goes to: tubbadu
view the rest of the comments
Look into “recreational programming.” Make shit for the joy of making shit. Creation in it of itself is something to be sought after imho. Did’t finish that website? Who cares?! Don’t have any useful ideas? Make something useless!! Don’t worry about “users” or making the next big thing in tech. If you’re having fun click-clacking on your keyboard and solving problems, that’s all that matters
So to answer your question, I’ve dabbled in a little bit of everything: web, db, graphics, interpreters, osdev, the works. The very few projects I’ve ever “finished,” however, are my lower-level ones; I just love getting right up close to the metal. Find a niche that interests you, start a million projects in it, and be proud of the one you finish years after you probably should’ve
Right now, I’m working on a custom programming language/game engine built with Vulkan and LLVM. It’s got first-class support for a bunch of cool game and graphics stuff, and I’m super passionate about it right now. I’ll probably lose steam and only come back to it months after, but I don’t mind
Edit: Also, don’t be afraid to use libraries to focus on what you want to focus on. I used to have an obsession with writing absolutely everything myself from the ground up, but I’ve since come to the realization that other people are MUCH smarter and more talented than I am, and I should trust them to write software for me. A great example of this is LLVM and my graphics language — depending on someone else to do the super complex compiler design lets me focus on what I wanna make: a language front-end and graphics library. It’s important to limit your scope to only what you care about