HN user

mingusrude

278 karma
Posts1
Comments69
View on HN
Claude Sonnet 5 22 days ago

...badly architected, often redundant, feature-bloated code which always looks good, even upon earnest review, but actually sucks and becomes extremely difficult to maintain in ways which are not obvious in code review.

I can only judge from my own experience but with or without LLMs, these are the codebases that I have worked with during most of my career. To me, much of the question is whether LLMs produce worse code than the me and my colleagues have done in the past and I don't think that's the case. It is however very common that people hold LLMs to a higher standard than human colleagues and then it's not a useful comparison.

Identifying that habit as part of who you are is key to it being sticky.

This has always been key to me. I've succeeded to identify myself as a runner, as someone who speaks French, as someone who reads books. But my identification as someone who has meaningful programming side-project, who has a garden and so on is to weak to succeed.

In the same vein, at Volvo's factory outside of Gothenburg they have the obligatory museum. It's just that they don't showcase old, famous models. The museum is entirely built around car safety and how Volvo has worked with it. It is interesting with a company that has been so dedicated to their core values for such a long time.

The way this is told in elementary school in Sweden (source is Swedish) is that the Vasa was too narrrow, given it's height. So then the question is, how much wider should she've been to carry the extra height. Vasa's sister ship, Äpplet (the Apple) had a similar deck layout and was about a meter wider. As a layman, considering the technology at the time, it does not sound so much more wider.

I once watched a presentation by Dan North where he said that a microservice should never be bigger than your head. What he meant was that all the code for the microservice should fit on your screen and you should be able to put your head against the screen and it should cover the code.

Yes, this was in the microservices-heyday.

I did a period of two years as the CEO of a smallish tech-company (~ 100 employees, turnover of 15M€) and it was stressful as hell even if we were doing OK financially. The big thing is that you're the last defender, everything difficult or uncomfortable task ends with you having to pick it up, for everyone it's a choice to pass it on to the next level but for you it isn't. This combined with the monthly "grades" in terms of commercial result which was new to me coming from a tech background was tough. In the end I chose to go back to tech but it's not something that I want undone, it was a learning experience and these days I'm a lot more careful to let things slip through to the next layer.

This is similar to the experience that I had with Erlang. After having spent time with it, I was hardly every surprised looking at any code and my brain could deal with the actual problems at hand without having to figure out how to apply what I knew about the language.

...akin to that of a poet/painter/artist.

Anecdotally, programmer colleagues that view themselves as artists are generally harder to work with than those that identifies as craftsmen. It's generally much easier to have a sound argument about someone's work if they don't view it as their art.

The superpower is to write the notes before the meeting. It may sound cynical but sometimes it's worth trying.

This is the conclusion that I've come to as well after trying for way too long to find inspiration to those things that I either want to do (on some level) or need to do.

Habits are things you do that don't have a big hurdle. For years I've been able to run without feeling that there's a great resistance in doing it (I don't normally identify as a runner). But picking up some work that I want to do but don't feel it's the right moment to do has been a lot harder. Lately I've had some progress with at just doing tasks because it's become a habit when I have some time over.

Yes, this is very true. My experience is that as you get older you make fewer new contacts. It's not illogical, at first there is school, then university, then kids. All of these are excellent at making new friends but once the kids get old enough you stop naturally meet people outside of work, at least you have to put in some work for it to happen. I realized the other week that if I would not have my wife, it would easily be weeks between having a somewhat deep discussion with anyone outside of work. It's a terrifying thought.

We had a party this summer, my wife turned 50 and we wanted to host a party in our house for all our friends. We thought it would be a blast but there were problems.

First problem, we don't really have that many friends. Back in the day, it felt natural to invite anyone you remotely knew but today, not so much. So, only those that we had some kind of deeper relationship got on the list, in total maybe 30 people or so, almost all couples.

Second problem, we have moved around so a fair number of those we wanted to invite do not live in the same city as us. This meant travelling for them but many were fine to do it, however it gave rise to two other problems.

Third problem. Back in the day when there were parties, people could drop by and so it didn't feel it had to be so ambitious, but now since people were travelling, we have to have a proper dinner party. Lots of cost, lots of arrangements, not something that I want to do very often.

Fourth problem. Back in the day, there wasn't a day tomorrow. At the age of 50. there's always a day tomorrow. We had bought alcohol as if we were 20 but with the economy of two DINKs (they've moved out). Maybe 20% was consumed because "there's a day tomorrow as well", and frankly quite a few were travelling so they did indeed have to be able to drive reasonably early.

It's just very different having parties at the age of 50 compared to 20, it can't be the same thing, at least not in our circle and I'm quite sad for it.

Maintaining tests that only test that things haven't changed can be a nightmare if you actually want things to change (like when you're making a change to the logic of a system). They can also be a real pain to maintain since if they fail you almost never know why they failed, just that they failed. This gives you (or the future maintainer) very little help in figuring out what's going on.