Загрузка видео...
Не удалось загрузить видео
wrote a few thoughts about what we lose now that we don't write the code ourselves, and do we get our flow back
47,977 просмотров • 3 месяцев назад •via X (Twitter)
Комментарии: 43

come on by

Aaaaahhh I love this. The bee swarm example is simple but good. How did you make the blue sketch style? Works really well - I assume generated with tight prompts?

agree! every time I revisit Midjourney, I feel like they've gotten better at consistency. I used a single generated image as an "omni reference", and it did a pretty good job. I also did some post-processing in Figma to normalize/cut things out and get the right tone

Nice - I need to try this again. I gave up after attempting too early (~2023) and getting shit results. But Midjourney is a totally different beast now. Really want it to recreate my specific illustration style but then I get too persnickety about it being exactly "right"

ooh yeah, like seeing a picture of yourself. that's a high bar! and your illustrations are so lovely and uniquely Maggie

should be banned for how good this is

I promise to follow it up with many bad posts to even it out

Really interesting article. I'm wondering if this is just a problem that only we feel right now - as developers who know what the "old" way of coding feels like. The next generation of software developers never even experienced creating a mental model of your application - so I'm wondering if they still feel some sort of disconnect from the codebase at some point or if this just becomes "normal"

totally agree that we're partially held back by our familiarity with our old ways! and I think there are new workflows that currently work, and it'll be really amazing once we can develop ergonomic ways of working in them. even when I'm not writing or reading the code, I need handholds and affordances to feel in control of the thing I'm making. Text is great but often feels like wearing oven mits.

oh my god please build a blogging tool

how did you know I started one last night??

!!! I’ve wanted an aesthetic mixed media journaling/documentation/blogging tool for soooo long. it is a superior way to present information & I have yet to see a good tool for it. lmk if I can help in any way!!

same! any specific flows you want to work well?

I like your take (also, neat presentation!) Each era has enabled us to do more with less and push the boundaries of what's possible further. We haven't simply continued to build in the same way as before but quicker. Now we need to push again, and invent the tools to do so.

100%!

Enjoyed this! A tangential thought... In the old way, the act of building something (or a piece of something) was taxing enough that getting it live, working, and working well provided enough joy & relief to the creator that we were satisfied with the effort and moved on. I'm finding that harder to do now. I'm trying thing after thing, never fully satisfied because it's easy enough to rip pieces apart and just redo them in a hunch. Technical debt aside, part of the old loop I'm missing is the feeling of satisfaction of what I just made, brought about by the sheer energy and time required to brew that satisfaction. Before this form of coding, even when things did get easier, it wasn't to a large enough degree that it overtook the satisfaction component. The emotional state of building (for me at least) needs to be rediscovered, rethought, relearned as well.

totally feel this! what I keep thinking is that we need to set our sights higher. what can we build now, with these tools at our disposal? like, our capabilities changed but our expectations haven't yet

Yes! Very roughly something like late '90s print designers trying to design for the web. We're still mostly in the "transporting print to the web" phase of AI perhaps :). The outputs are faster/cheaper/often worse, but not fundamentally different yet. Your work on the tooling part is so key - it probably has to start there for the dominos to fall.

totally! and to get the right tooling, we need to figure out what we even want in the first place. which is harder than it might seem, when we're so used to our existing ways

Thanks for the write up! I am thinking the same way - discovery and learning that happens while building is the crucial part that doesn't happen if you give it all to AI. So either AI does everything from start to end, or human needs to be part of the creative loop, figuring out what we are building.

so good! and i totally see how this works incredibly well for ui + visually oriented surfaces. curious how you think this'd translate to backend code which tends to be less scannable and parametric? maybe closer to specs-as-code like your work on @augmentcode ?

yes! imo there have to be ways of thinking about the aspects of code that aren't inherently visual - natural language works well for abstract concepts. summaries, thinking about thinks from different perspectives, short summaries - architecture diagrams, state machines, etc. codebases I'm familiar with have a shape in my head, it's one of my personal holy grails to figure out how to automate/extract something that feels good - esp interesting are things that are dynamic and simulate states/behavior over time. previously unthinkable to use as a working surface, how has the equation changed?

@augmentcode > it's one of my personal holy grails to figure out how to automate/extract something that feels good this really seems key for intuiting the shape of a codebase. i guess at a certain point programmers graduate to more becoming concept composers than anything else

Love the perspective and presentation!! I’d love to see where you are going with the blogging tool omg..🤩

This is inspiring. It’s refreshing to look forward at what new bicycles for the mind we need to build for the new abstraction level

This is beautiful

wow. creative and well executed 🤘🏻

Beautiful piece <3

Really good essay, and even better presentation to illustrate your points! Kudos! I was totally engaged from beginning to end. I think you're spot on with the biggest problem I have with these tools. They remove a critical feedback loop that I rely on. Typing out the code is crucial for me to think and understand the problems I'm solving. Even using LLMs, I still need to type it out to see how it's working and make sure I understand it. > We're not going back to this [pre-LLM] way of working. Honestly, I don't think we should. But I do believe that we'll regain our flow state once we figure out our new workflow and build tooling to supercharge it. I think this is where my thinking departs from yours. Maybe we will come up with new workflows around LLMs, but I also can't help but feel that LLMs are the wrong tool to build a workflow around. I see a lot of people saying LLMs are just the "next level of abstraction", but I'm hesitant to even call LLMs the next "abstraction". It's just a tool, and while it's helpful, it doesn't seem like it's a reliable, predictable, or stable tool to build computing around. You had some really cool designs and illustrations in your essay of how we could get that flow back and get into a zone, but a lot of it reminds me of Visual Basic which is what I started with. You built UIs just dragging and dropping components onto a canvas and you had sliders to tweak all the properties of it. So why didn't that take off as the de-facto way to build applications? I think there are lots of reasons for this that can't be summed up in one post here, but I don't see how using an LLM to create a Visual Basic like wrapper in my IDE would be a step forward. I feel like we had that in the past. Just because this is a new way develop software doesn't mean it's a good way to develop software. Obviously everyone's still experimenting, and I hope someone comes up with a way that works for me. But, again, it just feels like it's another step in the wrong direction. Using an LLM to just pump out code that we hope is correct just feels fundamentally wrong to me. Even when LLMs get better, this just feels like monkeys pounding away on a typewriter until we get good software. We need better abstractions and methods to instruct a computer rather than using something as flimsy as human language which is notoriously imprecise. Anyways, great essay. You got me thinking. :)

I think we're actually saying the same thing, if I'm reading you correctly! I think syntax and natural language and spatial UIs are all different ways of writing and thinking about building with code, the cool thing is now we can switch between different tools for different parts of the job.

True, they are all different ways to approach software. Some of these tools have been around for a while (e.g. drag + drop UI interfaces), and I think we're still iterating and trying to find what works. Looking forward to reading more of your articles.

Wau😍, what a beautiful scrollytelling!! Feel the similar transformation, when unnecessary falls, and essential remains. Thinking, that the pyramid is growing wider towards the top (like flower🪻or tree 🌳)🤲

interesting piece of writing.

loving this essay

🙌 would love any thoughts

I'm loving the blue ink-style drawings in the middle section

this is great, and gave me Observable/bl.ocks feelings.

the highest compliment!

Thanks for the inspiring post, @Wattenberger . It made me think about how the nature of programming is changing once again, and I explored those thoughts in a new article on my blog:

“Wrote” Bruh

actually seriously with my own fingers

Please don’t take it the wrong way, I meant that it’s impressive Digging the drawings l

ah gotcha! ty ❤️
