guest - flak

books chapter sixteen



We’re out of coders, but wait, there’s one more! Seibel interviewed Hal Abelson for his magazine. Hal is the coauthor of Structure and Interpretation of Computer Programs and developed the MIT course 6.001. Hal started off programming what may have been an IBM 709. It had paper tape. He went to MIT for a PhD in math, and two weeks after he arrived he went to the president’s office, occupied by the Students for a Democratic Society, and asked one of the people on the floor where to get a job. They recommended the Artificial Intelligence Laboratory.

Continue reading books chapter sixteen...

Posted 2017-11-10 17:13:46 by tedu Updated: 2017-11-10 17:13:46
Tagged: bookreview

books chapter fifteen

Saving some good stuff for the almost end.


At last we come to Donald Knuth, who wrote some books. He first programmed on an IBM 650, a decimal computer. Unlike other schools, Case allowed students to actually interact with the machine, instead of simply passing cards to technicians. He contrasts this experience with Dijktra’s advice to not let students touch a machine at first. Don’s view is that it’s a common error for someone at the top of their field to propose a new, better way of teaching, but forgetting that they themselves learned the old way. I have to agree, that it’s difficult for us to know what we know, or how, and it’s hard to account for the true value of the time wasted, to use a word, learning things we don’t need.

Continue reading books chapter fifteen...

Posted 2017-10-27 22:18:08 by tedu Updated: 2017-10-27 22:18:08
Tagged: bookreview

books chapter fourteen

Some old, some new.


Bernie Cosell worked at BBN, writing code for the Interface Message Processors (IMPs), which connected the first two nodes of the ARPANET. He started as an application programmer but within a few weeks moved on to system programming and became the “czar of the PDP-1 timesharing system”. Of all the things to be a czar of... His first computer in high school, an IBM 1620, didn’t have arithmetic hardware. Even addition was performed with lookup tables.

Continue reading books chapter fourteen...

Posted 2017-10-13 17:17:31 by tedu Updated: 2017-10-13 17:17:31
Tagged: bookreview

books chapter thirteen

Apparently we’re on a biweekly schedule now.


Fran Allen wanted to be a math teacher, but took a job as a programmer at IBM to pay for school. This was long ago, back when the stereotype was that women made the best programmers because they were more detail oriented. She went on to work on the Stretch supercomputer, particularly the compiler, and other compiler optimization advancements. Her first programming experience, in college, was on the IBM 650, which was a drum machine. Instructions were stored on the drum, spinning round and round, so if you wanted your program to go fast you needed to optimize its physical layout.

Continue reading books chapter thirteen...

Posted 2017-09-30 03:12:31 by tedu Updated: 2017-09-30 03:26:52
Tagged: bookreview

books chapter twelve

A week of cautionary tales.


Ken Thompson likes chess, and helped invent UTF-8. He also did some other thing. Some of the first programs he worked on were analog, which require very careful scaling of inputs so as not to clip, so he wrote a program that ran on a digital computer to help him program the analog one. Speculation here, but I’m going to guess analog computers aren’t as helpful for writing digital programs. One of the first interesting programs he wrote was a pentaminos tiling solver, which sounds like it could be a fun exercise. He once tried to write a Fortran compiler, but it actually turned into a B compiler.

Continue reading books chapter twelve...

Posted 2017-09-16 03:31:57 by tedu Updated: 2017-09-16 03:31:57
Tagged: bookreview

books chapter eleven

B it is.


L Peter Deutsch worked on Lisp and Smalltalk for a time, but is probably best known for Ghostscript. He has some great grumpy old man quotes. He’s mostly given up on programming these days, but remains interested in music, which is another way of manipulating symbols.

Continue reading books chapter eleven...

Posted 2017-09-04 20:13:48 by tedu Updated: 2017-09-04 20:13:48
Tagged: bookreview

books chapter ten

Week X.


Dan Ingalls didn’t invent Smalltalk, but he implemented it. And invented BitBlt, possibly the most famous function in computer history? Very early on, he had a business selling a profiler that actually worked. The first version was for Fortran, but he had trouble selling it because Fortran programmers weren’t interested. “And who are they all working for? They’re all working for the government. Do they care how efficient their program is? Not really. What they really want to do is to show that the computer is overloaded and that they need a new computer and more money.” So then he switched to COBOL because businesses have limited budgets for new computers and that version was very popular.

Continue reading books chapter ten...

Posted 2017-08-26 21:32:41 by tedu Updated: 2017-08-26 21:32:41
Tagged: bookreview

books chapter nine

From card loaders to virtual servers.


Guy Steele can program in all the languages, but has no intuition whatsoever for infinite dimensional Banach spaces. Having learned to program on machines with only thousands of words of memory in the complete system, he too laments that you can no longer understand everything that’s happening in a computer. He mentions studying the disk routines, and while I can read the source, there’s quite a bit of it (even in OpenBSD, which has a really freaking small SCSI stack compared to other systems) and even below that, my SSD has more firmware than his first computer had memory. On the other hand, I don’t miss having to write a card loading routine that fits onto a single card and can only use instructions with 12 bit opcodes because that’s all that the card has room for, even though the computer has 16 bit instructions.

Continue reading books chapter nine...

Posted 2017-08-18 17:13:45 by tedu Updated: 2017-08-18 17:13:45
Tagged: bookreview

books chapter eight

Smaller is better.


Peter Norvig has been around for a long time, writing lots of code. Back in the day, a lot of programming was done solo, and you wrote everything from scratch. Now with something like Ruby on Rails, it’s very important to understand the interfaces rather than the insides.

Continue reading books chapter eight...

Posted 2017-08-12 21:01:32 by tedu Updated: 2017-08-12 21:01:32
Tagged: bookreview

books chapter seven

Lucky sevens.


Simon Peyton Jones doesn’t even have a PhD, but he’s got something even better: GHC. Pure and functional Haskell is radical and elegant and just what we all need to avoid getting stuck in a local optimum of imperative programming. One of the nice properties of a lazy evaluated language is that it’s easy to make it modular. It’s not hard to make a generator in a stricter language, but there’s less guarantee that the interface will be accepted by all your other components. I hadn’t really considered this before, but a C function that takes an array is not trivially converted to taking a generator struct. Or one could start by making every function take a generator, but that’s a lot of work. But then we only need to step up to C++ to get iterators and the dilemma fades again.

Continue reading books chapter seven...

Posted 2017-08-05 19:37:45 by tedu Updated: 2017-08-05 19:37:45
Tagged: bookreview

books chapter six

Making some headway.


Joe Armstrong created Erlang in 1986, which is quite some time ago, and he learned to program even before that. You’d write a program, then somebody else would type it onto punch cards, then you’d feed it to the computer, and then you’d get an error. One error, the first encountered, after which your program was done. And that was with about a one week turnaround time. So he very quickly learned the advantages of concurrent programming, writing many small test programs for every function, and submitting that as a batch. Then, once all the parts worked, submit the final program that ties it all together.

Continue reading books chapter six...

Posted 2017-07-28 16:45:33 by tedu Updated: 2017-07-28 16:45:33
Tagged: bookreview

books chapter five

A few different perspectives this week.


All the previous interviewers were generally kind of down on Java, but now we’re talking to Joshua Bloch, Java Architect at Google, who’s pretty obviously down with Java. He also likes the Design Patterns book, in stark contrast to some previous subjects.

Continue reading books chapter five...

Posted 2017-07-21 18:02:06 by tedu Updated: 2017-07-21 18:02:06
Tagged: bookreview

books chapter four

Keep it simple.


Moving back in time, before there was JSON there was JavaScript, invented by Brendan Eich. Before Netscape, he had worked with a number of systems, doing some low level unix work. He makes a great remark that the first time he looked at the implementation of the C preprocessor, it was a “huge pointer stew” which is probably an apt description for a lot of string fiddling code.

Continue reading books chapter four...

Posted 2017-07-14 15:36:34 by tedu Updated: 2017-07-14 15:36:34
Tagged: bookreview

books chapter three

How big is the ideal team? How do we organize it?


Douglas Crockford, inventor of JSON. At the time of the interview, a great battle was being waged between standardization of ES4 vs ES3.1, which became ES5. He learned to program long ago, when memory was small and CPUs were small, which required a lot of effort to make things fast. “Eventually we got over that, so today we’re writing big applications in JavaScript that run in a browser. It’s such a profoundly inefficient environment compared to the stuff that we used to do, but Moore’s Law sort of made it all OK.” Sort of OK sounds about right. People do it and it does work, but not so well I don’t complain about it.

Continue reading books chapter three...

Posted 2017-07-07 19:24:27 by tedu Updated: 2017-07-07 23:41:59
Tagged: bookreview thoughts

books chapter two

Moving on, getting in to some good stuff.


Brad Fitzpatrick has never lived in a world without the Internet, founded LiveJournal, and says lots of things I agree with, so he must be really smart.

Continue reading books chapter two...

Posted 2017-06-30 19:28:10 by tedu Updated: 2017-06-30 19:28:10
Tagged: bookreview programming thoughts

books chapter one

I wanted to read, or reread, some books, but couldn’t decide which ones, so figured reading all of them at once would be the best solution. In particular, I’d read Coders at Work about the time it came out, and liked it, then skimmed it again recently. The second time through I still liked it, but I noticed new things. I should reread the whole thing. And what about these other books I’m always certain to install on each Kindle but never quite read? My favorite unread books.

Continue reading books chapter one...

Posted 2017-06-23 15:55:11 by tedu Updated: 2017-06-23 15:55:11
Tagged: bookreview programming thoughts


I’ve had a paper copy of Transmetropolitan Volume 1 sitting around the house for about a year, but finally sat down and read it last week. Immediately ordered the full set of ten volumes. (This was an easier decision when the Kindle version was only $6.) I was startled by how it’s a marvelous commentary on current culture and events. At first glance, I saw the copyright date for the collected volume, which is 2009, but the original issues were published starting in 1997. Twenty years later it’s still fresh.

Continue reading Transmetropolitan...

Posted 2016-12-01 23:57:20 by tedu Updated: 2016-12-01 23:57:20
Tagged: bookreview

off to be the wizard

Amazon started adding animations to selected books (Kindle in Motion, they call it). I figured I’d give it a try and read Off to Be the Wizard, by Scott Meyer of Basic Instructions fame. There’s not really much to animate here, only about one illustration per chapter, but now they dance back and forth.

Continue reading off to be the wizard...

Posted 2016-10-20 05:33:32 by tedu Updated: 2016-10-20 05:34:16
Tagged: bookreview


Strolling through the book store, among the new titles on display in the politics section was Ratfucked by David Daley. What could this be about? The subtitle, The True Story Behind the Secret Plan to Steal America’s Democracy, conjured up images of telepathic lizard men so I passed it by. A little while later, though, I saw the New Yorker’s review and summary which sounds a lot better. It describes a plan to target particular districts in local elections, win control of the state, then aggressively gerrymander the map to ensure future victories as well. Of particular interest, the summary focused on some local Pennsylvania elections and the damned Arlen Specter library. Sounds great, this is worth a read. In fact, the cover image subtitle for the Kindle version, How the Democrats Won the Presidency But Lost America, is much more accurate and less sensational. (The book title is actually stylized Ratf**ked because the author is a pussy.)

Continue reading ratfucked...

Posted 2016-07-12 13:41:55 by tedu Updated: 2016-11-09 00:32:02
Tagged: bookreview politics thoughts

effect and cause

I’m reading Most Secret War by R. V. Jones, an English physicist’s account of his intelligence work in the Air Staff during World War II. I’m only up to the beginning of 1941, but it’s been a terrific read so far, with many enlightening anecdotes. A few dealing with erroneous assumptions were particularly good.

Continue reading effect and cause...

Posted 2016-03-03 17:26:40 by tedu Updated: 2016-03-03 17:26:40
Tagged: bookreview thoughts