This is an issue that's very real for me right now because I'm in the middle of teaching my own kids programming, and we've been working on it for years at this point. I'm watching AI seemingly invalidate the premise behind learning all of it. It's been a pretty depressing change to be honest, because I love programming and watching this happen is hard.
So, I've changed my approach with my own teaching. I'm having them do three things that I'm hoping will prepare them to work in the world they're going to be entering soon:
1. Always have a handmade project going, and work on it without AI assistance even if it's painfully slow.
2. When working with AI, treat it as a compiler that operates on data structures, algorithms, and architectural requirements rather than source code. You have to understand the theoretical pieces of what you're building before you instruct it to assemble them.
3. Use the AI as a powerful tool to grow your own knowledge of algorithms and troubleshooting. Whenever a problem crops up, it's an opportunity to come up with a few hypotheses of what the actual issue is. Don't let the model do it first. I have them actually write these down in our custom kanban tool as issue cards, and then they use the model to investigate how close they came to the true issue.
I'm hoping this will give them something similar to my experience of debugging over a lifetime of coding. The knowledge that seems to be most valuable that I bring to the table when coding with AI is in recognizing quality/maintainable code architectures, and "seen that before" debugging experience.
We just started this so I don't have much in the way of results yet, and it feels risky to even allow it into the curriculum. I don't think that it makes sense to hide from it though, so this is our best shot.
I came back from retirement for a couple reasons, one as a hedge against the stock market due to AI. Two, the camaraderie built by working with other people. Three, the opportunity to mentor young people.
AI has made the whole situation suck. Stock market is stressful due to energy and AI. AI has left people working alone managing agents. Any advice regarding development best practices I give to young people might have made sense 3 years ago, but hardly matters now. I look around at all these young people and wonder if they are going to be okay. It has only served to make me feel depressed and put a name and face to any future displacement.
Yeah, it's really hard to keep pushing honestly. I have no idea where this is going to end up, but I think there will still be space for higher-quality, more interoperable tools for quite a while. I'm also coaching them to treat software as a thing they can use to boost their real careers, not as a thing that will be a career.
The real problem is that the environment for healthy learning is gone. At least when I was a kid, there's something magical about having an environment where nobody knows what the hell is going on and the learning is, to use your words "painfully slow". I guess we've been trained to think that way with all this modern technology, but back in the day, it didn't matter whether the final result was accomplished or not. All that mattered was the fun of trying to get something to work.
Nowadays AI shifts the emphasis to the final product, and frankly that's boring. Kids will use it because it's there, because it gives that initial result really quickly and we're hardwired for that. But it removes that cool environment of having a blank slate and just seeing things happen all on your own accord.
Companies might like AI for the short-term gains but we're doing the entire planet a disservice by having even invented AI, in my opinion. We're all being trained to be producers.
Can a person like you create a little microcosm of learning that can work? Maybe, but I get the feeling that programmers these days are being blinded by the fun of AI and forgetting that there's actually more to life satisfaction than having fun.
Education isn't based on the premise that they'll never disobey. It's to help them recognize when things become dangerous or are getting to be a problem. Of course kids will do things they're told not to do - this is just helping them tap the brakes and understand how to recover. The attitude that the only solution is perfect enforcement is (in my opinion at least) partially to blame for the lack of self-awareness that makes the more vulnerable to later addiction problems in the first place.
This comment really hit me - I have a few things I've worked on but never released, and I didn't even realize it was basically because I don't want to deal with all of that extra stuff. Maybe I'll release them with this philosophy.
Yeah, the idea of getting to a viable income source for plugin writers is what I'm hoping for. I didn't know about the issue with Apple App store, that complicates things quite a bit.
Congratulations on your success with relay.md! It looks like a great tool.
I just wanted to drop in and thank you for posting this. I'd never heard of it, and seeing a plain page of actual web results was almost a visceral relief from irritation I wasn't even aware of.
This is how it was for me too, but I actually think the world has moved out from under us. The environment today is way more complex, and it's a lot harder to be proud of little things when you see people crowing about how they "wrote this little app over the weekend" and it's already polished and full of features. I remember being proud of my little unit converter that ran on the command line, and even more proud when I got an actual window to show up on a screen (GUI programming took a long time to get into). These days, those things just aren't special enough to keep them engaged. I don't know if it's just too commonplace now, or too complicated to get started, but it doesn't feel the same as it once did.
My kids have finally gotten hooked by godot, after a few years of building up a foundation with simple programming assignments. It's fun to see them digging in for hours to make something, but man, it was a long road to get here.
I think that any new tool just changes what's possible. At the start, we're all just rehashing the things we used to make, but faster (and possibly lower quality). This is the part that's scary for current practitioners, because the tools now do something basically for free that used to require a lot of human skill and it devalues our current skill set.
However, at some point there are people who really master the new tool and open up an entirely new range of possibilities because of what it can do. The value of craftsmanship just changes as the tools develop, it doesn't end. I don't know what new things will become possible with AI, but I'm confident that there are people with vision out there who will raise the bar on what can be created now that it's a thing.
Apparently it's done to dry out tough perennial weeds so that harvest can run more smoothly, and also for crop desiccation (getting the harvest to dry uniformly by killing all of the plants simultaneously).
I've been making a game system in which the core mechanic is using a limited language to describe magical effects, so it's a long way away from the intended purpose for both Toki Pona and Mini. However, I've found that Mini is far easier to work with and more expressive for my purposes because it's easier to put structure into the statements using the particles to indicate what part of speech is intended for each word. The selection of words also seems to be surprisingly well-chosen, because most of my use cases have been pretty straightforward to express.
I haven't really tried to limit the system to just Mini Kore (which is also 120 words, like Toki Pona, and would be a more direct comparison), mostly because Mini's current size actually seems to have the right feel. It might be an interesting experiment though.
I've struggled with very similar issues for about 25 years. I finally started to break through it just recently, and I give credit to two basic things: Listening to the Huberman Lab podcast (which echoes a lot of good advice in this comment section, and focuses on physiology), and using the system from "Building a Second Brain" to get myself organized. I've always had a problem with having too many ideas and not enough time and energy to pursue them all. Having to choose between them leads fear of missing out on the others, and I never actually managed to finish (or even start, usually) any of them as a result.
The thing that the second brain stuff has done for me is to provide a place to keep those ideas in suspended animation so that I can revisit and touch them up over a longer time period. I can see them all laid out, with clear "do this next" breadcrumbs for myself. Nothing is getting lost, and I'm not missing out on anything. Since setting this up, I've made a ton of progress on a wide variety of things because it's easy to get started again, and I don't get sidetracked by other ideas. I just capture them, make a note to develop them further at a later time, and then get back to work.
Same as l3x4ur1n, I use Obsidian. Plain markdown, a simple directory system, and multi-device sync were the deciding factors for me. There are many other good tools out there though.
So, I've changed my approach with my own teaching. I'm having them do three things that I'm hoping will prepare them to work in the world they're going to be entering soon:
1. Always have a handmade project going, and work on it without AI assistance even if it's painfully slow.
2. When working with AI, treat it as a compiler that operates on data structures, algorithms, and architectural requirements rather than source code. You have to understand the theoretical pieces of what you're building before you instruct it to assemble them.
3. Use the AI as a powerful tool to grow your own knowledge of algorithms and troubleshooting. Whenever a problem crops up, it's an opportunity to come up with a few hypotheses of what the actual issue is. Don't let the model do it first. I have them actually write these down in our custom kanban tool as issue cards, and then they use the model to investigate how close they came to the true issue.
I'm hoping this will give them something similar to my experience of debugging over a lifetime of coding. The knowledge that seems to be most valuable that I bring to the table when coding with AI is in recognizing quality/maintainable code architectures, and "seen that before" debugging experience.
We just started this so I don't have much in the way of results yet, and it feels risky to even allow it into the curriculum. I don't think that it makes sense to hide from it though, so this is our best shot.
reply