I started a local vibecoders group because I think it has the potential to help my community.
(What is vibecoding? It’s a new word, coined last month. See https://en.wikipedia.org/wiki/Vibe_coding)
Why might it be part of a solarpunk future? I often see and am inspired by solarpunk art that depicts relationships and family happiness set inside a beautiful blend of natural and technological wonder. A mom working on her hydroponic garden as the kids play. Friends chatting as they look at a green cityscape.
All of these visions have what I would call a 3-way harmony–harmony between humankind and itself, between humankind and nature, and between nature and technology.
But how is this harmony achieved? Do the “non-techies” live inside a hellscape of technology that other people have created? No! At least, I sure don’t believe in that vision. We need to be in control of our technology, able to craft it, change it, adjust it to our circumstances. Like gardening, but with technology.
I think vibecoding is a whisper of a beginning in this direction.
Right now, the capital requirements to build software are extremely high–imagine what Meta paid to have Instagram developed, for instance. It’s probably in the tens of millions or hundreds of millions of dollars. It’s likely that only corporations can afford to build this type of software–local communities are priced out.
But imagine if everyone could (vibe)code, at least to some degree. What if you could build just the habit-tracking app you need, in under an hour? What if you didn’t need to be an Open Source software wizard to mold an existing app into the app you actually want?
Having AI help us build software drops the capital requirements of software development from millions of dollars to thousands, maybe even hundreds. It’s possible (for me, at least) to imagine a future of participative software development–where the digital rules of our lives are our own, fashioned individually and collectively. Not necessarily by tech wizards and esoteric capitalists, but by all of us.
Vibecoding isn’t quite there yet–we aren’t quite to the Star Trek computer just yet. I don’t want to oversell it and promise the moon. But I think we’re at the beginning of a shift, and I look forward to exploring it.
P.S. If you want to try vibecoding out, I recommend v0 among all the tools I’ve played with. It has the most accurate results with the least pain and frustration for now. Hopefully we’ll see lots of alternatives and especially open source options crop up soon.
I think the pretty universal answer in all these comments is “no”- I think that’s fair but I’d add sone caveats.
There’s a lot of negative sentiments here around LLMs, which I agree with, but I think it’s easy to imagine some hypothetical future where LLMs existing without the current water/energy overuse, hallucinations or big companies stealing individuals work. Whether that future is likely or not, I think it’s possible.
The main reason vibe coding isn’t solarpunk is that, taken by itself, it’s not in any way related to ecological stewardship, anti-capitalist community building, or anything else that’s core to solarpunk. Vibe coding might or might not be part of some “cool techy future” in the same way as flying cars, robots, and floating cities but that’s not a reason to consider it as solarpunk.
If you’re into LLMs and solarpunk, instead of arguing that LLMs are solarpunk, you can make efforts to push them to being more solarpunk. How can LLMs support communities instead of coorporations? How can, through weights sharing and various optimisations, we make LLMs less damaging to the environment? Etc. That’d at least be a solarpunk way to go about LLMs, even if LLMs aren’t inherently solarpunk.
My knowledge is very limited in coding and since this is the first time I hear the term vibecoding, I don’t think I can answer your question just by reading the wiki you linked. Don’t get me wrong, I think it’s great you did link it!
So I thought of sharing one myself. Perhaps it could help you make up your mind on how to answer your question? I dunno, I suppose at least, it could be a good starting point, and I hope you totally enjoy reading it!
@solo @canadaduane
Short answer no.
But let’s have a read to be sure I get what you’re suggesting here
If you want to advance humanity through free libre software, look at the FLOSS movement; that’s kinda their whole thing. Releasing a small piece of software on GitHub and providing some decent documentation on it is a nice thing to do.
Also, yeah, programming with an llm can speed things up, but you have to know enough to recognize when the llm is hampering you and you have to just roll up your sleeves and code the damn thing yourself. They’re improving, but they are still kinda stupid and they lie.
Tech here, married to a dev, friends with several devs.
LLM are shit coders. They are absolute ecological rapists and garbage vaporware for 90% of the uses people try to wedge them into.
The capital investment for software is not extremely high. It’s standard wages and learned skill. IG was bought, cherry picked and twisted to suit meta’s data thieving desires. There are literally millions of people producing and sharing code and software for free just for shits and giggles. GNU has been a very real thing for generations now.
Also: gatekept tech knowledge is not required for the harmony of which you speak. People aren’t being excluded from a solarpunk utopia because they can’t write an app. All that is required is a willingness to put in the work to do things in a way less damaging - and using the slop commonly misnamed AI is the antithesis of that
The concept is new to me, so I’m a bit challenged to give an opinion. I will try however.
In some systems, software can be isolated from the real world in a nice sandbox with no unexpected inputs. If a clear way of expressing what one really wants is available, and more convenient than a programming language, I believe a well-trained and self-critical AI (capable of estimating its probability of success at a task) will be highly qualified to write that kind of software, and tell when things are doubtful.
The coder may not understand the code, though, which is something I find politically unacceptable. I don’t want a society where people don’t understand how their systems work.
It could even contain a logic bomb and nobody would know. Even the AI which wrote it may tomorrow fail to understand it, after the software has become sufficiently unique through customization. So, there’s a risk that the software lacks even a single qualified maintainer.
Meanwhile some software is mission critical - if it fails, something irreversible happens in the real world. This kind of software usually must be understood by several people. New people must be capable of coming to understand it through review. They must be able to predict its limitations, give specifications for each subsystem and build testing routines to detect introduction of errors.
Mission critical software typically has a close relationship with hardware. It typically has sensors coming from the real world and effectors changing the real world. Testing it resembles doing electronical and physical experiments. The system may have undescribed properties that an AI cannot be informed about. It may be impossible to code successfully without actually doing those experiments, finding out the limitations and quirks of hardware, and thus it may be impossible for an AI to build from a prompt.
I’m currently building a drone system and I’m up to my neck in undocumented hardware interactions, but even a heating controller will encounter some. I don’t think people will experience success in the near future with letting an AI build such systems for them. In principle it can. In principle, you can let an AI teach a robot dog to walk, and it will take only a few hours. But this will likely require giving it control of said robot dog, letting it run experiments and learn from outcomes. Which may take a week, while writing the code might have also taken a week. In the end, one code base will be maintainable, the other likely not.
Energy and water costs for developmenr and usage alone are completely incompatible with that. Come back in 20 years when it’s not batshit insane ecologically.
Not to mention reducing power usage of programs isnt going to be very feasible based on simply an LLM’s output. LLMs are biased twoards common coding patterns and those are demonstrably inefficient (if the scourge of web apps based on electron is any tell). Thusly your code wouldn’t work well with lower grade hardware. Hard sell.
Theoritically they could be an efficient method of helping build software in the future. As it is now that’s a pipe dream.
More importantly, why is the crux of your focus on not understanding the code you’re making. It’s intrinsically contrived from the perspective of a solarpunk future where applications are designed to help people efficiently - without much power, heat, etc… weird man
I’d argue that at least for at least the use of it that the energy costs and water usage are not significant if you self host. There’s a decent amount of self hostable, open source LLMs out there which can be used on repurposed old hardware.
I recently bought a frame.work mini-PC and plan to run my own models, solar-powered.
using insecure code that a glorified autocorrect has spat out hopefully isn’t going to be a part of the future I’ll be living in.
I might be misunderstanding, but it sounds like you’re angry at AI, or at least, you’d like it to diminish not grow in use.
Yeah sorry no. Solarpunk is about community so if anything then pair programming is Solarpunk, but I don’t think that talking in isolation to an auto completion system is Solarpunk.
Maybe in like 300 years with some kind of robots, but that’s not really the scope of solarpunk, tbh.
Btw vibecoding is an horrifying name for the crisis you’ll get, when you try to fix code that your LLM spat out in production, when the customer demands it working.
(Recent example: https://cloudisland.nz/@daisy/114182826781681792 )
Yah, I think that using LLM’s while ignoring all of the externalities involved is … everything Solarpunk is in opposition to? There’s a rejection of the idea that this thing that looks bad now might pay off down the road because mumble mumble mumble progress.
Take a bicycle. A bicycle allows a person to transport themselves using overall less energy than walking. You can even work through the externalities and maybe make bamboo bikes and stuff and maybe try to carefully optimize the externalities better. But it looks pretty darn good at the start, gets better.
That’s not LLMs.
lol, that sounds like a disaster.
I’m curious, what would it look like in 300 years? What would be different, and enable a positive human-computer alignment at that time? I know you’ve said it’s out of scope, but I’m curious what we can’t have now that is desirable in the future.
I mean I have the solarpunk furs community over here on pawb and we have at least 2 robot based species, which are alive as in ‘they can do free thinking’ of course I’d love to code with a synth together, but can a thinking species be compared to an LLM? I think synths and protogens would be offended by that. So it still rolls around to pair programming with a roboter.
(warning: I hate “vibe” coding for a lot of reasons, and even more what it represents)
LLMs are the opposite of anything ecological IMHO.
What if you could build just the habit-tracking app you need
We have a thousand of those already. A better example is needed.
mold an existing app
That’s not how any of this works. One more reason to shun those who do not care and take the time to understand what programming is all about.
the capital requirements of software development from millions of dollars
Linux is free FFS, install Ubuntu today and you have all the languages you’ll ever need. How is
code vomitvibe coding helping? Also LLMs are very expensive to run right now, it’s the worst example.Last but not least, I hate how all the CEOs, managers, companies, and random people try to: pretend that open-source does not exist, change the meaning of the word open-source by associating it with binary blobs, and show developers as selfish people (“tech wizards”) who want to keep the technology for themselves.
You don’t want to learn how computer works and it’s fine, it’s your right, but don’t pretend it’s anyone’s fault.
Thanks for your thoughtful reply. I admire that, despite the clear differences we might feel around the subject. I’ll try to be thoughtful as well.
LLMs are the opposite of anything ecological IMHO.
I think this is a really interesting point, and I hope to hear it unpacked some time. I’d be interested to know if you’re talking about American LLMs, or some other breed of LLMs, or the transformer algorithm that generates language models itself.
We have a thousand of those already. A better example is needed.
I mentioned this in another reply, but will repeat here a bit. I didn’t go into detail in the original post because I wanted to be brief. But the habit tracker app I was thinking about was something my daughter designed. She isn’t a coder. But she had a complex set of nuanced motivation ideas for herself–she wanted to make a system where if she didn’t something healthy for herself, she would be awarded stars, and if she did something social she would be awarded flowers. I’m doing her app a disservice by abbreviating it. She wrote a 19-page description (Product Requirements Doc, in engineering terms, but she wouldn’t know that term) in Google Docs, and then built her app in v0. She was so so excited to see her ideas come to life! It’s the first time I’ve ever seen her really interested in computers.
(re: mold an existing app) That’s not how any of this works. One more reason to shun those who do not care and take the time to understand what programming is all about.
I’m not sure what you mean here. I’m a FOSS developer. I know what open source is. I also know what it takes to start with an existing open source app and mold it into a new shape, based on new requirements that I have. What am I missing?
Linux is free FFS, install Ubuntu today and you have all the languages you’ll ever need. How is
code vomitvibe coding helping? Also LLMs are very expensive to run right now, it’s the worst example.I’m running an LLM and a transcription service (audio -> text of my notes, synced via syncthing from mobile phone to server, then processed using n8n and a docker image of whisper-asr-webservice) on an nvidia 3080 GPU in my home, powered (mostly) by our solar panels. I’m exploring new paths, and vibecoding seems like an interesting one to me 🤷
Last but not least, I hate how all the CEOs, managers, companies, and random people try to: pretend that open-source does not exist, change the meaning of the word open-source by associating it with binary blobs, and show developers as selfish people (“tech wizards”) who want to keep the technology for themselves.
I’m not sure that I agree with this statement.
You don’t want to learn how computer works and it’s fine, it’s your right, but don’t pretend it’s anyone’s fault.
I guess I didn’t think I was blaming anyone here.
My vision for the future is one where it’s more equitable–where digital algorithms don’t govern our lives like they (primarily at the hands of corporations) do today. I’m exploring what vibecoding might mean if it emancipates people to contribute to the ruleset that is often hidden from their view, especially when they don’t have computer/technical expertise (but also by just being a human being in this era, when mobile phones, social media, and unhealthy relating with devices are ubiquitous and basically just “expected” of you).
Nah, this person just has their pants on their head. A lot of us learned coding by dissecting existing code, and that’s totally a valid way to learn.
That’s not how any of this works. One more reason to shun those who do not care and take the time to understand what programming is all about.
Are you seriously saying that we need to shun people who want to fork a project?
That is absolutely NOT what I was saying.
So how is molding an existing app “not how it works” in your world?
You can use Ghidra to decompile it but it’s a tiny bit more complicated.
Okay?
I’m still lost on how you think that you can’t modify existing apps?
You don’t want to learn how computer works and it’s fine, it’s your right, but don’t pretend it’s anyone’s fault.
One of the core tenants of solarpunk is accessibility. Not everyone is able to grasp how computers work, especially people who didn’t grow up with them. Our focus should be making the barriers to entry smaller, not bigger.
When I was young, we had to buy compilers that cost $1000. Everything is free now. I don’t know what you need.
I’m not complaining that poetry is too hard because dictionaries are too expensive. It’s a lack of willingness to learn that is holding people back. The barrier to entry has never been smaller. Install Ubuntu, the end.
What’s your next step? Me working for you for free? I’m not complaining about poets, wood workers, plumbers, or people who build houses. Do you think you can build a whole new civilization with lazy entitled people?
The difficult part about making software isn’t the code part really. It’s actually figuring out what the problem is that needs solving and then marshaling the resources to solve that problem.
People don’t need a bespoke habit tracker app. General solution platforms exist. But then the problem becomes maintaining them.
And generally software is considered non capital intensive. It’s relatively cheap, you mostly just need to pay for labor unlike building hardware where you have physical logistics and resources to account for.
You make a good point about software being potentially low capital. Open source is a great counter example.
But I wonder how do we know what people need? Are the solutions out there actually good for everyone? My daughter is not a coder, but started vibecoding her own habit tracker app last week. She’s very excited about her motivation system of stars and flowers, and the nuances of how to make it just right for her. She wrote 19 pages on a google doc describing her app. It’s almost like a requirements document, and if she had $30k I bet she could hand that document over to a software engineer and they could build a mobile app for her.
If she hadn’t built this app, I wonder how many habit tracker apps would have also advertised to her, or sold her habit data? If a person is not a software engineer, they kind of have to live with other people’s decisions in the digital sphere (and some folks, I’ve found, aren’t even able to evaluate software for safety, privacy, alignment with their values etc. let alone build it).
I guess I just wonder what the world would be like if the bar for personalized software were dropped so everyone could create just what is needed, for them, wherever they are and in whatever community they find themselves.
So… do these AIs still use an unholy amount of water and/or electricity? Because that’s my first solarpunk question question…
We often think of “AI” as what is promoted by big corporations–but it doesn’t have to be. The math, algorithms, and machines that run AI can all be ours, and I think we can run them responsibly. For example–I run an AI transcription service just for myself on an old GPU. It works quite well. I also have solar panels installed on my home. I think it can be carbon neutral.
Aren’t all the models released from big tech. Even the small toy models you can host yourself, are just spinoff of the bigger models? LLMs seems to be a very wasteful technology.
No.
I kinda get that people somehow like the overall idea of this approach.
But who is, excuse my french, fucking maintain that crap in the long run?
nobody, i’d guess. everyone just vibecodes their own personal shovelware. if theres any bugs, they just make some new slop and hope it’s less buggy than the old slop.
As a senior developer with 20+ years of coding behind, I am fairly excited at coding LLMs and use them a lot. And I realize now how little my coding ability actually matters in my job. What matters, and what I find the most interesting is the deep understanding of the various stacks that form the precarious edifice of modern IT.
We will maintain lower layers like we always did: with tons of tests, with strict APIs and with explicit invariants. The coding may change, but the engineering practices remain.
I am very excited at the idea that we have to design all the new best practices for this type of things. Imagine a coding pipeline with strict tests where, when a bug is found, we can just write a new test to demonstrate it and let the models figure out how to fix it without breaking the past tests.
lol, fair point. <3
I do hope we use it judiciously. So far, I’ve found the “biggest bang for your buck” to be at beginning a new project. But I’m also wary of vibecoding in its extreme form of “just press accept”.
No.
That’s the first time I see “vibe coding” used seriously and not as a joke. And I use LLMs routinely to generate code.
Code LLMs do bring down the barrier of entry and changes the way we will code in the future, that’s pretty clear, but “vibe coding” is more of a meme that will need a lot more refinement before being something serious.
You’re right, it’s a bit tongue-in-cheek. But it’s a fun name, and I found a lot of people didn’t understand “no code / low code” and even more didn’t really get excited about it. Vibecoding is interesting to people, I think.