One of the downsides(!?) of the AI aided coding wave is the huge benefit for entrenched frameworks that the models are pre-trained on making it harder for newer frameworks to gain acceptance.
To tilt the balance slightly, I've added documentation on how to work with Claude when building with Duct UI.
I think such documentation will become essential for all new libraries and helpful even for older libraries trying to direct generated code towards certain standards or guidelines.
AI shouldn't mean end of experimentation and such efforts will make experimentation worthwhile.
There is definitely a lot of value in practice and repetition. I don't think rote memorization / drilling are the only means of getting that practice and repetition. Ironically, with a bit of creativity, we can provide both. Lot of practice, lot of repetition, paired with understanding, play and making things.
There is deliberate practice for skill-building. There is exploratory "making" that fuels originality. There is inspiration hunting and incremental tweaking to get to creative mutation. There is high productivity that triggers eventual ingenuity. I find the article hyperbolic in its thesis and execution especially when it comes to the final hand-wavy bit about how there is more per-capita creativity in non-rote learning.
While its hard to prove or disprove without a long study to prove or disprove the author's claim, I'm willing to die on the following hills:
1. Kumon sheets are the antithesis to creativity
2. Understanding is not a form of memorization (not the rote variety anyway)
1. Immutability: Functions are expressions that return a singular value without mutating state. Most loops are not expressions and have some mutation happening.
2. Composition: If the loops don't mutate there are functional alternatives (map, reduce/fold, filter, etc) which are composable.
3. Abstraction: Loops are traversal instruments. Sophisticated functional languages / environments have some mechanism for generalizing traversal of any data structure into a higher order function or some form of reusable generalization.
That said, I use a lot of loops in library code for performance and expose functional interfaces for consumers.
My son (and our first learner) launched his portfolio (real work, not fake stuff) back in December and he added his new math toy last month. We expect his portfolio (+ his experience, skill and knowledge) to grow over the next couple of years. Here is his Show HN post: https://news.ycombinator.com/item?id=36603838.
Hope they correct it and don't repeat the mistake.
They really don't have to. I really like astro. They got a lot of things right. It is my go to choice for websites these days. I say this as a creator of one of the popular Static Website Generators.
I've been thinking about and tinkering with self-driven learning experiences in both physical and digital spaces for quite some time. They all ultimately hit the roadblock where requesting and receiving timely feedback is not scalable. Well, LLMs have solved the problem to a great extent despite the unreliability.
SocratiQ (very early beta) is one attempt at a solution empowered by LLMs. It is a self-driven, exploratory, social learning experience facilitated by GPT4.
This is my second AI facilitated LX. First one (https://seed.kood.app), takes a different path with a slightly different intent.
I'm super eager to get feedback from life-long learners and parents in the HN community. It is a super early release, so expect a slightly messy experience. Signup is required unfortunately.
I use the ErgoDox EZ, I love it and I've been RSI free with good, productive workflow.
My first non-standard keyboard was the Kinesis Advantage. When I first got it (to mitigate RSI), I went through a similar phase as you.
My solution was to stop everything else, get Mavis Bacon (any typing tutor really) and develop muscle memory. 1 week later, my productivity levels were manageable and I used the keyboard for regular work stuff. I continued Mavis Bacon for 2 more weeks. At the end of the 3rd week, I felt more productive than before. It's been 8 years now and I haven't turned back.
The switching to regular keyboards part might be a real issue if you are, like me, a creature of habit. I avoid it as much as possible.
Absolutely not. It's just a lens that I found recently and thought it was interesting enough to share in this context. Not trying to justify or soften the actions or consequences.
I'd love to know which words are buzzy. The writing is a lot more flowery than usual because, well, it is a product for writers :)
---
Gist:
1. There are 2 products
2. Papyr: An infinite editor and writing tool
3. StorySeed: An inquiry based learning course that helps you understand story composition by asking you to think about the stories that you know and love.
4. At the end of the chapter, the products come together. You begin writing based on the composition you choose and the prompts provided.
^ Hope this one is clear.
Thanks for the feedback. I'll see what I can do to clarify the message.
Yes, using just the FE part is still joyful (Svelte, React etc). It's the move towards full-stack (Next, SvelteKit etc) that I'm slightly complaining about. My complaint is also limited to how complex the build process is in combination with other aspects of the fast moving TS/JS ecosystem.
Does anyone else feel that the complexity of the full-stack frameworks is getting untenable?
1. There is a significant gap between dev and production environments. (See #2 why this is critical)
2. The production build times are super high
3. ES modules are great, but the JS ecosystem being a bundle of small libraries, getting them all to play nice is hard.
4. I occasionally get X is included twice errors that are painful to track and debug
5. There are frequent instances where I find out that the very problem I had has been solved by someone, but they don't know how or why. They remove a, b, c then it works. They add it back, it still continues to work.
Yeah, its a good way to circumvent tracking / fingerprinting mechanisms. Anonymization primitive.
But the primary usecase for me is to access a rarely used account temporarily without having to logout and login from the main account (AWS, Cloudflare, Google, etc).
To tilt the balance slightly, I've added documentation on how to work with Claude when building with Duct UI.
I think such documentation will become essential for all new libraries and helpful even for older libraries trying to direct generated code towards certain standards or guidelines.
AI shouldn't mean end of experimentation and such efforts will make experimentation worthwhile.