The Northern Spy
http://www.TheNorthernSpy.com Copyright ©2006 Rick Sutcliffe
Think Upon a Thunk
By Rick Sutcliffe, November 2006
In his alter ego as a university GWF (Great White Father) on programming notations, the Spy has a vast collection of tomes, encompassing old standbys like Pascal, Modula-2, and C, speciality notations like Prolog, and Lisp, once-upon-a-times Fortran, COBOL, RPG, Euclid, APL, J, LOGO, Ada, and BASIC, newer workhorses in the Java and C++ vein, and a shelf full of general volumes on programming language design principles, software engineering, data structures, algorithms, and the like -- all good light reading when he has a free twenty seconds or so.
But no notation collection today would be complete without representation from the fast growing web programming sector. Over the years, books on HTML, CSS, ECMAScript (proper name for JavaScript), Perl, Python, PHP, SQL, and now Ruby have come to occupy the primary real estate above the Spy's desk, with many others shuffled to corner shelves, halfway along the process of being relegated to the university library.
Others he's retained for sentimental reasons. An Applesoft book, language card UCSD Fortran, Pascal and Modula-2 manuals share space with 6502 and 68000 Assembler texts. Remember MPW, Farsight, IX-Box, Sempersoft, CodeWarrior, and Logitech? Let's see. Over there is a Screenwriter manual, off to the right, a copy of the dragon book, and in the file cabinet resides the assembler listing of the Spy's Ampermanager and DOS 3.3.5, (both distributed by the A.P.P.L.E. Co-op, if anyone remembers that far back). One hidden spot boasts a good quality copy of the original Apple ][ red book.
But the churn of texts and manuals has changed the shelf in less obvious ways. While publishers Addison-Wesley, MacMillan, Prentice-Hall, Wiley, and McGraw Hill still dominate the math/physics side of the office and even to some extent, the computing science textbooks, no one house has claimed a majority of the shelves in the reference computing section until recently. However, a quick scan of what he keeps within ready reach today reveals dozens of working language volumes hailing from a single publisher.
Who? Glad you asked. They're all from O'Reilly Media Inc., of Sebastopol California (that's in the US of A, in case you also are somewhat unfamiliar with foreign countries, and on Gravenstein road, of all things. We just finished off the last of this year's crop of Gravensteins, and started on the Northern Spys. But I digress.) O'Reilly has now become the premiere house for working programmers needing to purchase how-to and reference books, the kind you tend to collect, once you've learned the basics from a good text.
Indeed, not only does O'Reilly have the goods, they deliver them. The Spy recalls once putting in an order late afternoon on a weekday and receiving the books in the next afternoon's campus mail delivery. Remarkable, and kudos to a bunch who are reinventing good publishing and book distribution. The industry needs it.
Enough generalities, on to specifics
Two recent O'Reilly offerings offer a study in contrasts, but meet their stated goals admirably. Both illustrate how a company can profitably and beneficially identify and occupy a critical industry niche (in this case providing professionals with programming books of all types).
The first is Ruby on Rails Up and Running by Bruce A Tate and Curt Hibbs. Designed to get a developer into action with a simple framework application in this new AJAX environment/language that seems to be taking the net by storm, RRR takes the reader from installation through model-view-controller implementation, data base essentials, scaffolding, and AJAX facilities to a simple running application in a well-thought-out and engaging 162 pages. RRR is neither intended for novice programmers nor is it a language reference. Its intention is to introduce a new kind of thinking and a novel environment to experienced programmers in a quick-and-clean manner.
Tate and Hibbs succeed admirably. Buy this book if you want to get your fingers wet with Ruby. You'll need more to be productive, but you won't be disappointed with this intro. Moreover, in his role as a webhost, the Spy went along far enough to install Ruby on Rails on a server and experiment. The whole thing has interesting possibilities, especially when a developer wants to get a shared database operating quickly with robust support.
A second new O'Reilly book now claiming prime shelf space right above the Spy's keyboard, is PHP Cookbook (2nd edition) by David Sklar and Adam Trachtenberg. Cookbook style is quite different from that used for a textbook, a language manual, or a "getting started" introduction like RRR. PHPC is nearly 800 pages of over 250 "recipes"-- short how-tos for programmers who know the language somewhat, but need an assist to handle common tasks they're already familiar with from other languages or environments.
When you know one programming notation, you don't need a text to learn another. Rather, you need quick and unambiguous answers (with examples!) to questions like how to do sequence, selection, repetition, and composition, what are the basic data types and how do you handle them, how do you deal with errors, files, directories, performance, localization, graphics, regular expressions, and security. For an Internet programming notation like PHP, you also want simple tutorials on web basics, forms, SQL, XML, SOAP, and interfaces to other net services like mail. PHPC has all this, plus comments on installing and using PEAR and PECL packages. Did we say unambiguous? Nothing bugs the Spy more than a theoretical description that admits of multiple interpretations, none of them the right one. There's nothing like examples to make the point.
Sklar and Trachtenberg have done a terrific job revising and expanding an already good first edition and adding coverage for PHP5. The Spy's only caveats: the authors don't always clearly say what works in PHP4 and which techniques require version 5. This could be an issue in some cases, because not many commercial web hosts offer PHP5 yet due to compatibility issues with old scripts (for instance, the new object model). Also, the section on security could have been expanded to include more discussion of php.ini and .htaccess settings, and how they interact with Apache depending on whether one runs in module or cgi (phpsuexec) mode. After all, this substantially affects how one writes file access code. Still, these are quibbles. Besides, this aspect of the PHP security model is still being tightened up, and more changes are coming.
The bottom line: if you build quality websites, you almost certainly use PHP. Buy and use this book. You won't regret it.
The bottom bottom line: Pay close attention to O'Reilly offerings. If you're a programmer, they've probably got your book. Wish there'd been a publisher like them around a few years ago when the Spy was struggling with Merrill and its successors over his Modula-2 textbook.
The passing of giants is a regular happening in the computing industry. After all, the whole thing is only a few years old, barely into its adolescence, and subject to growing pains. Corporate growing pains all too often involve takeovers, mergers, and just plain extinction.
Which brings us to the case in point. Qualcomm, maker of the venerable eMail program Eudora recently announced that its program will turn into an open source collaboration with the Mozilla foundation, its features becoming an overlay atop Thunderbird. One more version as Eudora, apparently, then it's on to other pastures. This may not be extinction, but it's surely a passing of some sort.
Of course, the press bumph will tell us this is a "good thing", but the Spy isn't so sure. He's been using Eudora since not long after it was introduced in 1988 and developer Steve Dorner was working through the University of Illinois. But time and software moves on, and most people today are using Apple's Mail, something the Spy has considered and rejected a few times because of its lack of some Eudora features he uses rather much. Meanwhile, he anticipates it will take a year or two to achieve the stated goals. Who knows what market will remain for the Son of Eudora by then?
Hall of Shame honours this month go to Apple, who this month gave us more reasons not to use Windows, even on its own machines, by inadvertently (we assume) shipping some iPods containing a Windows virus. Whoops.
But on the other side of the coin
Apple's latest MacBook Pro updates (now core duo) leave it with the best-priced machines (when comparing apples to, er, the other guys) in both desktop and laptop categories. Hey, there never was any excuse to buy a cheap imitation computer when you could buy the real thing for a few bucks more. Now, doing so will cost less than buying the junk others offer, and it comes with an OS that works. Oh, and did we mention that Apple's profits (now $.62/share) and stock prices continue to climb?
Not so elsewhere in the industry, where sales have flattened and layoffs abound. Seems there's a little market saturation here and there. Oh, and no ones getting a charge out of SONY these days, what with its 95% profit evaporation in the wake of battery recalls.
And on the gripping hand, owning the "buzz" as well as the technological leadership, Apple seems to have chip supplier Intel eating out of its hand, giving preferential treatment, doing custom engineering for what is rapidly coming their most important customer (we didn't say the largest, that's an issue for another day.) So, right now it appears Steve Jobs hasn't the time of day for the other guys at AMD, and don't hold your breath waiting for another supplier change, but neither doubt he wouldn't switch in a heartbeat, if it became advantageous. It must be nice to hold the upper hand after being incorrectly perceived as the underdog for so long. But, did they finally get the FireWire 800 port right on the new portables? It never did work properly on the Power Mac G5 machines.
You know you're getting old when you hold a departmental draw at the program fair for anyone who can guess the storage capacity of a 1980s disk platter stack (the right answer was 5MB per plate) the same month that Apple introduces a build-to-order option on desktops that includes the possibility of four 750GB drives, each a fraction of the weight of one of those old stacks. A machine with 3T of storage? Who'd'a thunk it?
Come to think of it, is there any other old programmer croc in the room who's read this far and remembers what a "thunk" is? If you do, email the Spy with the answer, and enter a draw for a year's free webhosting, courtesy of our sister company WebNameHost. No fan of random numbers, he'll have Nellie pick the most colourful answer. Accuracy wouldn't hurt either.
--The Northern Spy
Rick Sutcliffe, (a.k.a. The Northern Spy) is professor of Computing Science and Mathematics at Trinity Western University. He's written two textbooks and several novels, one named best ePublished SF novel for 2003. His columns have appeared in numerous magazines and newspapers, and he's a regular speaker at churches, schools, academic meetings, and conferences. He and his wife Joyce have lived in the Aldergrove/Bradner area of BC since 1972.
Want to discuss this and other Northern Spy columns? Surf on over to ArjayBB.com. Participate and you could win free web hosting from the WebNameHost.net subsidiary of Arjay Web Services. Rick Sutcliffe's fiction can be purchased in various eBook formats from Fictionwise, and in dead tree form from Bowker's Booksurge.
URLs
The Northern Spy Home Page: http://www.TheNorthernSpy.com
WebNameHost: http://www.WebNameHost.net
WebNameSource: http://www.WebNameSource.net
nameman: http://nameman.net
opundo: http://opundo.com
Sheaves Christian Resources: http://sheaves.org
Arjay Books: http://www.ArjayBooks.com
Booksurge: http://www.booksurge.com
Fictionwise: http://www.fictionwise.com
The Spy's Laws collected: http://www.thenorthernspy.com/spyslaws.htm
Eudora Info: http://www.eudora.com/faq /
Thunderbird: http://www.mozilla.com/thunderbird/