keithnz a few seconds ago

Thing is, with AI, this is much less of an issue, as long as AI can maintain the code it would be able to transition it through tech change. This seems a better bet than trying to choose things that will remain static.

cjfd 24 minutes ago

I don't think anyone wants warts. It is a fact that every technology has them, though. And also that every attempt to get rid of warts seems to introduce new, perhaps yet unknown warts. There is a kind of law of conservation of misery here. I think I now have said in a somewhat more clear way what the article is trying to say and without a title that is actually false.

  • eucyclos 17 minutes ago

    This makes me think of Alexander's pattern language- according to that framework one of the key components of beauty is texture. I wonder if our dislike of untextured experiences stem from an unease at not knowing where the thing is hiding its warts.

adityaathalye 2 hours ago

So much this. Warts = (software longevity) life lessons. (Though it must be noted that warts != bad design.)

Some years ago, I gave a talk on functional-style shell programming which began with this:

  Prelude: Why even bother?

  Personally…

    Text is everywhere, better learn to process it
    The masters already solved it better
    Stable tools, well-known warts
    Personal/team productivity, tool-building autonomy
    To learn about
        good and successful design
        bad and successful design
        computer history
    For the fun of it

ref:

Dr. Strangepipes Or: How I Learned To Stop Worrying && Function In Shell (Functional Conf 2019)

org-mode slideware: https://gist.github.com/adityaathalye/93aba2352a5e24d31ecbca...

live demo: https://www.youtube.com/watch?v=kQNATXxWXsA&list=PLG4-zNACPC...

grebc an hour ago

I think when you’re young & doe eyed what is shiny & new is exciting and your wants are easily confused with needs.

You don’t need the shiniest & newest framework to tell a computer to generate some HTML & CSS with a database and some logic. And don’t have the lived experience of building & shipping to realise that only 1 in 1,000,000 projects probably ever get more than 100 sets of eyeballs so end up using much more complicated tools than necessary.

But all the news & socials will sing praise to the latest shiny tools x.x.9 release so those needs easily get confused.

m4rc3lv 38 minutes ago

I think I would use PHP for the backend instead of Node or Perl.

socalgal2 an hour ago

long lasting warts might be evidence that the software is backward compatible. It might also be evidence the software is full of footguns and ways to screw yourself.

I'm sure it's an unpopular opinion but sh/bash scripts suck. There are magic incantations all over and if you get one wrong then you've got code injection. We can't go back and fix it but we could either replace it, or update in some way so it it's easy to be safe and only one way to do things that "does the right and safe thing" always.

I don't think keeping unsafe by default is a good model and I think all of the daily headlines of people/companies/hospitals/airports/goverments being hacked in large part because we keep the warts.

  • grebc an hour ago

    I don’t know how you take the article OP wrote/posted and conflate it with security breaches.

    Long lived shipping code is typically not aesthetically pleasing.