[HN Gopher] The Age of Software Artisans
       ___________________________________________________________________
        
       The Age of Software Artisans
        
       Author : jairojair
       Score  : 39 points
       Date   : 2024-09-21 20:47 UTC (2 hours ago)
        
 (HTM) web link (jairojair.com)
 (TXT) w3m dump (jairojair.com)
        
       | foobarbecue wrote:
       | I would like to thank this website for reminding me to drink
       | water.
        
         | jairojair wrote:
         | You're welcome!
        
       | jagged-chisel wrote:
       | I have attempted, in vain, to bring this kind of thinking into
       | the companies and teams that I have worked with. They don't want
       | it.
       | 
       | And in interviews, no one wants a Software Artisan. The cynic in
       | me says that it's because people want the job security of the
       | typical bullshit position and don't want anyone upsetting that.
        
         | Swizec wrote:
         | The problem with hiring artisans is that most companies need a
         | Honda Civic not an Enzo Ferrari.
         | 
         | If they hire an artisan it's just going to be frustrating for
         | everyone involved. The business will pay more than the value
         | received and wonder wtf and the artisan will be bored out of
         | their mind looking for fun projects to do.
        
         | slowhadoken wrote:
         | McDonalds isn't looking for a chief.
        
           | invalidlogin wrote:
           | Chef?
        
         | tkiolp4 wrote:
         | Companies don't need software artisans. They need replaceable
         | people who can do the job until they run out of investor's
         | money.
        
         | rqtwteye wrote:
         | Artisans don't scale.
        
       | lifeisstillgood wrote:
       | Agreed (in fact my profile claims I do artisanal software :-)
       | 
       | But I go further - software is a form of literacy, and everyone
       | should learn to code, just as at some point we thought "hey laws
       | are written down, novels are great, policy manuals and
       | international letters help, let's teach the peasents to read" and
       | all of a sudden we have working class people going to university
       | and discovering things like Relativity and Covid vaccines.
       | 
       | Software is literacy and we will all benefit when we can run /
       | examine our society through it.
       | 
       | Book to follow
        
       | vijucat wrote:
       | Artisan is not a bad metaphor. Take furniture. There's a place
       | for IKEA, and there's a place for expensive, hand-crafted
       | Scandinavian furniture.
       | 
       | https://www.scandinaviastandard.com/this-is-why-that-sofa-is...
        
         | jairojair wrote:
         | you get it! I think the exactly same way.
        
         | herval wrote:
         | where in the analogy does social software fit?
        
           | andai wrote:
           | Are you referring to that article about software that serves
           | a small local community?
           | 
           | I can't remember the name of the author but there was an
           | interesting article about this, I think from some college or
           | university in New York, talking about some examples of
           | software that was set up at specific locations on the campus
           | for specific purposes, and explaining how they wouldn't have
           | worked as an online global thing.
        
           | actionfromafar wrote:
           | Purdue Pharma.
        
         | gjsman-1000 wrote:
         | Laravel has been using it for, what, a decade now?
         | 
         | https://laravel.com
        
         | andsoitis wrote:
         | > there's a place for expensive, hand-crafted Scandinavian
         | furniture.
         | 
         | And then there's Italian craftsmanship https://artemest.com/
        
       | interstice wrote:
       | My 10,000 hours are well behind me and I build web apps a bit
       | like this. Previous jobs are like a shed full of parts that will
       | get 60% of the way there, and the rest is making a couple of
       | custom parts and a lot of fettling. Sometimes I build a table
       | from scratch just to remind myself I can.
        
       | lttlrck wrote:
       | At what layer of abstraction are you no longer an artisan? Or
       | doesn't it matter?
       | 
       | It's a nice "label" but it's a bit murky what it means the
       | farther away from machine code (the raw materials) you get. Are
       | you an artisan if you use an IDE?
       | 
       | I do enjoy the sentiment however.
        
         | skydhash wrote:
         | I think it all depends on amount of care you put in the human
         | aspect of the software. Does it solve a specific need for a
         | person you can name, or the stories are all about imaginary
         | characters and generic persona. Crafting requires empathy and
         | the realization that this will be used by and for people, and
         | you want to make it easy for them (even if people means you as
         | one person). And the promise to make it better the next time
         | you're working on it or something similar.
        
         | jairojair wrote:
         | Good take!
        
         | ok_dad wrote:
         | Is woodworking valid with power tools or is the tool doing the
         | art? What about a CNC in the workshop? I think it's all valid
         | because the art is in the planning and resulting furniture.
         | Same thing for coding. Even an LLM needs human creative input.
        
           | moffkalast wrote:
           | It depends purely on the level of snobbery you want to strive
           | for.
        
             | slowhadoken wrote:
             | It's not snobbery, it's knowledge and craft. You depend on
             | the transfer of that knowledge from one generation to the
             | next.
        
         | slowhadoken wrote:
         | You know what an artisan is though. There are varying degrees
         | of artisans and craftsmen. Just extend that metaphor to
         | programming. Layers of abstraction aren't infinite. I'd say
         | metal on metal is a master craftsman in terms of programming.
        
         | wsintra2022 wrote:
         | Vim users only
        
       | boricj wrote:
       | Artisans can make objects out of raw material, but they can also
       | take apart objects to reclaim raw material. Software engineering
       | tends to only ever do the former, because traditional toolchains
       | are a one-way street from source code to assembly code to object
       | files to programs.
       | 
       | That article rings very differently to me because of the tooling
       | I've developed. With the ability to break apart programs into
       | object files and reusing them to make new programs, I can do the
       | latter. In a sense, using both pristine source code and second-
       | hand binary code to make programs is as artisanal as software
       | development can get.
        
         | bschmidt1 wrote:
         | > break apart programs into object files and reusing them
         | 
         | So, libraries?
        
           | boricj wrote:
           | No, it's actually ripping out bits from an executable and
           | turning them into relocatable object files. The technical
           | term I've come up with for this is delinking, although the
           | decompilation community calls it binary splitting.
           | 
           | Putting it another way, you can make libraries out of a
           | program with this technique.
        
       | jauntywundrkind wrote:
       | I sure hope we can get to a happier software harmony, of enjoying
       | code and systems.
       | 
       | One of the recurring trends thats cropped up is so called
       | barefoot developers, folks just cobbling together some kind of
       | task not for big industrial software with millions or even dozens
       | of users, but just because it makes their lives or a small group
       | of people's lives better.
       | 
       | Maggie Appleton recently followed up with a post saying that
       | these are the folks ML/LLMs might best be able to help. To get
       | them their stuff. https://news.ycombinator.com/item?id=40633029
       | https://maggieappleton.com/home-cooked-software
       | 
       | But I also have this feeling, that almost all the webdev we do is
       | artisanal handcraft as is. We hand author endpoint after endpoint
       | for our objects even though there's this high degree of
       | similarity across endpoints; authorize/validate the request, do
       | the thing in the db, return it to the user.
       | 
       | Part of me is sick as shit of just how artisanal software is; it
       | stinks like rot that we keep cranking out more piles of code for
       | each entity & as we intricate/complicate/embellish each
       | entity/resource. We so rarely have broader high level systems
       | where we've escaped from hand crafting web server middle tier
       | glorified-translators of a very basic 3-tirr client-server-db
       | architecture.
       | 
       | I just want companies to pay me to tell them how much less they
       | could do, if they let me PoC their system in something ordered &
       | higher order, such as Hasura. Like CORBA, the UML world also has
       | great scorn as unmaintainable, but again it's like, those folks
       | felt on to something amazing & mighty & we have _immense_
       | unsurvivor anti-bias, we are pat  & confident that this tower of
       | babel built too high & all future towers too will fall & that the
       | effort is folly.
       | 
       | But man, the chaos & lines of code we have been creating as an
       | industry is just so unnecessary & so out of control.
        
       | slowhadoken wrote:
       | That's what I've been working towards, even despite recent
       | trends.
        
       | jumploops wrote:
       | Everyone is saying that LLMs will kill programmers.
       | 
       | The author here has the right idea, and the correct historical
       | context to back it up.
       | 
       | Generative AI will 10x (at least) the number of people that
       | program computers, but that programming will look different than
       | it does today.
       | 
       | Gone are the semicolons and curly braces we're so used to, just
       | like BEQ and JMP before them.
       | 
       | Truly gone? No, the next Rollercoaster Tycoon has yet to be built
       | :)
        
       ___________________________________________________________________
       (page generated 2024-09-21 23:00 UTC)