[HN Gopher] Gerald Sussman: Programming is (should be) fun (2022...
       ___________________________________________________________________
        
       Gerald Sussman: Programming is (should be) fun (2022) [video]
        
       Author : nequo
       Score  : 289 points
       Date   : 2024-06-12 22:02 UTC (1 days ago)
        
 (HTM) web link (www.youtube.com)
 (TXT) w3m dump (www.youtube.com)
        
       | BoiledCabbage wrote:
       | Great to hear the views on programming from one of the authors of
       | SICP.
       | 
       | The anecdotes in the first few mins are nice as well.
        
         | TacticalCoder wrote:
         | > Great to hear the views on programming from one of the
         | authors of SICP.
         | 
         | I'll blog about it one day (I know it's been five years I've
         | been saying that but hey) but... Sussman invited me for tea in
         | his office so I ran to the MIT co-op but couldn't find SICP
         | there so I told the person there I really needed that book for
         | I'd see Sussman the next day: he called the Harvard co-op and
         | they told me they had one copy in stock. So I uber'ed to the
         | Harvard bookstore and bought SICP.
         | 
         | Next day I went to Sussman's office at the MIT and when I
         | arrived Abelson was there, by chance (he was leaving) so they
         | _both_ dedicated me my copy of SICP. And Sussman added  "had
         | you been there 15 minutes earlier my wife would have signed it
         | too!".
         | 
         | I had no idea his wife was the proofreader for SICP.
         | 
         | Fun story. Probably rambling by now but all this really
         | happened. I've got a cool picture of these two wizards and me
         | holding the purple book they just signed!
        
           | code_biologist wrote:
           | That is so cool. Watching those SICP lecture videos as a
           | teenager was incredibly formative for me. I still consider
           | myself a knight of the lambda calculus.
        
           | bitwize wrote:
           | I coined an AI koan that goes something like this:
           | 
           | A novice travelled to the East to learn at the feet of
           | Sussman. As Sussman lectured on writing device drivers with
           | low-level Lisp code, the novice interrupted: "But Master, is
           | Lisp not a high-level language?" To which Sussman replied:
           | "There was once a fisherman who spotted an eagle on the
           | shore. 'Brother Eagle,' said the fisherman, 'how impossibly
           | distant is the sky!' The eagle said nothing, and flew off."
           | With that, the novice was enlightened.
           | 
           | It's fictional, but it's based on a real-life Sussman
           | encounter I had. A hacker (it may have been Dimitris
           | Vyzovitis) was telling me about things he'd done in "low-
           | level languages like C and Lisp". Then I said "But Lisp is
           | high-level!" at which point the hacker paused and said "Let
           | me get Jerry." "Jerry" turned out to be Gerald Sussman, who
           | explained to me, in the most nerdy-enthusiastic Sussman-like
           | way, that Lisp was the low-level language of a virtual
           | machine which he had actually implemented in hardware[0]. And
           | it was _profoundly_ enlightening.
           | 
           | [0] See Steele, G.L. and Sussman, G.J., AI Memo 514, "Design
           | of LISP-based Processors, or SCHEME: A Dielectric LISP, or
           | Finite Memories Considered Harmful, or LAMBDA: The Ultimate
           | Opcode", https://dspace.mit.edu/handle/1721.1/5731
        
             | selimthegrim wrote:
             | TIL where Lambda The Ultimate came from.
        
               | 082349872349872 wrote:
               | Just in case you only learned about that one: there's a
               | whole subseries of 'em.
               | 
               | My current favourite is https://www2.cs.sfu.ca/CourseCent
               | ral/383/havens/pubs/lambda-...
               | 
               |  _Debunking the "Expensive Procedure Call Myth or,
               | Procedure Call Implementations Considered Harmful or,
               | LAMBDA: The Ultimate GOTO_
               | 
               | But I see some recent authors have gotten into the game,
               | so it could be one of them updates that slot.
        
           | musha68k wrote:
           | The book is also so great because it highlights the
           | _creative_ aspect to programming - which they show could
           | (also) be seen as an art form; where it 's beyond the
           | utilitarian aspects of coding; appreciating aesthetics /
           | intellectual beauty. All for the sake of instilling in their
           | students a more holistic understanding of the _craft_ while
           | doing so.
           | 
           | IMHO SICP feels "timeless" somewhat because of that.
        
             | hasmanean wrote:
             | I spent my life looking for such an elegant tome. If I had
             | discovered it when I was 15 maybe my life would have been
             | happier.
             | 
             | Utilitarian programming is like utilitarian food.
             | Programming should be seen as an act of worship to the god
             | of simplicity. If the artificial world intrudes and makes
             | the program complicated, this is what leads to suffering.
             | Ultimately it is the world which should be changed.
        
       | neilv wrote:
       | Sussman is one of the great ones.
        
       | bryancoxwell wrote:
       | Sussman and Rich Hickey are two people whose talks I never stop
       | enjoying.
        
         | floobertoober wrote:
         | The only person I'd add to that list is Simon Peyton Jones. I
         | could watch them talk all day!
        
           | vaylian wrote:
           | I don't know him yet. Are there some talks you can recommend
           | that would be a good starting point?
        
             | ReleaseCandidat wrote:
             | That must of course be "Haskell is useless"
             | https://youtu.be/iSmkqocn0oQ?si=IkTHHdH1423tOVvz
             | 
             | But apart from that, his enthusiasm can even make the
             | mseemingly most boring topic interesting.
             | 
             | I'd personally start either at "the story of Haskell"
             | Escape from the Ivory Tower https://youtu.be/cOqxiS-
             | WN1w?si=1iXpGE7cJZa4tbbJ Or something more recent, about
             | Epic's Verse
             | https://youtu.be/OJv8rFap0Nw?si=OE2mUllQfLmV29Bk
        
               | dualogy wrote:
               | > But apart from that, his enthusiasm can even make the
               | seemingly most boring topic interesting.
               | 
               | Totally, his ever-fresh, ever-genuine excitement with all
               | this stuff is so contagious (for the duration, and then
               | some =)
        
               | endgame wrote:
               | And if Haskell isn't your jam, maybe Excel is more to
               | your taste? https://www.youtube.com/watch?v=jH2Je6wUvPs
        
               | keithalewis wrote:
               | It's only the most popular programming language in the
               | world.
        
               | endgame wrote:
               | And it's functional, too!
        
         | tmtvl wrote:
         | I quite enjoy Guy Steele's talks as well.
        
           | gumby wrote:
           | I don't know Hicky, but Guy, Gerry and Hal are great human
           | beings as well.
        
           | seanmcdirmid wrote:
           | The talks that guy and Richard Gabriel did together were
           | pretty good. And of course Richard Gabriel himself.
        
         | sph wrote:
         | Add Joe Armstrong to that list for me.
        
           | christophilus wrote:
           | I loved listening to Joe. Humility and humor (or, should I
           | say humour in his honor?), practicality and intelligence. RIP
        
       | xyzwave wrote:
       | I haven't watched the video yet, but I was instantly reminded of
       | the Alan J. Perlis quote he and Abelson used for SICP's
       | dedication:
       | 
       | > I think that it's extraordinarily important that we in computer
       | science keep fun in computing. When it started out, it was an
       | awful lot of fun. Of course, the paying customers got shafted
       | every now and then, and after a while we began to take their
       | complaints seriously. We began to feel as if we really were
       | responsible for the successful, error-free perfect use of these
       | machines. I don't think we are. I think we're responsible for
       | stretching them, setting them off in new directions, and keeping
       | fun in the house. I hope the field of computer science never
       | loses its sense of fun. Above all, I hope we don't become
       | missionaries. Don't feel as if you're Bible salesmen. The world
       | has too many of those already. What you know about computing
       | other people will learn. Don't feel as if the key to successful
       | computing is only in your hands. What's in your hands, I think
       | and hope, is intelligence: the ability to see the machine as more
       | than when you were first led up to it, that you can make it more.
        
         | ozim wrote:
         | Oof hits hard when I think about agile coaches, clean code
         | ambassadors and whole cottage industry of how to make your code
         | and team perfect.
        
           | schneems wrote:
           | I've learned that aiming for perfection is how some people
           | have fun. I think the tragedy is when fun, energy, and mental
           | health aren't part of the conversation about how work gets
           | done.
        
         | HansardExpert wrote:
         | As a support engineer...
         | 
         | "Hey Mr Customer... don't worry that all your data is corrupt
         | or you lost access to your disks ... you have been set in a new
         | direction and we're just making your day job 'fun'"
         | 
         | They're not Bugs ... what you have here are little balls of
         | 'fun' /s
         | 
         | ;)
        
           | nequo wrote:
           | That may well be the difference between "programming" and
           | "software engineering."
        
             | JKCalhoun wrote:
             | I know which I'd rather do.
        
           | itronitron wrote:
           | "this is your first step on an incredible journey to fully
           | appreciate how humans ascribe meaning and significance to
           | words they have typed or photographs they have taken..."
        
         | Ma8ee wrote:
         | "We in computer science"! I interpret that as people doing
         | research, not the rest of us who mostly do bean counting
         | programs. For those that pay our salaries, not losing any beans
         | is way more import than how much fun we have, or how much we
         | stretch the possibilities.
        
           | schneems wrote:
           | I think the act of coding is fun, even if the domain is not.
           | 
           | I think the goal should still be fun. It's not fun to lose
           | the beans.
           | 
           | I think when the coding becomes overly fearful is when bugs
           | and problems happen. Maybe you don't have much leeway around
           | the bean part, but you have a lot of room to test and
           | validate that system. How do you make that system as fearless
           | to work with as possible?
           | 
           | It's a difficult goal, but achieving it is a worthwhile
           | accomplishment. A difficult puzzle that some might find fun.
        
             | jt2190 wrote:
             | You're describing nothing more than having the programmer
             | be able to stay in the "fun/challenging" zone, above the
             | "boring" zone and below the "stressful/helpless" zone. This
             | is obviously very personal: What is boring for you may be
             | challenging for me. Further, _all_ learners of _any_
             | subject are trying to stay in this zone. Professional
             | educators are very aware of this and refer to it broadly as
             | "student engagement".
             | 
             | The goal of a software project, however, is not optimal
             | individual learning about programming, it is usually
             | something else.
        
               | schneems wrote:
               | > The goal of a software project, however, is not optimal
               | individual learning about programming, it is usually
               | something else.
               | 
               | Sure. It's my goal. Not my project's. My project doesn't
               | care about anything really.
               | 
               | The name of the game for me (the programmer) is
               | maximizing my output without getting burned out. To that
               | end, my intermediate goal is to find fun where I can.
               | That's the game.
        
           | convolvatron wrote:
           | the sad thing is that the organizations that dont have any
           | fun, that are focussed on the serious, soul crushing business
           | of making sure no beans get dropped, are generally really
           | awful at keeping track of the beans.
        
           | JohnFen wrote:
           | I produce my best work at my best productivity when I'm
           | having fun, so those that pay my salary should appreciate
           | that. This is a case where my values and the values of the
           | beancounters are aligned.
           | 
           | If I'm not having fun, then I'm in the wrong position and
           | need to move on. Life is too short to have my day job be a
           | grind, and I won't produce great work in that condition.
        
       | Duanemclemore wrote:
       | I can't wait to watch this. I haven't gotten to do SICP yet but
       | have it checked out and did get to listen to the classes while
       | doing home renovations.
       | 
       | The Sussman quote from the SICP classes about understanding
       | complicated things makes it in to a lot of my presentations (in
       | architecture of all things) and it's the slide that ALWAYS gets
       | people frantically taking a note.
        
         | herodoturtle wrote:
         | Would you kindly share that quote here?
        
           | hydrox24 wrote:
           | Until OP delivers (and in case OP does not); I suspect it's
           | the following quote:
           | 
           | > "The key to understanding complicated things is knowing
           | what not to look at, not to compute, not to think" --Sussman.
        
             | Duanemclemore wrote:
             | That's it, and thanks. Somehow I missed the request to post
             | the comment. (facepalm)
        
       | rramadass wrote:
       | The Software Industry needs to take notes from this. They are the
       | ones who have beaten the fun out of Programming and turned it
       | into a drudgery/chore and have caused many Programmers who loved
       | their craft to quit the field entirely. It is possible to meet
       | customer/business needs and still create/maintain a work
       | environment where the programming activity itself is fun for the
       | developers. The way to do it is to abandon _Taylorism Management_
       | and approach Software Development as a  "Human-first" activity
       | akin to that of a poet/painter/artist. Promote Autonomy,
       | challenges compatible with competence, encourage
       | novelty/learning/training and focus less on schedules,
       | micromanagement and detailed processes.
        
         | stevenally wrote:
         | Second that. I have been in the industry for 37 years. The
         | Taylorism didn't exist until "Agile" came along around the year
         | 2000. Every programmer was a craftsman before that.
         | 
         | These days, I wouldn't take (or get)a job in most software
         | companies. I suspect that in quite a few non software companies
         | there are software craftspeople working away quietly.
        
           | dualogy wrote:
           | > The Taylorism didn't exist until "Agile" came along around
           | the year 2000.
           | 
           | Its widespread adoption (and usually counter to the spirit of
           | the original Manifest itself) took years however -- years
           | where most places, the craftfulness was still prevalent.
           | Myself I haven't encountered that in teams until the
           | mid-2010s, less than a decade ago. Might have been earlier in
           | SV, of course, though. And the bigger Java/.NET/Enterprise
           | shops.
        
           | AnimalMuppet wrote:
           | > The Taylorism didn't exist until "Agile" came along around
           | the year 2000.
           | 
           | There was _plenty_ of that before 2000, but it was more in
           | the mainframe world.  "Data processing". Government
           | contracts. Business applications. "Software analysts" who
           | broke the problem down into small chunks, and gave those to
           | programmers.
           | 
           | I have been in the industry for 39 years, and I avoided
           | almost all of that, but it was there...
        
         | mingusrude wrote:
         | > ...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.
        
           | p_l wrote:
           | "Craft" is very much an emotional identity and art form, and
           | for many people craft is fun as well - maybe not the exact
           | same emotion, but for me craft is the quiet kind of fun.
        
           | dgb23 wrote:
           | I identify as a craftsman but I resonate with the above
           | comment.
           | 
           | Ultimately programming is half technical (what does the
           | computer do) and half human expression (reading and writing
           | code).
           | 
           | The latter [0] is really more of an art than a science or an
           | engineering discipline. Look at all the attempts to prove
           | that one particular way of writing programs is more
           | productive, comprehensible or maintainable than others. They
           | all failed in unique ways, perhaps because human
           | communication is highly complex and contextual. The only
           | thing we all might agree on is "consistency is good".
           | 
           | [0] The former is in my opinion generally overlooked in many
           | fields, even though it's the most measurable. But it is
           | apparently often in conflict with with the latter
           | unfortunately.
        
       | dreamcompiler wrote:
       | The news of Lynn Conway's death hit me hard because I learned a
       | lot from her but I never got to meet her and thank her.
       | 
       | I learned a lot from Sussman too and I'm very glad I've gotten
       | the chance to buttonhole him in the hallway several times and ask
       | him a question and let him talk. I always learn something much
       | more interesting than the answer to my original question.
       | 
       | I highly recommend stopping by and saying hi to Sussman if you
       | find yourself at CSAIL.
        
       | KingOfCoders wrote:
       | To me, I always feel this disconnect when people from academia
       | talk about programming. I guess this is just me because of my
       | personal experiences as a coder though, andothers don't have
       | this.
        
         | xbar wrote:
         | Hm. I feel it differently. As a software engineering
         | entrepreneur for some decades, I feel keenly the urgency of
         | getting features implemented, bugs fixed, and teams motivated.
         | It is usually a grind.
         | 
         | But when I want to feel a spiritual connection to the
         | fundamental principles of my work effort, academia is one of
         | several places I turn to.
        
       | danybittel wrote:
       | Oh I love this: "I use programs as a way of remembering stuff. My
       | memory is the programs I write. If I learn something math or
       | physics or some other maybe biology and I write a program that
       | represent that so I can read the program later it's not
       | ambiguous, easy to read and that way I sort of store my
       | knowledge."
        
         | dgb23 wrote:
         | Then you will likely enjoy this talk as well:
         | 
         | "Programming for the Expression of Ideas"
         | 
         | https://www.infoq.com/presentations/Expression-of-Ideas/
         | 
         | Very adjacent to the quote above. He talks about how
         | programming helps to understand things (mathematics,
         | physics...) in a deeper way.
        
         | dazzawazza wrote:
         | When I was a child I often explored problems using BASIC. It
         | was a really powerful way for me to creatively learn. I tend to
         | think in pictures and find maths hard to truly understand.
         | Coding allows me to create pictures and relationships in my
         | head. I was lucky to find this out when I was young. I'd be
         | lost without it.
        
         | lynx23 wrote:
         | I use programming exactly for that, to get rid of ambiguity in
         | notes and make them execut/verifyable. Actually, that was my
         | biggest issue with math: I dont trust myself to make no errors
         | and neither can I trust myself to see them. A
         | compiler/interpreter will make me notice.
        
         | kaycebasques wrote:
         | Reminds me of my favorite quote from Living Documentation by
         | Cyrille Martraire:
         | 
         | > Software development is all about knowledge and decision-
         | making based on that knowledge, which in turn creates
         | additional knowledge. The given problem, the decision that was
         | made, the reason it was made that way, the facts that led to
         | that decision, and the considered alternatives are all
         | knowledge... each instruction typed in a programming language
         | is a decision... Software design can last a long time. It can
         | last long enough to forget about previous decisions made, as
         | well as their contexts. It can last long enough for people to
         | leave, taking with them their knowledge, and for new people to
         | join, lacking knowledge. Knowledge is central to a design
         | activity like software development. Most of the time this
         | design activity is, for many good reasons, a team effort
         | involving more than one person. Working together means making
         | decisions together or making decisions based on someone else's
         | knowledge. Something unique with software development is that
         | the design involves not only people but also machines... Using
         | a formal language like a programming language, we pass
         | knowledge and decisions to a computer in a form it can
         | understand. Having a computer understand source code is not the
         | hard part... The hardest part is for other people to understand
         | what has been done so that they can then do better and faster
         | work. The greater the ambition, the more documentation becomes
         | necessary to enable a cumulative process of knowledge
         | management that scales beyond what fits in our heads. When our
         | brains and memories are not enough, we need assistance from
         | technologies such as writing, printing, and software to help
         | remember and organize larger sets of knowledge.
        
       | librasteve wrote:
       | raku is still -Ofun
        
         | fuzztester wrote:
         | Sure is.
         | 
         | Just saw this a few days ago:
         | 
         | Raku -Ofun for Everyone - Daniel Sockwell
         | 
         | https://youtu.be/waHAGThlRH8?si=a_Jvt6jf5aQpjC-Y
        
           | omoikane wrote:
           | This presentation seem to be mostly about the community
           | aspects of Raku in how they made the language approachable.
           | Is there a presentation that focuses more on the technical
           | aspects of how Raku's syntax and libraries would make it more
           | fun relative to Perl or Ruby?
        
       | fire_lake wrote:
       | Tragic that they replaced Lisp with Python in universities. We're
       | suppose to be learning about computation, not corporate duct
       | taping.
        
         | epolanski wrote:
         | Plenty of universities teach Lisp, Haskell, Scala, Reason,
         | etc..
        
           | fredrikholm wrote:
           | The SICP course as it is taught today at MIT had Scheme
           | replaced with Python some years ago. I'm assuming that's what
           | OP was referring to.
        
             | kkylin wrote:
             | I don't think the new course is "SICP with Python"; my
             | impression (from talking to GJS!) is it's a different
             | course that now uses Python. But maybe someone here has
             | experience with it & can speak up.
        
             | armitron wrote:
             | That's not accurate. They retired SICP and added a new
             | introductory course [1] based on Python to placate the
             | suits. Neither Sussman nor any of the other SICP folk is
             | involved with that.
             | 
             | Sussman created a follow-up course to SICP [2] which is
             | still based on Lisp and still being offered today.
             | 
             | [1] https://irreal.org/blog/?p=11127
             | 
             | [2] https://groups.csail.mit.edu/mac/users/gjs/6.945/
        
         | systems wrote:
         | but then again lisp got replaced in practice and is only really
         | a niche language nowadays
         | 
         | so the move away from lisp is not bad
         | 
         | and while i dont like python purely as programming language
         | (its not theoretically engaging or fun) python is top 3 or 5 in
         | practice, people like it
        
           | mhh__ wrote:
           | People like coldplay and voted for the Nazis!
        
           | jcgrillo wrote:
           | This is missing the forest for the trees. The language for a
           | university course in computation needn't be "commercially
           | relevant". What's important is whether it serves the
           | pedagogical purpose of teaching students to _think about
           | computation_.
           | 
           | Learning this or that programming language isn't _at all_
           | what it 's about--you can (and will over and over again
           | throughout your career) do that on your own time. It's about
           | developing the abstract thought pathways that _enable_ you to
           | quickly learn and think about computing.
           | 
           | I don't know why MIT chose to stop teaching the course, but
           | it sure would lower my opinion of that institution if it was
           | something to do with the direct commercial appeal of "knowing
           | Python".
        
       | ducktective wrote:
       | Recommend to also watch:
       | https://news.ycombinator.com/item?id=35945134
        
       | epolanski wrote:
       | I can't lie, I loved programming for many years. It used to be my
       | main hobby too. Trying any new language or software, reading
       | programming books, contributing to many chats across
       | libera/freenode and what not.
       | 
       | But since I have become a freelancer and I started working in
       | smaller contexts where the focus is to ship decent code at a
       | higher rate this passion has vaned. I think this is overall good
       | for me as an engineer, but has removed lots of fun and often
       | learning from my daily job.
        
         | systems wrote:
         | that probably has more to do with freelancing and consulting in
         | general, rather than something inherit in programming
         | 
         | freelancing and consulting, is usually about problem solving,
         | and even problem shooting (get rid of the problem as soon as
         | possible, elegance not required)
         | 
         | you want to be a builder a tool maker, with freelancing, i dont
         | see this happening, if you move to a consultant role maybe
         | 
         | for me consultant are a bit more into longer term relationship
         | , so maybe this should be your next step
        
           | epolanski wrote:
           | I use the term freelancer too freely maybe, I'm mostly a full
           | time consultant and I often have very long clients (years).
           | 
           | Still, I tend to choose high pressure small environments (I
           | honestly get bored in low productive corporate environments).
        
       | progx wrote:
       | ChatGPT says "But for many, the rewards outweigh the challenges,
       | making programming a fun and fulfilling activity."
       | 
       | After 36 years i can say "i only wanna get the sht done" :)
        
       | submeta wrote:
       | Sussman's and Abelson's SICP forever changed the way I think
       | about code, abstraction, modularity, in a time where my peers
       | were hacking in Pascal or C. Where I used Lisps/Scheme to create
       | a mental model of the problem, they had to do the abstraction in
       | their head and then implement it in a language that demanded low
       | level focus.
       | 
       | So I am forever thankful for having been exposed to SICP early
       | on.
        
       | davikr wrote:
       | On that note, I find that programming in certain languages is
       | more fun, or can be more comfortable, than in others. I don't
       | think I'll ever be comfortable with C++.
        
       | clbrmbr wrote:
       | I once saw Sussman speak in a group of about 20 neuroscience PhD
       | candidates in an NYU basement. He was talking about AI
       | interpretability long before it was in vougue.
       | 
       | Anyways I asked one question and he immediately sensed there was
       | an EE in the room and went to the side blackboard and showed how
       | we can figure out how an opamp works through first principles.
       | 
       | So much energy and intelligence in that man. Left an impression
       | for sure.
        
       | sharas- wrote:
       | I wonder does Gerald Sussman do TDD :D:D (for TDD'ers: the tone
       | of this comment is ironic)
        
       | sharas- wrote:
       | The more he talks about fun, the more seriously he should be
       | taken
        
       | myth_drannon wrote:
       | Before I even get into Python vs Scheme vs Others, programming
       | for fun is out of the window when deadlines, agile, story points
       | are involved.
        
       | whartung wrote:
       | Coding is fun. When you have Stuff to Do, and momentum and a
       | clear path to do it.
       | 
       | You have a ditch to dig and you just get into it.
       | 
       | Stack of simple web pages to knock out. Bunch of business rules
       | to code up. Couple of routine CRUD screens.
       | 
       | Architecting is fun. Whiteboard, pens, couple folks in the same
       | groove around the table. Sussing it out. Waving off the 0.01%
       | edge case "what ifs".
       | 
       | Fighting frameworks? Fighting tools? Wiring together badly
       | behaving black boxes?
       | 
       | That's not fun.
       | 
       | Neck deep in bad documentation. Heated discussions talking past
       | each other on a forum. Negotiating with the dumber than rocks AI
       | that had a flash of competence.
       | 
       | I like to say if I wanted to wire together badly documented black
       | boxes, I'd have become an EE.
       | 
       | I've always said: "I love programming, but I hate computers." All
       | the fiddling. Software going stupid. Updates frustrating new UX.
       | "Honey, the printer isn't working."
       | 
       | Coding is fun.
       | 
       | The rest of it, not so much.
        
         | richrichie wrote:
         | Feynman called it the computer disease. I think that is
         | understudied danger of computers - addictive play/fidget
         | machines that stunt intellectual and personal growth.
        
         | me_me_me wrote:
         | this is a deep cut. Remember the days when you just 'make and
         | run' to test your programs?
         | 
         | Now I need pipelines, helm charts, and other 5 tools +20 mins
         | of busy nothing work to see if a small change fixed something.
        
           | dr-smooth wrote:
           | Yak Shaving: https://www.hanselman.com/blog/yak-shaving-
           | defined-ill-get-t...
        
         | darkerside wrote:
         | Agree! But, coding is not (all of) software development. Said
         | another way, maybe some people like the idea of software
         | development more than they actually like software development.
        
         | samatman wrote:
         | What all the "not fun" stuff you're referring to has in common,
         | is extraneous complexity.
         | 
         | We don't pick a framework so that we can spend hours trying to
         | figure out why our model of what it does is different from what
         | it actually does. We run ./configure so we can run make, not so
         | we can spend time determining why running autoconf results in
         | the functionality we're expecting to use getting stubbed out.
         | 
         | And so on. The amount of time we have to spend on things which
         | aren't the problem can grow arbitrarily large. Manifesting a
         | solution to the actual problem, with all of its intrinsic
         | complexity, _that_ is fun.
        
         | HumblyTossed wrote:
         | > Fighting frameworks? Fighting tools? Wiring together badly
         | behaving black boxes?
         | 
         | > That's not fun.
         | 
         | <popular cloud platform> makes me want to shoot myself in the
         | face. How did we get to this point? What the fuck? Did people
         | just need a lot of busy work to make themselves feel
         | productive???
        
         | amirhirsch wrote:
         | >I like to say if I wanted to wire together badly documented
         | black boxes, I'd have become an EE.
         | 
         | I like to say that Electrical Engineers don't believe in magic;
         | Computer Scientists don't believe in physics!
         | 
         | I worked for Gerry making software for 6.002x an experimental
         | intro EE class. I remember when Gerry came back from a weekend
         | with a whole constraint propagator coded up!
        
       | carapace wrote:
       | No. Not any more. Programming should be as dull as operating a
       | sawmill.
       | 
       | I knew a guy, his construction company built half of Lake Tahoe
       | back in the day. When he retired he built himself a work shop in
       | the basement and made furniture until the day he died. It's
       | incredible furniture. I'm sitting at one of his desks, on one of
       | his chairs. 40 years old and still in excellent condition, and
       | beautiful! Helical legs. You cannot buy furniture like this in
       | the store. Handmade by a master craftsman at the height of his
       | skill and knowledge. Made solely for the love of the craft and
       | the joy of giving gifts.
       | 
       | That kind of person has fun working.
       | 
       | Computer programming IS fun to the kind of person who enjoys
       | computer programming. Those people can do what they like.
       | 
       | The rest of us want "boring" software: machines that get the job
       | done, that don't break, that don't spew private data into the
       | cloud willy-nilly, etc.
       | 
       | If making that kind of software isn't intrinsically fun for you
       | then maybe don't be a computer programmer? (We made a huge
       | mistake making the normals think that learning a bit of JS was a
       | viable career path.)
       | 
       | Industrial software shouldn't be fun (except of course to the
       | people who already find it fun to deliver solid working
       | software!)
       | 
       | - - - -
       | 
       | In re: bugs being fun little learning opportunities...
       | 
       | Margaret Hamilton worked out how to write bug-free software
       | during the Apollo 11 project. The IT industry collectively went,
       | "meh."
       | 
       | We need a serious attitude adjustment.
        
         | jcgrillo wrote:
         | Corrollary: people who build bridges don't think it's fun when
         | bridges collapse, but bridge builders have had millenia of
         | accumulated experience that inform the codes and practices of
         | bridge building.
         | 
         | That's what we lack in software. If you do electrical work that
         | isn't up to code, you as the electrician are liable. That means
         | literally that if you _touch_ a system, and you were the last
         | one to touch it, you 're liable. So it better be up to code
         | when you're done.
         | 
         | It should be the same for computerers.
        
         | dualogy wrote:
         | > Margaret Hamilton worked out how to write bug-free software
         | during the Apollo 11 project.
         | 
         | Since search engines suck so bad lately: anyone know a good
         | complete summary of that method of hers?
        
           | fragmede wrote:
           | ChatGPT is good at those kinds of questions.
        
           | Jtsummers wrote:
           | Not a summary but here are a bunch of docs on one version of
           | her approach: https://archive.computerhistory.org/resources/a
           | ccess/text/20...
           | 
           | And here is a critique:
           | https://apps.dtic.mil/sti/pdfs/ADA198753.pdf
        
       | photochemsyn wrote:
       | A better title: "Academic omputer science is (should be) fun".
       | The main points are that discovering analogies, philosophical
       | contemplation, debugging problems, coming up with good ideas and
       | gaining clarity are all fun activities - but this is mostly the
       | luxury of the academic professor, who is paid to engage in such
       | activities, and doesn't seem applicable to 'the customer wants
       | this at the end of the week!' world, other than the debatable
       | joys of debugging.
       | 
       | The majority of "programming" should probably be thought of like
       | "welding" - essentially a vocational school subject. If you want
       | to develop a new welding technology, sure that's a graduate
       | school-level academic/research undertaking, but the vast majority
       | of welders - like programmers - will work with well-characterized
       | tools and fairly simple systems. A vocational student doesn't
       | want to waste any time learning MIT/GNU Scheme and then never use
       | it again in their professional career - but an academic student
       | might find it rewarding, rather like learning to read and write
       | in Linear B as a linguistics major.
       | 
       | Certainly any work can be 'fun' - I worked in biotech labs for
       | years, some were fun and some were terrible, but that had little
       | to do with the nature of the work - it came down to quality and
       | emotional stability of co-workers and managers, whether the
       | workspace was well-designed and adequately supplied and safe to
       | work in (sloppy labs are dangerous and unhealthy), if the pay was
       | high enough to live a decent life outside of work, whether there
       | was a corporate culture of cutting corners and letting shoddy
       | work slip by (assuming you want to take some pride in doing a job
       | right) - and it's the same in any other professional situation
       | like programming industrial control systems and so on.
        
         | jcgrillo wrote:
         | Have you ever worked as a welder? I think you'll find that
         | people who are curious, thoughtful, and educated (whether
         | autodidactically or otherwise) do better work than those who
         | aren't across all professions. When I worked as a welder a long
         | time ago the people who were smart, motivated, and curious did
         | better work than those who were just punching a clock.
         | 
         | So I do think that programming is like welding, but not in the
         | way you meant it.
        
           | photochemsyn wrote:
           | When I think 'welding' I'm thinking of high-tech welding
           | systems, aluminum TIG welding, or the laser-welding assembly-
           | line shop I worked in before going to college. The people
           | running such shops are skilled professionals, certainly, even
           | if they didn't hold graduate degrees in materials science or
           | applied physics.
           | 
           | Maybe your view of welding is that it's comparable to digging
           | ditches? And one doesn't have to go into hundreds of
           | thousands of dollars in debt to attend some exclusive college
           | to be smart, motivated and curious.
        
             | jcgrillo wrote:
             | Maybe I misunderstood, I was responding to your
             | characterization of welding as a "vocational school
             | subject" whose future practitioners wouldn't want to waste
             | their time learning anything that isn't the direct
             | application of various welding processes to their first job
             | in the field. In fact, though, folks who are the best at
             | actually doing the welding are those who are most
             | interested in developing their craft as welders--whatever
             | that takes be it attaining theoretical knowledge,
             | experimenting with obsolete or rarely used processes (e.g
             | forge welding), etc.
             | 
             | Analogously, computerers who are best at computering aren't
             | the ones who just want to learn enough jquery to get that
             | computer gig.
             | 
             | So what's the point of education? Is it to illuminate the
             | path to excellence for those who choose to follow it, or is
             | it to try to land someone a job and no other thing?
        
       | Mohamedrila0418 wrote:
       | YouTube
        
       | yazzku wrote:
       | "Programming is Abstract Engineering Design"
       | 
       | "No physical limitations"
       | 
       | Is this how you get Electron apps? Mike Acton would have a thing
       | or two to say here.
        
       ___________________________________________________________________
       (page generated 2024-06-13 23:01 UTC)