[-] towerful@programming.dev 18 points 5 months ago

As a non-american, the speed with which trump has dismantled international relations and the lethargic (even non-existant) reaction of the "checks and balances" that should prevent such things says to me:
If America has done it once, America can do it again.
It can spend 30-50 years building strong relationships, or it can devastated them in 1-2 years.
Seems better to work without America, and let America do it's own thing.
If America wants to join in, fine. But it's gonna be on the world's terms, not Americas.

[-] towerful@programming.dev 18 points 6 months ago

Illegal: the strap on is unlicense

[-] towerful@programming.dev 18 points 7 months ago

Probably not relevant to the article, I had to rant. I'm drunk, and suffering!

I'm trying the old vibe coding, except with actual specs. I feel like I have to. I hate it.

I think refining the spec/prompt with Claude makes sense. I found it helped me crystallise my spec and highlight gaps & pitfalls.
At which point, I should've just coded it.
I'd have known what it does, and it would be exactly what I needed.
But I figured I'd see what Claude could do.

So, my "dev->staging->prod" (project isn't in production state yet, thought it would be good to try AI on something) database migration system with a planning, apply and rollback stage was built by Claude.
There are system tables that should migrate fully (but allow for review if they are structurally different) and there are data tables that should only alter schema (not affect data). It's decently complex that it would take me a week or so to write and generate, but maybe I can spend a day or 2 writing a spec and seeing what clause can do.

It wanted to use python, and told me that migra is outdated and tried to generate something that would do it all.
I told it to use results (the migra replacement), and after convincing it that results was the actual library name and that it can produce schema differences (and telling it that it is a different API than migra cause it tried to use it as if it was migra, and.... So much wasted time!), I finally got working code. And all the logs and CLI etc resulted in SUCCESS messages.
Except that tables are named like "helloThere" were ignored by it, cause it hadn't considered tables might have uppercase. So I got it to fix that. And it's working code.

It looks nicely complex with sensible file names.
Looking at the code: there are no single responsibilities, no extensibility. It's actually a fucking mess. Variables sent all over the place, things that should be in the current command context being randomly generated, config hard coded, randomly importing a function from another file (and literally the only place that other function is used) because.... I don't know.
It's just a bunch functions that does stuff, named be impressive, in files that are named impressively (ignoring the content). And maybe there are context related functions in the same file, or maybe there are "just does something that sounds similar" functions.

The logging?
Swallows actual errors, and gives an expected error messaged. I just want actual errors!

It's hard to analyse the code. It's not that it doesn't make sense from a single entry point. It's more that "what does this function do" doesn't make sense in isolation.
"Where else might this be a problem" has to go to Claude, cause like fuck could I find it it's probably in a functionally similar function with a slightly different name and parameters or some bullshit.

If I didn't know better, and looked at similar GitHub projects ... Yeh, it seems appropriate.

It is absolutely "manager pleasing complexity".
But it does work, after telling it how to fix basic library issues.

Now that it works, I'm getting Claude to refactor it into something hopefully more "make sure functions are relevant to the class they are in" kinda thing. I have low expectations

I don't EVER want to have to maintain or extend Claude generated code.
I have felt that all the way through this experiment.
It looks right. It might actually work. But it isn't maintainable.
I'm gonna try and get it to be maintainable. There has to be a way.
Maybe my initial 4-page spec accidentally said "then randomise function location".

I'm gonna try Claude for other bits and pieces.
Maybe I'll draw some inspiration from this migration project that Claude wrote (if I can find all the bits) and refactor it into something maintainable (now that I have reference implementations that seems to work, no matter how convolutedly spread they are)

[-] towerful@programming.dev 18 points 9 months ago

Trumps "Epstein Ballroom" will now come with a complimentary giga-yacht. In other (completely unrelated) news, the WB-Netflix merger has gone through.

[-] towerful@programming.dev 18 points 1 year ago

I would love some of those less exciting times.


May you live in exciting times

Is the worst curse

[-] towerful@programming.dev 18 points 1 year ago

One of the best robot chicken scenes.
I was in tears the first time I saw it

[-] towerful@programming.dev 18 points 2 years ago

Top tip: don't use WD40 as a lubricator.
It's more of a solvent.

It will lubricate in the short term, but the film it leaves is too thin to protect in the long term.
It's great for removing old grease and old oil, breaking rust, stuck nuts etc.
But it shouldn't be the last thing you use in maintenance.

Once you have something moving again and all cleaned up, make sure you use some proper oil to protect it long term (3-in-1 oil is good, there are more application-specific lubricants as well)

[-] towerful@programming.dev 18 points 2 years ago

IMO, that's the shiniest thing

[-] towerful@programming.dev 18 points 2 years ago

Scottish tap water is a public/government company.
They do a good job.
Unfortunately, climate change is impacting the level of reservoirs & water ways (ie, going down), and Scottish people use more water than English people (like 30% more, a substantial amount).
Hopefully Scottish water continues to be great, and continue to get the funding they need to do a good job

[-] towerful@programming.dev 18 points 2 years ago

Unfortunately, I think you need a passport number to be able to even book an international flight.
Not like they will spend $$$$ getting to another country to be denied at the border.

Unless they drive, I guess. I feel like it's "easy" to get into Mexico, and would probably be impossible to get home again.

[-] towerful@programming.dev 18 points 2 years ago

Well, self-sign your own certs and deal with the implications of not being a trusted root certificate authority

view more: ‹ prev next ›

towerful

0 post score
0 comment score
joined 3 years ago