I want to understand more about what's actually happening. What are the big concepts that, once you get them, make everything click in a more interesting way? The stuff that made you go "oh, THAT'S what's going on."
I want to understand more about what's actually happening. What are the big concepts that, once you get them, make everything click in a more interesting way? The stuff that made you go "oh, THAT'S what's going on."
Teachyourselfcs.com is good too
as always: imho (!)
recognize that software-engineering is not about writing / vibing code but to solve (!) problems.
nobody cares if the code which solves a problem is generated / copied / written ... as long as it was legally obtained ... ;))
anyway: code is liability, every line of code which was not written to solve a problem keeps future maintenance-costs low(er) ...
additionally especially for non-trivial problem-solutions - read: projects -, its essential to have maintainable code. which means, code that is ...
* easy to understand ~ new developers
* easy to extend ~ new features
* easy to sustain ~ update dependencies, update the underlying runtime-environment etc.
especially if it solves a complex problem for a company, the code may be used for years or even decades =?> keep that in mind!
just my 0.02€
There's different books or approaches to learn more depending on your needs.
It's usually useful to tailor things to whatever you already produce for others or consume for yourself because then you get the most of your feedback loop.
Can you share more about what you've tried so far, with what tools, or what feels the most fun or useful ?
Depending on your answers one might recommend things like
- https://automatetheboringstuff.com/
- land of lisp (comics and games with functional programming to intentionally separate you from vibe coding traditional tools)
- web related dev with different viz or presentation tools
useful concepts regardless will be, in my mind, unit testing and how to approach problems and breaking them down but it all depends on where you want to go.
About your question, it is hard to give one. I don’t think there is one big thing that makes everything click, and if there is one, it is probably different for different people. But I can give some advices.
1. You can ask the AI itself to explain how the code works. In my experience they are usually fine at that. You can probably tailor the explanation to your technical level, so that’s neat.
2. Stick to one language. I don’t know which language your AI is using for your tools (probably Python if they run on your machine or JavaScript if they work on a browser). Learning what you are using is the first step.
3. Once you know that, you can use the AI and some online guides to learn the very basics of the language. Maybe ask the AI for very simple toy tools (e.g., a web page where you write a phrase, click a button, and it will show that phrase with the words in reverse order) and try to understand what the code does. You may still ask the AI about the lines you don’t understand.
4. It is a potentially long journey. Go as far as you like. After these first steps, you will likely have more specific questions. That’s good. :)
And don't you dare to ever open a pull request with AI generated code in any free and open source project.
I made a /teach-me slash-command. Everytime I run into something I want to know about I run it. It launches a background subagent (forking context) that check (and updates) my ‘learning-profile.md’. I can pass additional requests, but otherwise it just deduces from context.
It then creates an explainer/lesson. And sends it to my kindle (using a custom created mcp) - so I can read it offline. Not breaking my flow.
I’ve never learned so much so quickly, about everything. It’s awesome.
I use the same mcp from phone apps. Everytime I want to learn something I just ask.
Also: learn about the GIT concepts (not commands). You’ll learn much quicker when you can mess up and retry ;)
That comes from years of 70 hour weeks of hand coding!
Bottom up and top down.
Bottom up would roughly be 1. Picking a simple introduction to programming textbook ideally Python 2. Work through a building a transformer LLM in python 3. Move to training it on a corpus
You're not mastering each step. Reading the python book and doing some exercises is fine.
The top down: This 3Blue1Brown playlist will have you covered https://youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_...
Either way you want to meet in the middle. There is still a lot in the middle that isn't clear so don't try and work from the middle out!
blast•5h ago