Seattle 2.0 Awards

The first-ever Seattle 2.0 Awards event will take place on May 7th, 2009. Nominations have been made and the voting period will run from April 1 to 28. Awards will be given in 10 categories ranging from Best Startup to Best Social Event.

The startup scene in Seattle is strong and active, but not entirely visible or accessible to casual outsiders. This event should really help to highlight some of the great companies and people in the area.

The awards dinner will be held at the Pacific Science Center. Tickets are still available. I’ll see you there!

Links for Tuesday, March 24, 2009

  • John Hussman: Fed and Treasury – Putting off Hard Choices with Easy Money – “Make no mistake – we are selling off our future and the future of our children to prevent the bondholders of U.S. financial corporations from taking losses. We are using public funds to protect the bondholders of some of the most mismanaged companies in the history of capitalism, instead of allowing them to take losses that should have been their own.
  • Tomgram: A Second 9/11 in Slow Motion – “This time around there’s no dust, no ash, no acrid smell, no sirens, no jets, and no brave rescuers either. And yet the effect might, sooner or later, be far more apocalyptic and the lives swallowed up far greater. This time, of course, the fanatical extremists were homegrown. Their “caves” were on Wall Street. They hijacked our economy and did their level best to take down our world.
  • Green Phosphor: Technology Tour – “Our technology puts users and data into the same three-dimensional space. This enables you to look around, and look at data from any perspective. Everyone working in the space is represented by an avatar.” – Via Caleb.
  • Green Phosphor: 3D Environment for Biotech Research – “Green Phosphor can put all the stakeholders into a virtual lab for a year, with access to interactive 3D visualizations of all their data and connections to all the major proteomics databases, for less than the cost of getting them together for a one-day physical meeting WITHOUT their data.
  • Douglas Rushkoff: Let it Die – “The fact that the speculative economy for cash and commodities accounts for over 95% of economic transactions, while people actually using money and consuming commodities constitute less than 5% tells us something important. Real supply and demand have almost nothing to do with prices. We do not live in an economy, we live in a Ponzi scheme.

Links for Sunday, March 22, 2009

Links for Tuesday, March 17, 2009

  • Spoon Graphics: Twitter Background Design How-To and Best Practices – “With Twitter quickly becoming the hottest site to be seen on, everyone wants to stand out from the crowd. There has already been a range of quality designs showcased on various sites, which has shown an emergence of trends such as the ‘sidebar’. Let’s take a look at some of the best practices around Twitter background design and get to work creating our own.
  • Sky Signs: Take Your Message To New Heights – “Aerial advertising in Seattle, a powerful marketing opportunity.” – I saw this guy’s pickup truck in Redmond, figured they could use a plug!

Links for Monday, March 16, 2009

  • Linden Lab: How Meeting In Second Life Transformed IBM’s Technology Elite Into Virtual World Believers – “The 200+ participants were offered pre-conference training on the basics of Second Life to make them comfortable communicating and navigating within the environment. IBM estimates the ROI for the Virtual World Conference was roughly $320,000 and that the Annual Meeting was executed beautifully at one-ffth the cost of a real world event. Many IBM staff were converted into virtual world advocates, paving the way for many future internal conferences and events to be held within the space.

Of PL/I, Line Printers, Punch Cards, and Carriage Control

In the fall of 1979 I was living in Rockville, Maryland. I had been accepted at the University of Maryland, but decided to attend Montgomery College, right up the street from my house, instead. I wasn’t ready for that huge, sprawling campus or the large and apparently impersonal classes.

I entered the computer science program, and took classes in the contemporary languages of that era. I learned Fortran IV in my first semester. Around the same time I started my first programming job, at a small Bethesda company called Moshman Associates. My first task there was to write a macro assembler for the 6502 microprocessor. I wrote a Fortran simulation of the hashing algorithm that we had planned to use for instructions and labels, found that it had an excessively high number of collisions, and was given a nice raise for my trouble.

In my second semester I took a class in PL/I programming. Designed by IBM, PL/I was a clean, structured, and relatively complex language. The compiler had many, many options for optimization and for diagnostic output. I spent a lot of time experimenting with the options and carefully inspecting the resulting printouts in an attempt to write the most efficient code possible.

I need to explain how we would write and run our code at that time. We didn’t have our own PCs and we didn’t have terminals to log in to a time-sharing system. Instead, we would use an IBM 029 card punch to punch each line of code into a punched card. The 029 was a complex mechanical device, with noises, rhythms, and so forth. The cards were assembled into a deck, preceded by some job control language (JCL) statements which provided a name for the job and instructed the computer how to set up input and out devices and how to compile and run the code. Small decks could be rubber-banded together for safekeeping; larger decks (usually for COBOL programs) were best kept in the cardboard boxes that originally held the blank, unpunched cards.

Once the deck was ready, I would walk up the hall to the job submission window, hand it in to the woman behind the counter, and she would stack it up in the card reader for eventual processing. At crunch times there would be line of students and a big pile of unprocessed jobs.

When it was my deck’s turn to be run, she would load it into the card reader, the computer would read and process the cards, and print the results on a very fast IBM printer. The attendant would take the printout, wrap it around the cards, and file it away until I came back to the window to collect the results.

On a good day the turnaround time would be about 3 to 4 hours. At crunch time it might take slightly longer. If all went well the printout would include two sections — the evidence of a successful compilation, and the results of actually running the program. I quickly learned to be careful with my code and with my algorithms, so that my code would compile and run after just a few iterations. Others were not so fortunate, and would spend many hours waiting for their results, only to find that they’d misplaced some punctuation, forgotten to declare a variable, or made an algorithmic mistake. I remember one of my fellow students “bragging” that “I am getting pretty good at this, it only took me 30 tries to get it to compile.”

I remember taking away a couple of things from these early experiences. First, there was great value in desk checking your code and your algorithms to increase the odds of a successful run. Second, it was good to have several projects going simultaneously to make the best of your your time. Third, I was always shocked (from reading my printouts) to see that my code could wait in the queue for several hours in order to be compiled and run in the space of 2 or 3 seconds.

As I mentioned earlier, the IBM line printer had a unique feature known as carriage control. By punching different special characters in the first column you could make the printer do some special things when it printed out your code. For example a “1″ would make it advance to the top of the next page of green bar paper before it would print. This was a good way to make sure that each function was on a page of its own. The “+” (plus) sign was magic; it would inhibit the printer from advancing the paper to the next line after printing. The next line would overstrike the current line.

I learned how to put it to very good use at the end of my PL/I class. The instructor asked us to make our final assignment look as pretty as possible. For most people this meant clean comments, good variable names, a clean structure, and so forth.

I decided to go a step further! Because this was a school, they would do their best to get as much use of each printer ribbon as possible. Instead of printing in a solid black color, the printer would usually produce text that was, at best, a medium gray. I did some experimenting, and found that 3 overstrikes would create nice, black text.

I decided to see if I could use the overprinting feature to make my final PL/I program look really nice. After getting my code to work as desired, I set out to use bold highlighting on all of the variable names. This turned out to be easy, although I spent a lot of time on the card punch. Here’s what I did.

First, before going any further, I should explain that PL/I used the characters /* to open a comment and */ to close one. The comments were free-form, and could flow from one card to the next as desired.

Let’s say that I was writing a simple loop. The actual, unadorned PL/I code and comment would look like this:

To make the MONTH variable bold I punched a series of cards like this:

 

 
 
 
 

The compiler saw a DO statement with a very long comment. The DO statement would look like this on the printout:

DO MONTH = 1 TO 12; /* PROCESS EACH MONTH */

The use of this irregular carriage control upset the otherwise rhythmic sounds made by the printer and the operators sometimes thought that the printer had jammed and would cancel the job. Once they realized that it was me (one benefit of going to a small school) they allowed it to run to completion.

Needless to say, I aced the class!

My PL/I knowledge turned out to be quite useful. Within a year I worked on a project for the National Science Foundation. I wrote a very cool program that would verify the accuracy of grant data, basically adding up the rows and columns to make sure that they matched in the application (an inverse spreadsheet). A year or two later I used Digital Research’s very capable PL/I-80 compiler to prototype some of my own ideas for a spreadsheet.

Note: I used Ralf Kloth’s Punchcard emulator to create the card images.

Links for Sunday, March 15, 2009

  • Karl Denninger: Reserve Banking – “As the “spread” between production and net interest expense rises, the economy falters. A higher and higher percentage of the loans ultimately cannot be paid back, even productive loans, because the net interest expense over time exceeds the productive gain of the person who takes them out. The presence of this ever-widening spread, which is inherently part and parcel of fractional reserve banking, means that recessions are necessary and more importantly, some people who have taken out loans and some people who made loans must, during those recessions, go bankrupt.
  • Phil Windley: Continuous Deployment – “You may not be able to get to 50 deployments a day overnight, but you can increase the frequency of deployment and prioritize the development efforts necessary to increase that frequency. Set some goals and take your life back.
  • Caleb Booker: How Backchat Makes Your Presentation A Killer – “Every event we’ve ever run has had backchat built right in: the speaker in the virtual world uses the voice channel, and the audience uses the built-in local text chat from the same environment. We’ve even experimented with fielding questions from the audience this way, although on that end we find people tend to want a private aside with the moderator instead of asking publicly.
  • Tamar Weinberg: How to Present While People are Twittering – “Yes, presenting with the back-channel is challenging. Prepare yourself for what it will be like. We’re used to having eye contact with our audience and using that eye contact and audience reaction to measure how well we’re engaging the audience. Now when you say something brilliant, instead of nods of appreciation, there will be a flurry of tapping.

Links for Friday, March 13, 2009

  • Environmental Graffiti: 15 Beautiful Microscopic Images from Inside the Human Body – “Get up close and personal with your innards with these 15 amazing 3D-body shots. Almost all of the following images were captured using a scanning electron microscope (SEM), a type of electron microscope that uses a beam of high-energy electrons to scan surfaces of images
  • Time Photos: Detroit’s Beautiful, Horrible Decline – “Ruins are the visible symbols and landmarks of our societies and their changes…the volatile result of the change of eras and the fall of empires.
  • FreeNX: Next Generation Remote Display – “NX is an exciting new technology for remote display. It provides near local speed application responsiveness over high latency, low bandwidth links. The core libraries for NX are provided by NoMachine under the GPL. FreeNX is a GPL implementation of the NX Server and NX Client Components.

Links for Tuesday, March 10, 2009

  • Jim Kunstler: Forget About ‘Recovery’ – “The dangerous shift in public mood is liable to occur with shocking swiftness, in the manner of “phase change,” where one moment you see a bewildered bunch of flabby clown-citizens vacuously enraptured by “American Idol,” and the next moment they are transformed into a vicious mob hoisting flaming brands to the window treatments of a hedge funder’s McMansion.
  • Heinz Maas: All the jQuery Resources You’ll Ever Need – “Hi, today i will show a monster collection of jQuery resources you’ll ever need to create that amazing site for one of your clients or for one of your personal projects.
  • Newsweek: Now 4 Restaurant 2.0 – “Thanks to the unprecedented speed and scale of its success—crowds often exceed 600 people—Kogi has already transcended its roots as a gourmet gastromobile and emerged, through a combination of cuisine, context, attitude and Internet alchemy, as something far more interesting: America’s first viral restaurant.