News:

For my part, I've replaced optimism and believing the best of people by default with a grin and the absolute 100% certainty that if they cannot find a pig to fuck, they will buy some bacon and play oinking noises on YouTube.

Main Menu

Why my computer is magickal

Started by NewSpag, May 31, 2012, 06:34:32 AM

Previous topic - Next topic

NewSpag

Apologies.  In hindsight this is the wrong subforum.  I wrote this up and posted it here because ... well I'm stupid.  Literate Chaotic probably would have been better.  My lack of the necessary literacy kept me out.  Pretend that you got here via Literate Chaotic if you wish.

QuoteOne day I realized life was pointless.  I've been celebrating ever since.
Quote
There's beauty in everything so lets destroy it all together.
Sometimes Always is Never.  For everything else there's Mastercard.

The Good Reverend Roger

Quote from: The Good Reverend Roger on June 01, 2012, 06:31:41 PM
Quote from: Bebek Sincap Ratatosk on June 01, 2012, 05:11:17 PM
Quote from: The Good Reverend Roger on June 01, 2012, 04:37:55 PM
Quote from: Bebek Sincap Ratatosk on June 01, 2012, 04:09:51 PM
Donald Kunth made a powerful 'computer programming is magic' metaphor in his book "The Art of Computer Programming".

I now hate Donald Kunth.

Who is he?

http://en.wikipedia.org/wiki/Donald_Knuth

And note I said 'metaphor', he wasn't saying it 'is' magic, but used a very creative metaphor as the introduction to his book (generally considered THE Book on program/algorithm analysis.

Even as a metaphor, it makes technology look like something reserved for a priesthood of some kind, instead of being a rational thing anyone can learn if they take the time.

On the other hand, this explains the attitude of many IT professionals.
" It's just that Depeche Mode were a bunch of optimistic loveburgers."
- TGRR, shaming himself forever, 7/8/2017

"Billy, when I say that ethics is our number one priority and safety is also our number one priority, you should take that to mean exactly what I said. Also quality. That's our number one priority as well. Don't look at me that way, you're in the corporate world now and this is how it works."
- TGRR, raising the bar at work.

The Good Reverend Roger

Quote from: NewSpag on June 01, 2012, 07:00:32 PM
Apologies.  In hindsight this is the wrong subforum.  I wrote this up and posted it here because ... well I'm stupid.  Literate Chaotic probably would have been better.  My lack of the necessary literacy kept me out.  Pretend that you got here via Literate Chaotic if you wish.

Or I could move the thread.
" It's just that Depeche Mode were a bunch of optimistic loveburgers."
- TGRR, shaming himself forever, 7/8/2017

"Billy, when I say that ethics is our number one priority and safety is also our number one priority, you should take that to mean exactly what I said. Also quality. That's our number one priority as well. Don't look at me that way, you're in the corporate world now and this is how it works."
- TGRR, raising the bar at work.

Freeky

I sort of liked it, but it got really hard to parse in places.  Too many sentences had too much shit in it. 

6/10 final draft (I'm probably being a bit generous here), 8/10 rough draft.

Triple Zero

NewSpag, I'm assuming you'd like to have this thread moved then. Which I shall do for you, after this post.


Quote from: The Good Reverend Roger on June 01, 2012, 04:37:55 PM
Quote from: Bebek Sincap Ratatosk on June 01, 2012, 04:09:51 PMDonald Kunth made a powerful 'computer programming is magic' metaphor in his book "The Art of Computer Programming".
I now hate Donald Kunth.

Who is he?

Donald Kunth is revered by dyslexic computer programmers all over the world.


Also, Rat, I'd like to see that quote because I think you must have been reading too much into it, he's way too rational that it makes me strongly doubt he was thinking of magick when he wrote that.

We're talking about the guy that wrote TeX, still the best typesetting software used for every serious exact sciences publication (nothing else makes math formulas look as good as TeX). And why? Because he didn't like the way a new edition of his second book came out with these newfangled digital typesetting machines: "Determined to develop a solution, Knuth stopped work on his books and devoted himself to typography for the next 10 years. The result: The TeX typesetting system and the Metafont font description language. The combination of the two offered powerful typographic control that hasn't been matched (even today), especially for complex typesetting like mathematical formulas."

Then, when he was done, he mathematically proved the correctness of the TeX software and declared it done. The design was frozen after version 3.0, and no new feature or fundamental change will be added, so all newer versions will contain only bug fixes. Since version 3, TeX has used an idiosyncratic version numbering system, where updates have been indicated by adding an extra digit at the end of the decimal, so that the version number asymptotically approaches π. This is a reflection of the fact that TeX is now very stable, and only minor updates are anticipated. The current version of TeX is 3.1415926; it was last updated in March 2008.

Okay maybe he is a bit crazy. He gave us TeX, though. I'd still like to see that quote!
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.

Bebek Sincap Ratatosk

Quote from: The Good Reverend Roger on June 01, 2012, 06:31:41 PM
Even as a metaphor, it makes technology look like something reserved for a priesthood of some kind, instead of being a rational thing anyone can learn if they take the time.

No it doesn't actually. It's comparing the mythology of magic with what computer programmers do. He compares writing functions and programs to creating 'entities' that do your work for you. He compares the languages to archaic incantations etc.

That being said, Kunth does believe that computer programming is an Art. Anyone can splash some paint on a canvas, but not everyone can create a great work of art. For Kunth (and many other CS type people) programming is the same. There are a lot of tools today that can let almost anyone crank out a formulaic set of code to achieve some function... but for guys like Kunth, real programming is an art and requires a particular type of person with a brain that works in a particular way.

My copy is somewhere in the States, or I'd pull out some of the better quotes from his introduction. I can't seem to find a pdf version online.

I did find a quote from Fred Brooks (another programming giant of bygone years) which utilizes the same sort of metaphor:

QuoteThe magic of myth and legend has come true in our time.  One types the correct incantation on a keyboard, and a display screen comes to life, showing things that never were nor could be.... The computer resembles the magic of legend in this respect, too.  If one character, one pause, of the incantation is not strictly in proper form, the magic doesn't work.  Human beings are not accustomed to being perfect, and few areas of human activity demand it.  Adjusting to the requirement for perfection is, I think, the most difficult part of learning to program.  ~Frederick Brooks

There was a quote from Kunth in an interview as well:

Quote'The way a lot of programming goes today isn't any fun because it's just plugging in magic incantations — combine somebody else's software and start it up

At Stanford, (I know this only second hand) Kunth was called the "High Mage at the Stanford School of White Magic" and the The Art of Computer Programming as his Spell Book.

Using magic in programming terms, engineering terms, hacker terms is pretty common. In The Jargon file (aka The New Hacker's Dictionary) there's a story from MIT:

QuoteSome years ago, I (GLS) was snooping around in the cabinets that housed the MIT AI Lab's PDP-10, and noticed a little switch glued to the frame of one cabinet. It was obviously a homebrew job, added by one of the lab's hardware hackers (no one knows who).
You don't touch an unknown switch on a computer without knowing what it does, because you might crash the computer. The switch was labeled in a most unhelpful way. It had two positions, and scrawled in pencil on the metal switch body were the words `magic' and `more magic'. The switch was in the `more magic' position.

I called another hacker over to look at it. He had never seen the switch before either. Closer examination revealed that the switch had only one wire running to it! The other end of the wire did disappear into the maze of wires inside the computer, but it's a basic fact of electricity that a switch can't do anything unless there are two wires connected to it. This switch had a wire connected on one side and no wire on its other side.

It was clear that this switch was someone's idea of a silly joke. Convinced by our reasoning that the switch was inoperative, we flipped it. The computer instantly crashed.

Imagine our utter astonishment. We wrote it off as coincidence, but nevertheless restored the switch to the `more magic' position before reviving the computer.

A year later, I told this story to yet another hacker, David Moon as I recall. He clearly doubted my sanity, or suspected me of a supernatural belief in the power of this switch, or perhaps thought I was fooling him with a bogus saga. To prove it to him, I showed him the very switch, still glued to the cabinet frame with only one wire connected to it, still in the `more magic' position. We scrutinized the switch and its lone connection, and found that the other end of the wire, though connected to the computer wiring, was connected to a ground pin. That clearly made the switch doubly useless: not only was it electrically nonoperative, but it was connected to a place that couldn't affect anything anyway. So we flipped the switch.

The computer promptly crashed.

This time we ran for Richard Greenblatt, a long-time MIT hacker, who was close at hand. He had never noticed the switch before, either. He inspected it, concluded it was useless, got some diagonal cutters and diked it out. We then revived the computer and it has run fine ever since.

We still don't know how the switch crashed the machine. There is a theory that some circuit near the ground pin was marginal, and flipping the switch changed the electrical capacitance enough to upset the circuit as millionth-of-a-second pulses went through it. But we'll never know for sure; all we can really say is that the switch was magic.

I still have that switch in my basement. Maybe I'm silly, but I usually keep it set on `more magic'.

TNHD also has definitions for 'magic', 'black magic', 'deep magic', 'wizardly' and other terms that make the magic/prgogramming/hacking metaphor.

I've read more than one code comment that will say something like:

Magic Happens Here.

Generally meaning that the developer did something particularly confusing/tricky or figured out a hack to fix a problem, but can't quite explain why it works the way it does (that's generally called "Black Magic"). Back in the day when I spent a lot of time with hackers (the old kind) CS geeks, my old mentor and kick ass engineer as well as most of his buddies... using the 'magic' metaphor was really common, not just in programming but in engineering as well.

When I was the sound engineer for a theater (stage kind) we were installing some new equipment and had to tweak a lot of the configuration for optimal sound throughout the auditorium. There was one section that we couldn't get quite right, so Wayne (my old mentor) called up his favorite 'audio magician' to help us figure it out.

Most of the old CS/Engineering guys I've met are very rational and extremely creative. Using metaphor is part of that creativity.
- I don't see race. I just see cars going around in a circle.

"Back in my day, crazy meant something. Now everyone is crazy" - Charlie Manson

Triple Zero

Quote from: Bebek Sincap Ratatosk on June 02, 2012, 12:43:58 PM
Quote from: The Good Reverend Roger on June 01, 2012, 06:31:41 PM
Even as a metaphor, it makes technology look like something reserved for a priesthood of some kind, instead of being a rational thing anyone can learn if they take the time.

No it doesn't actually. It's comparing the mythology of magic with what computer programmers do. He compares writing functions and programs to creating 'entities' that do your work for you. He compares the languages to archaic incantations etc.

So you're saying he calls it magic without calling it "occult", basically?

What do you mean by "archaic", then?

QuoteThat being said, Kunth does believe that computer programming is an Art. Anyone can splash some paint on a canvas, but not everyone can create a great work of art. For Kunth (and many other CS type people) programming is the same. There are a lot of tools today that can let almost anyone crank out a formulaic set of code to achieve some function... but for guys like Kunth, real programming is an art and requires a particular type of person with a brain that works in a particular way.

HIS NAME. IS SPELLED. KNUTH.

Pronounced like "GNU" with a "th" on the end.

Still love to see those quotes. Though I admit, as a coder, I should probably just get a copy myself. He wrote TeX, after all.

QuoteI did find a quote from Fred Brooks (another programming giant of bygone years) which utilizes the same sort of metaphor:

QuoteThe magic of myth and legend has come true in our time.  One types the correct incantation on a keyboard, and a display screen comes to life, showing things that never were nor could be.... The computer resembles the magic of legend in this respect, too.  If one character, one pause, of the incantation is not strictly in proper form, the magic doesn't work.  Human beings are not accustomed to being perfect, and few areas of human activity demand it.  Adjusting to the requirement for perfection is, I think, the most difficult part of learning to program.  ~Frederick Brooks

I'd have to say he missed the greater magic for the smaller magic. The reason why, from a young age, I got into programming was not the "magic" that a computer perfectly executes the instructions you give it. It's a machine, so of course that's what it does (Brooks being born in 1931 that might not be as obvious as it is to someone born in 1980). No, from the beginning on, my quest was to get the computer to output more than the sum of my inputs. That's why I didn't write (much) games like any other young programmer, but coded artificial life simulations, why I got into the Demoscene and ended up doing (but unfortunately not finishing, due to health reasons) a Masters specialized in Machine Learning.

That sort of thing, I wouldn't call "magic" (except for a few wicked Demos), but I would call it "occult", in a very certain sense.

Fred Brooks seems a smart dude, however, as he wrote The Mythical Man-Month.

Just that, again, I'm not at all convinced that he used the term "magic" in a sense that's really like the way it's traditionally understood, nowadays.

Instead, it rather more seems based on his idea of "magic" in the sense that it's used in fiction. I wonder when he said this, btw. Might be not that long ago (20-30y), as he is 81 and still alive.

QuoteThere was a quote from Kunth in an interview as well:

KNUTH!!!! :argh!:

Quote
Quote from: KNUTH'The way a lot of programming goes today isn't any fun because it's just plugging in magic incantations — combine somebody else's software and start it up

You're aware that the term "magic" has a rather wide spectrum of meanings, right?

In this case "magic incantations" means "subroutines that one calls but does not know what they do, nor care, but they work". Except it's perfectly possible to find out exactly how they work, not just from low-level detail, but also because a good subroutine library has the expected parameters, side-effects and return values defined exactly (and if a vague definition behaves unexpectedly most "programmers today" would consider the library useless). So it's not exactly a positive usage of the word "magic".

Also I disagree with the sentiment because Python programming (which uses a lot of these "high level incantations") is in fact a LOT of fun :) (same goes for many other scripting languages such as Perl and Ruby). But that is another discussion.

QuoteAt Stanford, (I know this only second hand) Kunth was called the "High Mage at the Stanford School of White Magic" and the The Art of Computer Programming as his Spell Book.

KNUTH KNUTH KNUTH KNUTH

QuoteUsing magic in programming terms, engineering terms, hacker terms is pretty common. In The Jargon file (aka The New Hacker's Dictionary) there's a story from MIT:

QuoteSome years ago, I (GLS) was snooping around in the cabinets that housed the MIT AI Lab's PDP-10, and noticed a little switch glued to the frame of one cabinet. It was obviously a homebrew job, added by one of the lab's hardware hackers (no one knows who).
You don't touch an unknown switch on a computer without knowing what it does, because you might crash the computer. The switch was labeled in a most unhelpful way. It had two positions, and scrawled in pencil on the metal switch body were the words `magic' and `more magic'. The switch was in the `more magic' position.

I called another hacker over to look at it. He had never seen the switch before either. Closer examination revealed that the switch had only one wire running to it! The other end of the wire did disappear into the maze of wires inside the computer, but it's a basic fact of electricity that a switch can't do anything unless there are two wires connected to it. This switch had a wire connected on one side and no wire on its other side.

It was clear that this switch was someone's idea of a silly joke. Convinced by our reasoning that the switch was inoperative, we flipped it. The computer instantly crashed.

Imagine our utter astonishment. We wrote it off as coincidence, but nevertheless restored the switch to the `more magic' position before reviving the computer.

A year later, I told this story to yet another hacker, David Moon as I recall. He clearly doubted my sanity, or suspected me of a supernatural belief in the power of this switch, or perhaps thought I was fooling him with a bogus saga. To prove it to him, I showed him the very switch, still glued to the cabinet frame with only one wire connected to it, still in the `more magic' position. We scrutinized the switch and its lone connection, and found that the other end of the wire, though connected to the computer wiring, was connected to a ground pin. That clearly made the switch doubly useless: not only was it electrically nonoperative, but it was connected to a place that couldn't affect anything anyway. So we flipped the switch.

The computer promptly crashed.

This time we ran for Richard Greenblatt, a long-time MIT hacker, who was close at hand. He had never noticed the switch before, either. He inspected it, concluded it was useless, got some diagonal cutters and diked it out. We then revived the computer and it has run fine ever since.

We still don't know how the switch crashed the machine. There is a theory that some circuit near the ground pin was marginal, and flipping the switch changed the electrical capacitance enough to upset the circuit as millionth-of-a-second pulses went through it. But we'll never know for sure; all we can really say is that the switch was magic.

I still have that switch in my basement. Maybe I'm silly, but I usually keep it set on `more magic'.

Yeah. I think again you read too much into this.

First of, it's an MIT story. They do enjoy their folklore. And given US culture, it's probably been retold larger-than-life a few times over.

The PDP-10 implies this story must date from the 70s or early 80s at latest. Back then computers were electronic devices, full of the quirky antics that some may know from home-built electronics. So I assume some ancient hacker* noticed the computer (probably with a manufactoring error) would exhibit strange behaviour if a certain unconnected (!) wire was switched on or off. This is not strange, this shit happens with unshielded electronics all the time, my friend's building a theremin, trust me I know :) Apparently there were use-cases where he did or did not want this wire so he connected a switch to it. Another likely scenario would be the same except with the roles of switch and wire exchanged.
Anyway, because this is one of those weird unshielded electronics flukes that are quite unexplainable (if you can't be arsed to measure and eradicate it at the root of the problem), the hacker figured "well now it works" and not having a clue wtf was going on he labeled the switch "magic / more magic".

And then a later generation (still early 80s at most) of MIT "hackers" discovers this and appreciates the sense of humour and BAM! Folklore!

So this is kind of the reverse to the Fred Brooks example. "I'm too lazy to find out what is going on but it works so I'll just label it "magic"".


* in those days "hacker" meant 75% electric engineer, 25% computer programmer

QuoteTNHD also has definitions for 'magic', 'black magic', 'deep magic', 'wizardly' and other terms that make the magic/prgogramming/hacking metaphor.

I've read more than one code comment that will say something like:

Magic Happens Here.

Generally meaning that the developer did something particularly confusing/tricky or figured out a hack to fix a problem, but can't quite explain why it works the way it does (that's generally called "Black Magic"). Back in the day when I spent a lot of time with hackers (the old kind) CS geeks, my old mentor and kick ass engineer as well as most of his buddies... using the 'magic' metaphor was really common, not just in programming but in engineering as well.

No ... that's NOT right at all!

I encountered the same type of code comments and either:

1 - it was somebody smart that couldn't be arsed to type up a long explanation and didn't feel it was needed.

2 - it was somebody dumb who got the code to work by fudging some parameters via trial-and-error but they actually have no fucking clue why this particular constant definition makes the code work and tuning it a bit higher or lower makes it fail.

In the second case, RUN LIKE HELL. You know what other comments I've encountered in similar situations? "Here be dragons". Which is probably a LOT more accurate than calling it "magic".

In the first case, hopefully you can smack the smart person to write better source comments because as the geek is perfectly expected to know it's fucking impossible to distinguish sufficiently advanced technology (1) from "magic" (2) so he'd better document which one it is.



Otherwise, let's just use the word "engineering", maybe? :)
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.

minuspace

I found unix / linux to have entertaining allusions to magic built into it's language.  Like how you can invoke a deamon or bless a volume and touch a file in prd to create it.  At least some of that pagan imagery is intentionally funny.

Anna Mae Bollocks

Like that "Mailer Daemon" that sends emails back when they bounce?
Scantily-Clad Inspector of Gigantic and Unnecessary Cashews, Texas Division

minuspace

Yea, I suppose angel is too much angle?

Bebek Sincap Ratatosk

OK, I think I see the disconnect here.

When I first read The Art of Computer Programming, The New Hacker Dictionary and got used to the 'magic' term in engineering...I had never read Crowley, Wilson, done a ritual or anything like that. I was still a good little JW and 'magic' in the sense I usually discuss it here was demonic stuff that would invite the demons to come take over your body.

I didn't AT ALL intend to say that KNUTH ;-) or my old mentor or anyone in CS thinks computers/programming etc are 'magical' in the Crowley/Wilson kind of sense. I thought that was clear when I said they used it as a metaphor.

Quote from: Bebek Sincap Ratatosk on June 01, 2012, 04:09:51 PM
Donald Kunth made a powerful 'computer programming is magic' metaphor in his book "The Art of Computer Programming".

I thought that was appropriate since the OP appeared to be using metaphor as well.

Sorry for any confusion.

*A daemon (a process that runs in the background and handles various tasks) is taken from Greek mythology. Daemons were lesser spirits that handled jobs that the Gods couldn't be bothered to handle.
- I don't see race. I just see cars going around in a circle.

"Back in my day, crazy meant something. Now everyone is crazy" - Charlie Manson

Anna Mae Bollocks

Quote from: Bebek Sincap Ratatosk on June 02, 2012, 11:34:59 PM
*A daemon (a process that runs in the background and handles various tasks) is taken from Greek mythology. Daemons were lesser spirits that handled jobs that the Gods couldn't be bothered to handle.

Thanks, makes sense now.
Scantily-Clad Inspector of Gigantic and Unnecessary Cashews, Texas Division

Bebek Sincap Ratatosk

Quote from: Anna Mae Bollocks on June 03, 2012, 02:57:52 AM
Quote from: Bebek Sincap Ratatosk on June 02, 2012, 11:34:59 PM
*A daemon (a process that runs in the background and handles various tasks) is taken from Greek mythology. Daemons were lesser spirits that handled jobs that the Gods couldn't be bothered to handle.

Thanks, makes sense now.

Literary, Occult, Mythology references (and of course Puns) are a big part of the geek lexicon.

http://www.outpost9.com/reference/jargon/jargon_toc.html

The Jargon File (aka New hacker's Dictionary) was where I first found references to eris, discordianism, SubGeniuses etc. I didn't pay much attention to them back then... but there's definitely an influence among some hackers.

The Slackware distro of Linux for example. Their mascot is Tux the pengiun (the official linux mascot) puffing on a pipe of frop, Bob Dobbs style.

Every distribution of UNIX ships with the command 'date' which gives you the date. Almost every distribution of Linux (and many other open linux variants) ships with ddate, which gives you the current date according to the Discordian calendar.

Also 'slack' in computer slang references space on disk set aside for a file, but doesn't actually contain any data.

In IRC EFNet stands for the 'Eris Free Network' because an earlier incarnation of the network included a server from Berkeley named eris. It often caused quite a bit of havoc on the network, ironically.

One of the more famous hackers of the 80's Karl Kotch went by the handle 'hagbard', his computer was named FUCKUP (both Illuminatus references) and due to some mental problems/cocaine (so THEY say  :wink: ) actually believed he was hacking/fighting against the Illuminati.

The first person I ever met that actually claimed to be a Discordian was John Draper aka Captain Crunch. This guy was an early phone phreaker, he figured out how to hack public telephones using a whistle from a Cap'n Crunch cereal box and used the experimentation to build small electronic devices to achieve the same effect... he and a couple other college students sold these boxes to other college students so they could make free calls home... using money and skills from that adventure the two other students went on to build a PC in their garage, then hired John to do some work for them. Their names were Steve Jobs and Steve Wozniak (the second Discordian I ever met).

:lulz:
- I don't see race. I just see cars going around in a circle.

"Back in my day, crazy meant something. Now everyone is crazy" - Charlie Manson

The Good Reverend Roger

Um, sir, you dropped a name back there.

Lemme get that for ya.
" It's just that Depeche Mode were a bunch of optimistic loveburgers."
- TGRR, shaming himself forever, 7/8/2017

"Billy, when I say that ethics is our number one priority and safety is also our number one priority, you should take that to mean exactly what I said. Also quality. That's our number one priority as well. Don't look at me that way, you're in the corporate world now and this is how it works."
- TGRR, raising the bar at work.

Bebek Sincap Ratatosk

Quote from: The Good Reverend Roger on June 05, 2012, 02:23:15 PM
Um, sir, you dropped a name back there.

Lemme get that for ya.

Dropped a few... but in the context of personal experience, rather than an appeal to authority. I could have said that Draper and Woz were both Discordian, but the only evidence I had was that they said it in front of me. I didn't have a link handy.
- I don't see race. I just see cars going around in a circle.

"Back in my day, crazy meant something. Now everyone is crazy" - Charlie Manson