I’m brand new to coding / software dev. My only experience is a few no-code platforms that might have helped me understand a bit of programmatic thinking. There are so many languages & beyond that, so many tools for devs. How would you recommend me learning in a way that takes advantage of the latest & greatest?
I wish to align my learning experience with where the dev space is heading, not where it’s at… so that I may future-proof myself a bit & also optimize the experience, so that I can utilize the most efficient solutions. (Case in point, I just heard about something called “Bun” that looks helpful.)
My goal is to be able to fluently understand & implement code as necessary in my creative pursuits. I’ve had the urge to: - Verify my own smart contracts - Create my own APIs - Make my site a Progressive Web App - Implement web3 Protocols (like XMTP & more) - Enhance the functionality of no-code tools I use
- stop thinking about "the latest & greatest" - start making whatever you want to do. hit a hurdle. mount the mountain.
I would start with freecodeacademy.org , honestly one of the best ressources out there. Also a good framing method is to choose whether you want to explore front-end vs backend (even full-stack if you want full depth). Then find a project you find interesting and reverse engineer it.
One of the great things you'll discover when you pick up a "language" per se, is that the speed the ideas change (the deep concepts) is much slower, so the investment in slowing down and locking those ideas in pays back much better. Languages ideas change over a 20-ish (or more) cycle. No-code stuff is frenetic change
To clarify on “Latest & Greatest” — By ‘Latest’ I don’t necessarily mean “new stuff”, but the most recent revelations you’ve had that have improved your understanding of what works & what doesn’t; things you might have benefitted from realizing going into it, but only now see.
I'm curious to see what people say here. I have opinions (with caveats) so I'll hold back a bit One thing to consider is to be careful. The "first language" you learn will bake ideas so deeply into your way of thinking it will effect all future langs you may pick up. So you want to start with quality/powerful ideas
By ‘Greatest’ I mean *latest proven knowledge* that works; or the best innovations that are built as refinements of fundamentals (some fundamentals can deprecate). Bun seemed to be an innovation of refinement, not necessarily one trying to forego fundamentals. & JS has updates.
Most of all, beyond just the “learn JS” advice which is warranted, I’m seeking you all’s unique insights as experienced devs. The ones that you might reveal to your younger self if you started over. The books you’d read, or even avoid The dev tools w/ the best UX/UI & helpers
It doesn't really matter which programming language you start with, once you learn the programming concepts/fundamentals in one it's easy to learn others. My recommendation is to start with Python, because it's really friendly to beginners. And then you switch to Solidity. After these two: JS.
Recommend pair programming with someone who engineers _systems_ or approaches solving problems without choosing a programming language.
I think you’d like the Odin project. Free, project-based learning - and collates material from a bunch of different sources.
New dev here also. Somebody mentioned "making whatever you want to make", I think this is the best way to do it. Would heavily use ChatGPT (4 if you have it). Literally just ask every single question you don't know the answer to. Optimize for quick wins + tangible progress and shipping stuff as frequently as possible