Friday, February 25, 2005

Doublespeak legislation

I'm linking to the text of HB 1991, proposed legislation introduced in Washington State that is similar to a number of others introduced in other states. Like the others, it's basically written by David Horowitz, a conservative activist, and "Students for Academic Freedom". There are a large number of blogs that comment on the politics of such things, so I'll just go over the content of the bill.

The bill has two sections; the first is for the most part a bunch of generalizations and "feel good" statements that I suppose is meant to predispose the reader to thinking that the whole is innocuous or high-minded. Lots of language like, "The central purposes of a university are the pursuit of truth, the discovery of new knowledge through scholarship and research, the study and reasoned criticism of intellectual and cultural traditions, the teaching and general development of students to help them become creative individuals and productive citizens of a pluralistic democracy, and the transmission of knowledge and learning to a society at large." However, even here, I believe there is an attempt to "bless" certain words and turns of phrase by close association with others. For example, the inclusion of "reasoned criticism" in the above quote is probably meant to associate with it concepts such as research, scholarship, and the search for truth. Like some other words and phrases, it will be used in section two in a manner that, taken in isolation, would mean something considerably different. A pretty neat technique, I must say. Other doublespeak phrases from section one include: "freedom to teach and to learn", "appropriate conditions and opportunities", "critical intelligence", "openness", "never-ending pursuit of the truth", "complete and unlimited freedom", and "orthodoxy". My doublespeak award goes to paragraph 4: "Academic freedom consists in protecting the intellectual independence of professors, researchers, and students in the pursuit of knowledge and the expression of ideas from interference by legislators or authorities within the institution itself. This means that no political, ideological, or religious orthodoxy will be imposed on professors and researchers through the hiring, tenure, or termination process, or through any other administrative means by the academic institution. Nor shall legislatures impose any such orthodoxy through their control of the university budget." Imagine, a piece of state legislation that dictates how hiring, etc. will be modified to accommodate people who agree with the legislature's political agenda (if it passed, that is) that appears to state, as a basic principle, that the legislature shouldn't interfere with academia. The beauty is that it appears to do this, but actually states that "orthodoxy" won't be imposed (as if anyone would ever need to impose an orthodox opinion on any organization).

Here's my annotated second section (my comments in italics):
Sec. 2   A new section is added to chapter 28B.10 RCW to read as follows:
     To secure the intellectual independence of faculty and students and to protect the principle of intellectual diversity, the following principles and procedures shall be observed. These principles apply only to public universities and to private universities that present themselves as bound by the canons of academic freedom. Private institutions choosing to restrict academic freedom on the basis of creed must explicitly disclose the scope and nature of these restrictions.

OK, so this is a definition of academic freedom for all universities in the state that observe such things.
     (1) All faculty shall be hired, fired, promoted, and granted tenure on the basis of their competence and appropriate knowledge in the field of their expertise
I know what competence is, but what is "appropriate knowledge"? Apparently, competence isn't enough, since this other qualification is also mentioned.
and, in the humanities, the social sciences, and the arts, with a view toward fostering a plurality of methodologies and perspectives.
Well, well, it seems that some conservatives support affirmative action. Just not for folks who've been discriminated against in the past -- they want it for themselves. I'm not in one of the fields mentioned (apparently, there's no need for "plurality" in the sciences, business, or engineering), but in most science and engineering departments, hiring tends to be concentrated in certain areas of inquiry so that faculty have colleagues to work with -- to provide "ciritical mass". No department can be strong in every area.
No faculty may be hired, fired, or denied promotion or tenure on the basis of his or her political or religious beliefs.
     (2) No faculty member may be excluded from tenure, search, and hiring committees on the basis of the member's political or religious beliefs.
     (3) Students will be graded solely on the basis of their reasoned answers and appropriate knowledge of the subjects and disciplines they study, not on the basis of their political or religious beliefs.
So now they want to legislate how I grade? It seems they're in favor of grading based on effort rather than results, at least, that's how I interpret "reasoned answers". As stated before, I have no idea what "appropriate knowledge" is, but I presume that the legislature will determine what knowledge is appropriate and what is not, and students could appeal grades based on me requiring them to exhibit knowledge that is not "appropriate".
     (4) Curricula and reading lists in the humanities and social sciences should reflect the uncertainty and unsettled character of all human knowledge in these areas by providing students with dissenting sources and viewpoints where appropriate.
Apparently, the humanities and social sciences are just a mess: there's no such thing as truth or even certainty. Any opinion could be valid, and so every opinion is equally valid. If you're in such a field, make sure your courses reflect the fact that it's all just a pile of crap baloney. Ignorance really is strength.
While teachers are and should be free to pursue their own findings and perspectives in presenting their views, they should consider and make their students aware of other viewpoints. Academic disciplines should welcome a diversity of approaches to unsettled questions.
Affirmative action: it's not just for people anymore. Who will decide what "other viewpoints" are "appropriate"? Will a history course need to incorporate Holocaust deniers' "viewpoints"? From a practical point of view, this is meant to give students the ability to appeal grades (or to allow punishment of professors) as long as someone in power believes that his or her pet "viewpoint" was omitted from a course.
     (5) Exposing students to the spectrum of significant scholarly viewpoints on the subjects examined in their courses is a major responsibility of faculty. Faculty will not use their courses for the purpose of political, ideological, religious, or antireligious indoctrination.
Who will decide which scholarly viewpoints are "significant"? Not that faculty, that at least is clear. On the one hand, students should be "exposed" to a spectrum of ideas, but not to the extent that anyone has their own world view challenged.
     (6) Selection of speakers, allocation of funds for speakers' programs, and other student activities will observe the principles of academic freedom and promote intellectual pluralism.
Affirmative action for speakers, too.
     (7) An environment conducive to the civil exchange of ideas is an essential component of a free university; the obstruction of invited campus speakers, destruction of campus literature, or other effort to obstruct this exchange is prohibited.
     (8) Knowledge advances when individual scholars are left free to reach their own conclusions about which methods, facts, and theories have been validated by research. Academic institutions and
I'm sorry, but individuals don't get to decide "which methods, facts, and theories have been validated by research". This is only done by communities of scholars. I can believe anything I want, but validity must be earned by convincing other people in my field.
professional societies formed to advance knowledge within an area of research, maintain the integrity of the research process, and organize the professional lives of related researchers serve as indispensable venues within which scholars circulate research findings and debate their interpretation. To perform these functions adequately, academic institutions and professional societies should maintain a posture of organizational neutrality with respect to the substantive disagreements that divide researchers on questions within, or outside, their fields of inquiry.
So now they want to legislate how professional societies work? I guess there'll no longer be any IEEE standards issued, as that would violate neutrality. Professional societies, by their nature composed of scholars in their field, tend not to decide matters that are subject to true "substantive disagreements". On the other hand, they don't serve as venues for crackpot ideas -- if you want colleagues to read about your work, then you need to convince them: 1. that you are aware of what others have done and are doing in the field, 2. that your work is also in the same field, 3. that your work explains the world at least as well as existing work, 4. that your methods can actually address questions in the field, and 5. that your methods are capable of falsifying your hypothesis (that it was possible for you to be wrong).
Wow! Quite a long read, wasn't it? Reward yourself with a visit to Students for an Orwellian Society.

Friday, February 18, 2005

Software tools I'm using today

The title of this article is a bit misleading, as my primary intent is to document my current approach to producing numerical simulation code -- mostly the libraries/classes involved. However, I'll also cover my "workflow", which is laughably simple.

My research focuses on developing neural networks and neuron simulation software so that I might gain a bit of insight into how nervous systems perform computations. This tends to be computationally intensive work. The individual simulations aren't very huge, but I often need to run tens of thousands of them to systematically explore various combinations of parameters. The simulations themselves are also somewhat fluid, in that there's often a number of different structural variations in the models to explore, too. Once upon a time, I tried to write all my code with graphical user interfaces, first using custom libraries I wrote for Turbo C under DOS, then for X Windows, and most recently for MATLAB. The problem with GUIs is that virtually every change in the simulator produces changes that propagate through the GUI. This is incredibly time consuming. And, while MATLAB is a great environment for numerical analysis and visualization, interfacing it to C or C++ code involves too much glue code. Eventually the process of changing the glue and GUI dominates any simulation-oriented coding.

So, I've stopped integrating the simulators into a GUI, and now write stand-alone code, mostly in C++ using Emacs, the g++ compiler, and RCS (Revision Control System). I don't even use a debugger, just output to cerr, because the few bugs I produce are usually the type that a debugger isn't very helpful for (OK, I'm just too lazy to learn gdb). Here are some libraries/classes I've found useful lately:

  • ParamContainer, a class that's basically a wrapper around a program's command line parameters. It makes it pretty simple to define, parse, and retrieve command line options, including short and long keywords, required and optional parameters, and parameters with and without arguments. All with just a few lines of code.
  • TinyXml, a set of classes for parsing XML files. I've decided that XML is the best way to go for producing files to contain simulation parameters, outputs, etc. I can incorporate documentation into the XML files, both by the very nature of the XML and by adding comments. It's very easy to format output as simple XML. TinyXml makes it straightforward to pull even fairly complex structured data from XML (you may sense a common theme here).
  • In a related note, I've hacked together a set of classes that "automatically" (with the addition of only two lines of code in each .cpp file) collect RCS version information (or any arbitrary information that can be written in a string) for each source file used to build a program and will format it as XML comments for output. I now write these comments into every simulation output file I produce, so I know exactly what code was used to produce the results (assuming I bother to check in the files after each change is debugged). This is a pale shadow of my Logos system (which doesn't exist right now). For example, the beginning of an output file might look like:
     
    <?xml version="1.0" standalone=no?> 
    <!-- State output file --> 
    <!-- This can be used as input; the "Statistics" element --> 
    <!-- is ignored when the state is read by the simulator (but --> 
    <!-- can be read by functions written for MATLAB) --> 
    <!-- $Id: SourceVersions.cpp,v 1.2 2005/02/18 13:41:04 stiber Exp stiber $ --> 
    <!-- $Id: KIIgrowth-prog.cpp,v 1.5 2005/02/18 20:45:20 stiber Exp stiber $ --> 
    <!-- $Id: KIIgrowth-simulator.cpp,v 1.7 2005/02/18 20:45:54 stiber Exp stiber $ --> 
    <!-- $Id: InputGenerator.cpp,v 1.1 2005/02/18 20:46:58 stiber Exp $ --> 
    <!-- $Id: Matrix.cpp,v 1.3 2005/02/18 13:40:02 stiber Exp stiber $ --> 
    <!-- $Id: VectorMatrix.cpp,v 1.4 2005/02/18 13:41:42 stiber Exp stiber $ --> 
    <!-- $Id: CompleteMatrix.cpp,v 1.3 2005/02/18 13:38:53 stiber Exp stiber $ --> 
    <!-- $Id: SparseMatrix.cpp,v 1.3 2005/02/18 13:41:35 stiber Exp stiber $ --> 
    <!-- $Id: MatrixFactory.cpp,v 1.3 2005/02/18 13:40:11 stiber Exp stiber $ --> 
    <!-- $Id: RNG.cpp,v 1.2 2005/02/18 13:40:44 stiber Exp stiber $ --> 
    <!-- $Id: norm.cpp,v 1.2 2005/02/18 13:41:51 stiber Exp stiber $ --> 
    <!-- $Id: DistanceList.cpp,v 1.4 2005/02/18 19:39:01 stiber Exp $ --> 
    <SimState> 
       <!-- Mitral unit states --> 
       <Layer name="mitral"> 
          <StateQueue name="x" stages="3"> 
             <Matrix type="complete" rows="1" columns="25" 
                      multiplier="1.0"> 
       0.968226 1.10523 1.28773 0.684952 0.401885 0.344824 -1.56298 0.989861 
    
    and so on.

Tuesday, February 15, 2005

Positive ID

The linked CNET article reports on the "Real ID Act" recently passed by the US House of Representatives. It would give the Dept. of Homeland Security authority to set standards for drivers licenses. As supporters say, it's not the same as a national ID, because compliance on the part of states is voluntary. Of course, if a state doesn't comply, residents won't be able to do things like fly.

I think a business opportunity stems from the following: " In the United States, the federal government is planning to embed RFID chips in all U.S. passports and some foreign visitor's documents." I can imagine people wanting passport covers that block the RFID chip from transmitting. Otherwise, anyone with relatively simple equipment will be able to scan tourists walking by to find out who the Americans are (even if they can't read the personal information stored on the chips -- a big if).

Cyberterrorism -- where have all the sysadmins gone?

Seems like security is the theme of the day. Considering that "cyberterrorism" has been in the news for what seems like decades, you'd think that government and commercial organizations that run computers would have gotten around to hiring competent sysadmins who can run things securely. But, if the linked MSNBC article is to be believed, critical infrastructure is still vulnerable to attack. Most of what the article talks about is web site defacing, but there is certainly the implication that more is doable, given the desire. However, some of the most concerted hacking attempts are directed at university and e-commerce computers, and it seems that, except in isolated instances, they are secure. My read is that "cyberterrorism" will mostly involve a constant probing for vulnerabilities with occasional successes. If critical systems are just not connected to the internet, then the successes can be kept at the level of annoyances. Yes, that's two ifs: constant grooming of competent sysadmins and sensible systems architecture. The cynic in me isn't hopeful.

Viruses gone wild

The CNET article I've linked to discusses the possibility of viruses infecting home appliances, cars, etc. as they gain more sophisticated computing capabilities and internet connectivity. Personally, I'm not really sure what the advantage would be of having a net-connected refrigerator or toaster, but then again I didn't think that anyone would want to buy books online --- and give up the enjoyment of browsing through the books at a bookstore. My take-home lessons:
  • Until Microsoft gets its act together, avoid running Windows on appliances like media centers or cell phones. It's not just that Windows is the most common OS in the ecosystem (and thus most attractive to virus writers); its distribution philosophy (and, I would say, underlying architectural principles) facilitate infection.
  • Think before you connect any computerized device to the internet. Tivos dialing in directly are secure. Though Tivos run Linux, the distribution seems pretty well secured; I'd make sure I had a home firewall before connecting it via the internet, anyway.
  • Use a hardware firewall. Even if you will only be connecting one computer to a cable modem sitting right next to it, get a name-brand firewall box (should be less than $50) and connect it between your computer and the broadband hardware. Use the free ShieldsUp! service at Gibson Research to test your firewall. It's my understanding that a new Windows machine is likely to be infected with malware before it is able to finish downloading the latest OS patches from Microsoft, if connected to an unsecured network.
  • In a ideal world, wifi access points would be sold with randomized network IDs and WEP passwords, printed on a slip of paper in each box, and with encryption on. Unfortunately, they're universally shipped wide open --- like selling door locks that all have the same keys. Either secure your wifi (and test it) or don't buy it.
  • Secure your computer as though the other layers of security don't exist. Turn off services that aren't needed. I run both Mac OS X and Linux at home; OS X has pretty much everything nonessential turned off by default (and a software firewall turned on), but Linux usually has a bunch of daemons running and services enabled that I don't need.
  • If you think of a good argument for getting a network-enabled toaster (other than stupid toaster tricks), please let me know.

Thursday, February 10, 2005

Darwin Day Celebration

The anniversary of Charles Darwin's birth is approaching (February 12th). This article's title links to the Darwin Day web site, which includes a registry of events scheduled for the anniversary, building up to the 200th anniversary in 2009. In a related vein, if you want to get depressed about the sorry state of science education in this country, you might read this article at Space.com or this one at the Salt Lake City Weekly. Relevant web sites include Pharyngula and The Panda's Thumb.

How is this relevant to computing careers? Well, if your goal in life is to just be a "code monkey", hacking out this subroutine or that class as directed by your manager, then maybe not much. If you have more ambitious goals, then ask yourself this: how can you hope to imagine things that computers might do, but don't yet (you might call these "future products") if you can't appreciate how mechanical/algorithmic processes can produce complex, subtle behaviors?

Tuesday, February 08, 2005

How not to make your point, or the universality of Godwin's Law

I had the flu last week, and didn't think it terribly wise to blog with a fever, so let me post this rather belatedly (though the topic seems like it will stay in the news for a bit).

For those who haven't heard of this, Ward Churchill, Professor of Ethnic Studies at the University of Colorado, Boulder, has stirred up a bit of a fuss lately. There's probably a couple hundred real news stories out there on the web, in addition to the usual blog blatherings (like this one); you might as well start here. I gather that his fundamental point is that 9/11 is an outcome of US foreign policy that could have been predicted. I'm not so interested in his points, though, because there's something he has to say early on in his writing that I just can't get past, and that is the topic of this comment. In his writing, he compares the folks working in the World Trade Center to "little Eichmanns"; in his later "explanations", he makes Eichmann sound like a minor logistics officer. As you might guess, this has engendered some public comment, plus the usual speech cancellations and death threats.

I think this shows the applicability of Godwin's Law beyond usenet newsgroups. (For those who know only about the web and not usenet, I'll borrow a quote from "The Princess Bride": "When I was your age, the web was called usenet".) One of the "corollaries" of Godwin's Law is "if you mention Hitler or Nazis in a post, you've automatically ended whatever discussion you were taking part in". In this case, Churchill has pretty much guaranteed that nobody will pay attention to anything else he has to say, not only now, but quite likely ever. It doesn't matter how profound or worthy of discussion any of his other writings are; he has killed off any rational discussion of his views. This is probably not what he intended.

So, now people in Colorado (probably most) want to run him out of town on a rail. While I personally can't get past his invocation of Godwin's Law, I can quote Voltaire, "I disapprove of what you say, but will defend to the death your right to say it." One of the reasons university faculty are granted tenure is so that they can be free to pursue their interests and express their views without fear of retribution (well, that's overstating things a bit: the administration can always reassign you to an office that used to be a broom closet; they just can't fire you). And, lest we decide that Churchill has stepped over the bounds that must exist, keep in mind what Isaac Asimov said: "Politically popular speech has always been protected, even the Jews were free to say 'Heil Hitler'."

Monday, January 10, 2005

Spam of the day

Well, this probably won't be an actual daily feature, but I don't want to attribute a greater length of time to spam. Anyway, here's the subject line of a spam that caught my eye while scanning my junk mail box for false positives today:

Subject: Two words= Diploma of a University.

Bill Gates at the Consumer Electronics Show -- crashes and blue screens of death

OK, I couldn't resist. Seems even a multi-billionaire head of one of the largest corporations on earth gets bitten by the demo effect. In this case, this means crashes of his Home Media Center edition PC and the blue screen of death from an Xbox during his keynote.

In my experience, most demo failures are due to lack of diligence on the part of the folks setting things up (which has pretty much always been your's truly, when I've done demos). The most likely cause here was that nobody actually tested the machines and software in question (the actual ones being used, not some other machines) during a dry-run rehearsal. Of course, using Mac OS X or Linux instead of Windows would probably have increased reliability, too.

Tuesday, January 04, 2005

Data processing with iTunes

The title links to a very interesting web page discussing (briefly) the use of iTunes as a more general-purpose database browser. I think that some interesting uses could be made of its live-updating "smart playlists". Of course, only simple DB tasks can be performed with it, since you are limited to browsing by ANDed combination of attributes (which are fixed), or, in smart playlists, a choice of AND or OR combination of attributes. Still, it's better than browsing through deeply nested directory hierarchies or thousands of cryptically-named files.

Monday, January 03, 2005

A bag of links

The following are some interesting links I've found lately. Who knows? Maybe I'll make this a regularly scheduled feature. I'm such a pack rat.
  • PodcastAlley.com. I just got an iPod, the rationale being that I'll no longer have the kids complaining that none of the ten CDs in the car has anything they want to listen to on it, and why didn't we bring CD "X". Now, we'll have every CD we own with us on every car trip, including last week's "Car Talk" for me. Anyway, now that I have it, I've been perusing the various podcasts on the web. For the uninitiated (which, now that I know about this, probably means nobody), podcasts are audio recordings (think of them as radio show recordings or audio blogs) that have their links embedded in RSS feeds; software (such as iPodder, which is free, or iPodderX, which is commercial with a free "lite" version) scans the feeds and downloads the enclosures, in my case adding them to iTunes for syncing with my iPod. Podcast Alley is probably the best organized podcast directory around. Both of the abovementioned programs have integrated directories; iPodderX's is pretty good. And not all of the podcasts are amateur crap like this blog; there are professional ones from WGBH radio, NASA, and the BBC.
  • Piled Higher and Deeper, the comics for anyone in graduate school (or married to someone in graduate school).
  • Bargain web sites: Cheap Stingy Bastard, Free After Rebate, and Hot Deals Club.
  • Metro FreeFi lists free (legitimately) wifi spots. It also provides "wiPod" downloads formatted as iPod notes.
  • You knew this would happen. They've got Linux running on the iPod. Remember, the point isn't that it does it well, but that it does it at all.
  • You can access the most recent episode of National Public Radio's "Car Talk" here.
  • Children's science education sites: The Yuckiest Site on the Internet, NASA Science Files, and Math/Science Nucleus.
  • The Virginia Tech Multimedia Music Dictionary includes audio files with pronunciation for each term.

Friday, December 31, 2004

Lego Logic

Linked from the title above: a page describing the construction of logic gates (the fundamental building blocks of all modern computers and digital circuitry) from Lego. It uses a lot of "unusual" components, such as rack gears, which I assume must be special ordered from the company (at least, my kids' Legos don't have them, and I don't recall seeing them in the toy stores). The builder has NOT, OR, NOR, AND and NAND gates, which is more than sufficient to implement any logic function. To build a reasonable computer model, one would also need a tri-state device, in which one input disconnects or connects the other to the output. I don't think that would be a problem to implement in Lego. Of course, the other problem in building a complete Lego computer would be the increase in force needed at the input as more and more gates are added --- eventually, the force would be greater than what could be applied at the input without popping it apart. To get around that, you might be able to make some of the gates powered by motors and couple those gates via switches (rather than mechanically). Oh, and you'd need to spend a lot of money.

Thursday, December 30, 2004

The Re-Ascendancy of Hardware

We live in an era where "commodity hardware" is king. For most people, price is the buying point for PCs (or, for that matter, DVD players, etc). Hardware's relevance is merely as a platform for software. That wasn't always the case, and in this article, I'd like to argue that it won't be the case in the future.

I am fortunate (?) to remember the days when desktop computing was all about hardware. User interface was a hex keypad and a small LED display. Serious folks (who had the money) built their own S-100 systems, toggling in the few instructions to load the first sector from a floppy and then transfer control to that boot loader code.

Today, unless you have specialized requirements, it pretty much doesn't matter what PC you buy. Yes, there are differences in terms of speed, storage, graphics, etc., but at every performance level there is a set of essentially interchangeable machines from different manufacturers. Consumers for the most part buy based on price. The result has been that hardly any (none?) PC vendors make money selling them. PCs have become disposable razors (albeit expensive ones), the only problem being that the companies selling the blades (Microsoft and Intel) aren't the ones selling the razors. They're even more like razors now that PCs are basically as powerful as necessary for most any application for the foreseeable future (or at least the next several years) --- if you can edit digital video on a machine, that machine probably can do whatever you need to do. Will people trade in their old computers for twin-bladed ones? Ones with built-in skin care products?

This got me to thinking about the success of the iPod. While digital music players aren't yet ubiquitous (due to price), other types of music players are. So, why doesn't the iPod suffer from being an expensive product in a commodity marketplace? In my opinion, the answer is user interface, and in particular hardware. We've come to think that the real story these days is software's ability to produce any sort of user interface for given hardware, but in the case of iPod, the real story is that the software is invisible --- the iPod is successful because it works like hardware, not software.

Let's face it, most software user interfaces suck. Most try to make a program look like a physical device, but that "device" is a nightmarish, unusable thing. The best user interfaces foster the development of useful mental models by their users [1]. These don't have to be accurate models of how the system works, merely models useful for the task at hand. A good example of this is a car's steering wheel. My mental model associated with steering a car doesn't involve how it really work, but rather how the angle and rate of turn is associated with changing the car's direction.

Compare this with setting the clock on a VCR (depending on the VCR, almost certainly an example of either bad hardware or software user interface). Few VCRs have decent user interfaces, which is why so many are flashing "12:00". Why? Because they don't conform to the well-entrenched mental model associated with manipulating time --- the clock. On the other hand, the iPod's interface, particularly the scroll wheel, is excellent in the same way that an analog control is: it doesn't just allow one to select an item from a list, it also fosters development of a mental model that includes rate of scrolling and relative distance from the list's extremes.

So, where is all this leading? The lesson to me is that, to make software more usable, we must do more than make it more like (good) hardware --- we must make it indistinguishable from hardware. Good software must be invisible. Note that this is not the same as "ubiquitous computing", where computers are so numerous and in so many items used daily that we don't notice them (because they're everywhere). What I mean is that user interfaces should not "just" look like hardware (buttons, switches, etc.), but should actually act like hardware, to the extent that casual users will think of them as such. This is probably only possible for manufacturers that have control over both hardware and software design, since software can only "fade into the background" if hardware provides the user interface. Since this is pretty much the end of the year, this leads me to some "predictions":

  • It seems to me that Apple is probably best able to execute on this type of strategy, given their control over both hardware and software. Apple has already shown that this works for device categories in which there is little software compatibility issue (data compatibility only being an issue for copy protected music). Can Apple extend this to desktop computing? Once upon a time, Sun Microsystems and Silicon Graphics dominated the engineering workstation market (yes, I'm neglecting Apollo, HP, etc). While their software may have had issues (Sun, for example, let their graphical "desktop" stay unchanged for so long that hardly anyone I know actually used it), it was Unix, ran all the GNU software, and that was the most important thing. Yes, the machines were more expensive than Intel boxes running Linux, and that cut into sales. But what really killed those two companies as major players was the fact that they couldn't keep their hardware's performance ahead of Intel boxes. Linux was merely a facilitator for the switch to cheaper, sometimes better-performing hardware. Sun and SGI tried to fight back by offering their OSes for Intel (and, in SGI's case, running Windows on their hardware), but a company can't stake its survival on selling a product on which it can't make a profit. (Yes, I know, both companies still exist, but neither is a major desktop player anymore.) By focusing on the overall experience of using a Mac, Apple can survive (and possibly, grow its user base) and make a profit on its computer sales (which likely makes it unique). To an engineer, Mac OS X is Unix, and Apple hardware is pretty high performance (and not more expensive than Wintel, unless we're comparing bottom-end machines). The one thing that Apple should not do is try to compete in terms of price. Instead, it should focus on new hardware that transforms aspects of people's lives (like listening to music) and creates synergies among its product lines. (Wow, that sounds like it was produced by a buzz-word generator!)
  • Though one might not think it, Microsoft is in kind of a pickle. Yes, I'd like to have Bill Gates' problems, too. However, Microsoft's only real unique advantage is its monopoly status. This allows it to act essentially like a government, extracting a "tax" on each Wintel computer sold. This is not a recipe for future success. Incremental gains in market share by Apple and Linux will inevitably lead to the porting of specialized software to those platforms, which will lead to increasing market share, and so on. Microsoft will have great trouble moving into consumer products because they don't control the hardware --- witness the lack of enthusiasm for Windows Media Center machines. When Microsoft does control the hardware --- Xbox --- they run into price competition and shrinking margins. So, Microsoft can use its financial muscle to diversify into markets in which it will be marginally profitable at best, or it can continue to live off of an eroding market.
OK, so not so many predictions for a year-end article. But, this leads to one counter-intuitive observation: not only is market share not the most important thing, sometimes it actually is disadvantageous. Apple is a profitable 3% of the PC market. How many other computer manufacturers are sustainably profitable, even at much larger market shares? Do any of those companies support significant research? If your company is in an industry where innovation is key to new products and profits, would you rather have a small market share and healthy margins or a large market share and razor-thin margins?

[1] Hrebec, D.G. and M. Stiber,"A survey of system administrator mental models and situation awareness", ACM SIGCPR, San Diego, pp. 166--72, April 2001.

Monday, November 29, 2004

Mike Teavee shows the way

The following quote from Roald Dahl's Charlie and the Chocolate Factory I think sums up quite nicely the effects of television watching on children's education:
The most important thing we've learned,
So far as children are concerned,
Is never, NEVER, NEVER let
Them near your television set ---
Or better still, just don't install
The idiotic thing at all.
In almost every house we've been,
We've watched them gaping at the screen,
The loll and slop and lounge about,
And stare until their eyes pop out.
(Last week in someone's place we saw
A dozen eyeballs on the floor.)
They sit and stare and stare and sit
Until they're hypnotised by it,
Until they're absolutely drunk
With all that shocking ghastly junk.
Oh yes, we know it keeps them still,
They don't climb on the window sill,
They never fight or kick or punch,
they leave you free to cook the lunch
And wash the dishes in the sink ---
But did you ever stop to think,
To wonder just exactly what
This does to your beloved tot?
IT ROTS THE SENSES IN THE HEAD!
IT KILLS IMAGINATION DEAD!
IT CLOGS AND CLUTTERS UP THE MIND!
IT MAKES A CHILD SO DULL AND BLIND
HE CAN NO LONGER UNDERSTAND
A FANTASY, A FAIRYLAND!
HIS BRAIN BECOMES AS SOFT AS CHEESE!
HIS POWERS OF THINKING RUST AND FREEZE!
HE CANNOT THINK --- HE ONLY SEES!
"All right!" you'll cry. "All right!" you'll say,
"But if we take the set away,
What shall we do to entertain
Our darling children? Please explain!"
We'll answer this by asking you,
"What used the darling ones to do?
"How used they keep themselves contented
Before this monster was invented?"
Have you forgotten? Don't you know?
We'll say it very loud and slow:
THEY ... USED ... TO ... READ! They'd READ and READ,
AND READ and READ, and the proceed
To READ some more. Great Scott! Gadzooks!
One half their lives was reading books!
The nursery shelves held books galore!
Books cluttered up the nursery floor!
And in the bedroom, by the bed,
More books were waiting to be read!
Such wondrous, fine fantastic tales
Of dragons, gypsies, queens, and whales
And treasure isles, and distant shores
Where smugglers rowed with muffled oars,
And pirates wearing purple pants,
And sailing ships and elephants,
And cannibals crouching 'round the pot,
Stirring away at something hot.
(It smells so good, what can it be!
Good gracious, it's Penelope.)
The younger ones had Beatrix Potter
With Mr. Tod, the dirty rotter,
And Squirrel Nutkin, Pigling Bland,
And Mrs. Tiggy-Winkle and ---
Just How The Camel Got His Hump,
And How The Monkey Lost His Rump,
And Mr. Toad, and bless my soul,
There's Mr. Rat and Mr. Mole ---
Oh, books, what books they used to know,
Those children living long ago!
So please, oh please, we beg, we pray,
Got throw your TV set away,
And in its place you can install
A lovely bookshelf on the wall.
Then fill the shelves with lots of books,
Ignoring all the dirty looks,
The screams and yells, the bites and kicks,
And children hitting you with sticks ---
Fear not, because we promise you
That, in about a week or two
Of having nothing else to do,
They'll now begin to feel the need
Of having something good to read.
And once they start --- oh boy, oh boy!
You watch the slowly growing joy
That fills their hearts. They'll grow so keen
They'll wonder what they'd ever seen
In that ridiculous machine,
That nauseating, foul, unclear,
Repulsive television screen!
And later, each and every kid
Will love you more for what you did.

Sunday, November 28, 2004

A tale of two school districts, Part Two

This is the second of two articles outlining the different experiences my family has had in two school districts --- the Northshore School District in the Seattle suburbs and the Alachua County School District in the Gainesville, Florida area. This article presents our subjective experiences; the first article went over community and school demographics and finances.

Central vs. Decentralized Control

First of all, let me say that both schools are filled with teachers and administrators who care very deeply about their students and their education. I can detect no difference in their dedication or the time and effort they expend. What is interesting are the significant differences in philosophy, organization, and management in the two systems. In some cases, my family prefers Northshore; in others (though, I must admit, fewer), Alachua county.

The primary matter of difference between the Northshore and Alachua country school districts is that of central control. Alachua county (and, I believe, all of Florida) has highly centralized decision-making; so much so that I sometime wonder what authority Principals here have. Northshore Principals appear to have much greater discretion. Two examples should be informative:

  1. Our younger daughter's birthday is at the end of September. In Washington and Florida, this is after the cutoff date for admission to Kindergarten. However, in Northshore, Principals have latitude to provisionally admit a student to Kindergarten if they're born before November. There would be an evaluation process beforehand to determine if the child is ready, and there would be a probation period during which the Principal could decide, with teacher input, that it wasn't working out and that the child should wait a year. In Florida, the September 1 cutoff is a hard cutoff, mandated by State law. No exceptions are allowed, even at accredited private schools. Note that there is also a cutoff for first grade; this apparently causes problems for a number of families moving to Florida with young children who have already completed Kindergarten but, under Florida law, must repeat it because they cannot be admitted to first grade. There are some non-accredited private schools around that cater to families in this situation.
  2. Our older daughter is quite advanced for her age. There is some local discretion regarding placing her in higher grade classes for certain subjects. In Northshore, the Principal interviewed our daughter and had her do parts of a standardized test, then he had her evaluated by her teacher and the school counselor. We then met with them and arrived at a solution we were happy with. The whole process took a couple weeks --- just long enough for the folks at the school to feel confident in their assessment.

    Here in Alachua county, while the basic idea was the same, the procedure was far more involved and bureaucratic. We first met with the Principal, and a partial plan was outline for testing our daughter. The Principal wrote down a summary of our meeting on a special multi-part form, she and we signed it, and we got a copy (with other copies for the school, county, etc). Our daughter was then placed on the testing schedule and had to wait for the District psychologist to get to her (I chalk this delay up to the differences in the two districts' financial resources). A set of standard tests were performed (the set of tests that the psychologist gives every advanced student), and the conclusion was reached to pull our daughter out of class for the gifted program (which covers only a couple subjects). This decision was communicated to us via a set of multi-part forms, which we had to fill out, initial, etc. We then had a meeting to deliver these forms and fill out other forms, among other things waiving our statutory right to a 10-day waiting period between receiving our forms and the meeting. We then had to schedule another meeting to discuss other subjects, during which an additional round of testing was arranged. This additional testing took place over a couple weeks, involving some sort of computer-based examinations. Finally, our daughter was placed into third grade for mathematics. The whole process took about 3 months.

Testing, Testing

Another difference between the two school systems is the matter of testing. Both districts test students, but Alachua county tests them every week, for an entire day. That's right, every Friday is just about solid test-taking. Now, on the one hand it's probably good for kids to get used to taking tests, learn some of the associated skills, get over any anxieties, etc. But spending 20% of their formal education in test-taking is excessive (actually, it may be worse than this, as they take tests on other days, too). I presume that this is a response to the high-stakes statewide testing that takes place in Spring for students in every grade. In comparison, Washington only has statewide tests for grades four, seven, and ten. There is much less of a phenomenon of the curriculum being geared towards tests. We much prefer that approach. Tests are not ends in themselves, they are devices used to assess student achievement, abilities, and knowledge. They are a tool to help teachers, students, and parents understand where students stand and in what areas they may need work (and also in what areas they have talents). Eventually, they are used by institutions such as universities as a gross indication of the likelihood of success of applicants. Instruction related to testing should be confined to assuring that each student's test results accurately reflect his or her abilities. Anything more is training, not education.

Of course, I understand the motivation behind this focus on test preparation. High-stakes testing (and by this I mean high stakes for the school) send a very clear message that school performance (teacher and administrator performance) is evaluated in terms of getting as many students as possible above some minimum standard. Test training can be an effective means to achieve this goal, but it is achieved at the expense of real learning, and especially at the expense of students who have no trouble exceeding the minimum standard. The over-reliance on such testing in Florida is symptomatic of its centralized, "command driven" educational system, where such testing appeals to the "educational accountants" in the state and federal capitals.

Gifted Programs

Both school districts have gifted programs in which students wishing entry take standardized tests and are admitted (or not) based on their results. In Alachua County, the gifted program starts in first grade and is a pull-out program for one or two subjects (the precise subjects differ among grades and schools). In Northshore, the gifted program starts in third grade and is a separate class.

At our daughter's school in Gainesville, approximately 30% of the students are in the gifted program! This is true of many of the schools in the district. As a result, my daughter's gifted class has 33 students in it --- 50% more than her regular class. In fact, so many students are pulled out of the regular classes for the gifted program that the regular classes are significantly smaller during those subjects. If I were of a suspicious nature, I might think that the real purpose of the gifted program was to reduce class sizes for students who may need help getting over minimum standards by moving students who can tolerate the larger class out into the gifted class. However, I think it's more likely that this is just a result of an inflexible staffing formula. I don't understand the rationale behind having such a low bar set for getting into the gifted program. (I'm too lazy to try to figure out the probability that 25% or 30% of students in a district with 28,000 students would score in the top percentile or two in a standardized test, but I'm quite confident that it is vanishingly small --- small enough to be considered impossible.)

The Northshore school district, with over 19,000 students, has a total of six gifted classrooms at the elementary level (grades 3-6) holding around 24 students each for a total of 144 kids. Thus, only about 2% or so of students get into the gifted program (figuring 144 students out of 4 grades' proportionate share the total K-12 enrollment).

Curriculum

As might be expected from the rigid rules, Alachua county schools' curriculum is highly structured. Even the gifted classes have students all working at the same pace. In fact, the second grade gifted program follows the regular second grade curriculum: they just complete each week's work faster, and then move on to additional enrichment material.

Our experience in Northshore was with the PACE (Parents Active in Cooperative Education) program. This program requires 80 hours/year of volunteer work from each family. Grades are paired, with first and second, third and fourth, and fifth and sixth grades together. Ofttimes, teachers work with one half of the class while parent volunteers work with the other half. This gives the teacher a great deal of flexibility, at the price of less structure. It is my understanding that regular classes are more structured, but not to the extent of Alachua county.

Which is better? I believe that depends on the child. Some children will benefit from a highly structured program, in which it is always clear what they are doing right now, what they will be doing next, what is expected of them, and there are no distractions from other students doing different things. On the other hand, for some students this is a recipe for boredom, withdrawal into their own internal world, and poor performance.

Conclusion

As you have probably determined from these two articles, we generally prefer the Northshore school district to Alachua county. It is important to note, however, that some of this relates to our own prejudices and our own daughters' learning styles. In many ways, the two districts are equivalent. For example, Northshore uses the Everyday Math textbooks, while Alachua uses Harcourt Math. Both series are, in our opinion, excellent. Initially, I didn't like Harcourt because of the heavy use of color and cartoons (I usually think that attention to appearance is a sign of lack of substance). But the Harcourt books are in some ways superior to the other; we are quite happy with them.

The biggest difference between the two districts is the freedom (or lack thereof) that teachers and principals have to shape the classroom and school to fit the students. To me, when an organization like the Alachua school district removes almost all discretion from a group of employees for how they do their jobs, this indicates a lack of trust in their abilities. If teachers and principals are truly well educated and trained and carefully recruited, then they should be treated as the professionals they are. They should be empowered to use their backgrounds creatively, rather than just used as instructional deliverers.