Vote to strengthen RI by strengthening RIPTA.

An open letter to Rhode Island's elected officials:

Rhode Island Public Transit Authority (RIPTA) need not be profitable. Its operation is in the public good. At this time, with real decline in wages, a higher percentage of unemployed than elsewhere in the US, and the need to move people around the state to take advantage of employment opportunities, we should be expending RIPTA. RIPTA is not a service: it is an infrastructure. Judge its utility based similarly to other infrastructures. When have the roads and bridges been profitable? They never have been and never will be, but we continue to expand and maintain them because they are in the public good.

If you are paid anywhere near the minimum wage then it takes you more than a full day's pay to buy a tank of gas (sightline.org). And gas is only part of the operating costs. How to you get to work if you can't afford a car? Without RIPTA then you must walk. Employment opportunities within walking distance are severely limited especially in RI where we have relatively small urban cores.

If RI wants to build the 21st Century Innovation Economy let us start by innovating and supporting public transport. Please vote to strengthen RI by strengthening RIPTA.

Rhode Island Voter Information Center

Rhode Island voters can use the tool http://www.sec.state.ri.us/vic/ to verify their voter registration and voting location.

Teaching has become automated, measured and homogenized

H&O no longer attend public school. They now attend a small private school.

They attended kindergarten through 3rd grade at the nearby Peace Dale Elementary public school. Kindergarten was great. H&O had a dedicated and effective teacher and teaching assistant. For 1st grade they attend the Kaleidoscope program -- a small school within the larger public school. Kaleidoscope looped 1st and 2nd grade and 3rd and 4th grade so that there were fewer transitions, greater student and teacher understanding, and generally a longer time for teaching and learning the core subjects. First grade was great; they had dedicated and effective teachers. Then the school abruptly canceled the program. Second grade was not great for O; a bad teacher and then a change in teachers. O hated school. Third grade was not great for H; four teacher changes in one year. H hated school.

What Chris and I also saw during this time was teachers losing teaching time to administrative tasks, more and more testing, more and more busy-work homework, and, frankly, a chaotic syllabus, advanced beyond the capabilities of most children, and with prescribed instruction. When the best that you can do is instruct and not teach how long would you stick around? Great teachers retired rather than face this. And finally, any attempt to attend to the character and the spirit of the children was gone.

So H&O are now at a school where teachers teach. They also are the administration. And they do attend to the character and spirit of the children. We are all much happier.

I had told myself when H&O were of school age that they would attend public school. I believed in local public schools and the public school system in general. We live in a town with highly regarded public schools. Unfortunately, we also live in a time where teaching has become instruction -- automated, measured, homogenized.

A bogus alternative reality

This Sunday's New York Times has a number of opinion pieces on the McCain lies. I encourge you to read read at least the Right to Smear editorial and Frank Rich's Truthiness Stages a Comeback column:
[...] McCain, Sarah Palin and their surrogates keep repeating the same lies over and over not just to smear their opponents and not just to mask their own record. Their larger aim is to construct a bogus alternative reality so relentless it can overwhelm any haphazard journalistic stabs at puncturing it.

McCain-Palin don't just lie, they lie about the lies and then play victim

Michael Tomasky's column this morning is sub-titled "McCain-Palin don't just lie, they lie about the lies and then play victim. How do you fight that?". This is deeply troubling. And that Obama does not seem to have a ready response is also equally troubling. We can't let Obama to be "swift-boated".

Cocky Whacko


I can't resist aiding the spread of the "Cocky Whacko" photo.

Beginning to not like Ubuntu

I am beginning to not like the Ubuntu Linux distribution. I needed Ruby and Ruby on Rails the other day and it required many more packages than, for example, Red Hat or plain Debian required. I needed the packages
  • rdoc
  • irb
  • libyaml-ruby
  • libzlib-ruby
  • ri
  • libopenssl-ruby
  • ruby1.8-dev
  • build-essential
  • sqllite3
  • libsqlite3-dev
Plus, the Ruby Gems package was ancient and so I needed to install this from source.

Today I needed vncserver, but after installing the RealVNC package -- called "vncserver" -- I and was unable to get it to use the ~/.vnc/xstartup. (And it did not know about the default location for Ubuntu X11 fonts either.) So I switched to tightvncserver and all was well. Perhaps if I knew some of the philosophy behind the Ubuntu packaging decisions I would be less at a loss for why stuff does not work. But I don't want to know this stuff. Sigh.

Windows XP for an old T20

In a past posting I wrote about finding the right OS for an old IBM Thinkpad T20. In the end I abandoned Linux and installed Windows XP. I don't want to be a system administrator but even with Ubuntu I felt like I had to be. The many hours of trying Linux distributions did teach me that 1) Damn Small Linux is fantastic and 2) Windows XP is a fast and capable OS on low end machines. However, with that said, I think the T20's has extraordinarily well designed and matched hardware.

Physical connection to the past

Reading the introduction to the cooking book Melody of India Cuisine I was given pause by the opening sentence: "Mom and I started dabbling on our book twelve years ago on the model 1960 Underwood typewriter, the same typewriter my Dad had used to type his Ph. D. thesis." Given the book's publication date, the typewriter had been with them for 24 years. How many tools with personal history or significance do I still have? The IBM PC Jr and TurboPascal that I wrote my first compiler with? The Macintosh II Symantic THINK C++ IDE that I wrote Sextant with? Perl 4 that I used writing Mesa/Vista. To keep these tools would be silly. How do you retain this physical connection to the past?

Red Chair Studio assistant wanted

Red Chair Studio, Chris's other self, is looking for a assistant for 5 to 8 hours a week working here in her Peace Dale, RI studio. She is looking for a detail oriented and flexible person with sewing skills to help with production and shipping. Call Chris at 401-258-0817.

The software IDE and the non-software technical team

I very much like integrated development environments (IDE). Like most engineers, I suspect, I scratch a little while using them because they don't work just the way I want. However, the productivity increase is enormous in comparison to the small irritations. Yesterday, I watched the View Case Study: USDA Maximizing Collaboration with NetBeans and Codebeamer presentation. CodeBeemer adds to the NetBeans IDE development collaboration features like revision control, issue tracking, discussions, etc and all surfaced and integrated in the NetBeans approach to information design and use.

This posting is not, however, about software development but about other non-software technical groups outside of the software industry. Do these groups know about these rich tools? I would really like to see a print shop or an archeologist's dig or a municipal planning department use these tools. Perhaps the leap from the common ecology of Word documents + Excel spreadsheets + remote file system is too big a one.

Does anyone have experience with non-software teams using software IDEs to manage their work and materials?

Discontinuing a long running script

Looking at a bash script I wrote yesterday I see that I did not give the user a way of discontinuing the processing's long run. The user's only resort was to kill the process. Killing a long-running script is never good action. Where was the script in it's process coordination? Is clean-up needed? If so, from where and how? It would be better to let the script exit at a good discontinuation point.

To this end, I would like to write the script

. Logger.sh
. Continuance.sh

CONTINUANCE=$(continuance $(basename $0))

for f in ...
do
   if [ -e $CONTINUANCE ]
   then
       info Processing $f
       ...
   else
       warn Process discontinued before completion
       exit 1
   fi
done
or
. Logger.sh
. Continuance.sh

C=$(continuance $(basename $0))

while [ -e $CONTINUANCE  ]
do
   ...   
done

if [ ! -e $CONTINUANCE  ]
then
    warn Process discontinued before completion
fi
Where the call to "continuance" creates a temporary file, sets up a HUP trap to delete the file, and prints the instructions
2008-08-11 13:58:26 INFO To discontinue processing 
send "kill -HUP 31788" or remove the file 
/tmp/u-continuance-ITexo31793
The function is very simple
function continuance {
    f=$(mktemp -p /tmp $1-continuance-XXXXXXXXXX)
    trap "rm -f $f" HUP
    info To discontinue processing send \"kill -HUP $$\" or remove the file $f
    echo $f
}

Invisible streetlights


I have been following the South Kingstown Parks' department's plans for changing the Peace Dale Village Green. One of the change components is that the department wants to install is "period" lighting along the pathway between the Guild and Kingston Rd. Few people like the idea for reasons historical, safety and aesthetics.

Today I found the most interesting design in Jongoh Lee's invisible streetlight. The light is little more than an artificial branch with a few leaves embeded with LEDs. Fantastic!

Lee's design does not solve the Green's lighting issues, but seeing this kind of innovation gives me confidence that there is a creative solution out there. Just got to keep looking.

On to Git

I was not looking forward to learning Subversion SCM. It just looked too complicated. The basic manual is a few hundred pages. Thank goodness that Git is taking over the SCM world. I can move on from CVS, an old and fond friend, to something that actually works for distributed development.

In my search for Git introductions I found Getting into SCM with Git. Worth reading.

Scratch and programming for kids

Scratch is another graphical programming language oriented towards children. It is built in Java and has a programming environment and a runtime environment. The runtime environment is only needed if you want to share your (read-only) program with others via the web. The programming environment is a little too modal and other ways ridged for my tastes -- that is, with my "kid" hat on. When you watch kids play they clearly have a center and a periphery. Their tools need to model this.

RESTful search

I am working on a small project to build a web application using current best-practices and tools. To start, I am working on the RESTful interface -- the application's API. What I did not understand was how to do a RESTful search. Searching is not a GET because there is no one resource or all resources returned. It is not a POST because nothing is being updated. What I discovered looking around the web was that when using REST you are not limited to the gang-of-four HTTP methods -- GET, PUT, POST, and DELETE -- but instead are open to a whole other set of methods [a][b]. There is a SEARCH method at IETF in early draft state. This is good enough for my needs.

I will use Java for this project. I know how to implement the interface using the Servlet framework but I wanted to use a framework designed for RESTful interaction. I found the Restlet framework and really like what I see so far. (I have not coded anything yet and so don't know how practical it is.) There is also JSR 311, "JAX-RS: The Java API for RESTful Web Services", which is an annotation-oriented design. I like the Restlet's class-oriented design much better.

Paper craft and architectural and landscape projects

There seems to have been a resurgence in paper craft models. I think part of the reason is the ability of tools like Pepakura Designer to take a 3D model and determine the parts needed and layout them out on pages. (I would love to know how this is done -- at a moderate level of detail.) It occurred to me that you might be able to use this with Google's SketchUp to create models of architectural and landscape projects. Perhaps the resulting paper craft models are not of a quality suitable for client presentation but it sure would be fun.

Damn Small Linux

I have been thinking about teaching my kids how to use eToys. To do this, it would be best if they each had their own box and so I have been looking for cheap laptops. I found two Thinkpad T20's for $100 on Craigslist in various states of repair and bought them. I have worked on T20's in the past and so I know their idiosyncrasies well.

One of the idiosyncrasies is getting X Windows to work. I first installed Ubuntu and everything worked but at a glacial pace. The T20 only has a 700Mhz CPU after all. But even at 700Mhz X Windows should fly. The real problems are 1) Gnome is a system hog and 2) this machine only has 128Mb. (It still feels weird that 128Mb is not much RAM. I remember very well Carnegie Mellon University's 3M machines which were to have 1 million bytes of memory, 1 million pixels on screen, and 1 million instructions per second!) So I installed Xubuntu. And this time the pace was faster but only by a smidge. And boot time was still many minutes in duration. Application switching could take a minute.

Searching for a smaller Linux distribution I came across Damn Small Linux and installed that. Well, installed is the wrong word as I first ran it from the LiveCD. It booted the T20 within seconds. X worked. Internet worked. Everything worked. And worked fast. This was a truly usable system on a T20.

The down side, and this is something I am still fighting with, is that it is not a true Debian distribution. It has its own packaging and distribution system. DSL's author had to make significant changes to the Debian core to make a workable distribution that fit on a business-card CD. DSL is intended to be a system for recovering a broken box. I understand this and the understand the impact the changes would have on DSL's ability to use existing Debian packages. However, the impact is only for a few classes of packages. Most POSIX and GTK applications will run fine. I wish the time and effort put into building the packaging system had been used to allow for the installation of standard Debian packages instead.

Before I wrestle too much longer with DSL I need to get Squeak installed. Wish me luck.

Another tag cloud


Leigh Dodds had a link to the fun Wordle tag cloud. Here is mine from del.icio.us. What is striking is the large number of links I have tagged as "to-read". Too many interests for the time I have.