Archive for the ‘Life’ Category.

Five Birds in the Bush

Ah, those vicious decisions. Focus on one thing, and I mourn for dead ideas. Indulge my interests, and the surer bets seem to languish for want of attention.

My interest in Disk Clock faded after a total lack of marketing doomed my brief attempt at selling Disk Clock in the Chrome store. I’ve marked it as free, and released Moon Disk and Disk Calendar. I’m of a mind to approach Scott Thrift about doing a version for The Present, and I’ll need an annual movement to show off.

Meanwhile, on the actually making money front, I’ve been in touch with someone looking for Rails tutoring, and I’ve a got a line on another training opportunity which could lead to some small but passive income.

My compatriot on the startup project is sure it’s fundable with a little more work, which would solve the immediate money trouble, and be it’s own adventure.

Christmas Attack

It was a fairly normal holiday at my parents. We did the important things – coming together, and left out a lot of ceremony – tree and decorations. We are so distant now that gifts are token – we don’t know each other enough to say what the other wants, and there are few material things I want to begin with. (Perhaps there will be more with the money running out.)

The morning was pretty uneventful. I brought over my Wii. My parents were thinking about getting one, and it was pretty much gathering dust as I focused on other things. So there was a bit of an adventure trying to sort out all the cables, especially with the nicely hidden cabling of their AV setup. In the end, there wasn’t a good port on the TV, and it went through the front panel inputs of another box.

Later in the afternoon, some of their friends came over, and we played Uno Attack. The random-draw mechanism has a few obvious effects. The draw deck is held by the machine, and it only has one button, which often gives zero cards, but often spits out 6+. This essentially destroys the feature which saved the basic game for me: the strategic choice to draw instead of playing, which is far less attractive with possibility of filling up your hand again. The chance of getting away with none is cold comfort in comparison.

What saves Uno Attack is a set of new cards. Some are the obvious adjustments – draw X has to be translated into hitting the button. An interesting distinction is made between ‘hit twice’ (which is also a color card) and ‘hit till you get’ Far more interesting are the really new cards. Two of them give you an opportunity to affect a player who isnt’ adjacent to you, a constraint which is often dearly felt when you hear “Uno” across the table. “all hit” is wild but depends on the gadget, which gives nothing more often than cards. There is however one targeted card – change hands. This is colored, so you often can’t play it when you want to. And of course, you get your hand stolen as often as you pull off a nice swap. The other new card is ‘discard all of same color’, which offers a new strategic choice – it makes it possible to go out without having to say “Uno” (and dare anybody with a trade-hands) On the other hand, it tells the other players that you really truly are out of that color.


Thanksgiving day itself was at my parents house. They had another couple over, and we passed a lot of time playing UNO.

UNO was beyond my memory when I was doing game design. At first it seemed pretty mindless, until I grabbed the rules and figured out that you could choose to draw even if you had a playable card. (I purposefully looked at the rules when it it didn’t matter, but got slammed with draws anyway.) It’s still a heavily constrained game where you often can’t do what you’d really like to because the color is wrong or the leader isn’t sitting next to you.

Last year, the idea rolling around in my head was that it was the first real thanksgiving. It had only been a few months since I left my job, I was traveling around speaking at conferences, and turning down job inquiries. This year I’ve been disenchanted by empty conference rooms, preparation time, and travel costs. Meanwhile, my savings is halfway down and I really ought to start thinking about how I’m going to support myself. I suppose I should be thankful that I’ve had a year without ‘work’, and still have some money left.

Leaving Strange Loop

Tuesday 2011-09-20

Tuesday night I decided to pass on the Strange Loop cardinals game. Instead I met up with an old college friend who lived in the area. We drove across town against a gorgeous sunset, out to italian restaurant they had been meaning to try. As is often the case with restaurants, we had huge portions and I took home leftovers.

From there we wandered around some school’s campus. It may have started with a comment about fountains, though some of the campus fountains were turned off. We walked around a pond, lined with large rock samples of many kinds, and passed by the cactus garden on the way out.

Wednesday 2011-09-21

Wednesday morning I ate the leftover lasagna. I didn’t have utensils, so I just used my fingers (as nature intended). On the way out I got some more pictures of downtown St. Louis, and it’s erie blue fountain.

Since the train home was leaving in the afternoon, I headed out to the City Museum. I was introduced the City Museum by my friends from the previous night, during my trip to Strange Loop 2010. That was a night visit, so I figured I ought to get a look at it during the daytime.

Yup, that's a bus hanging off the edge.

That would be plane fuselages, which can be visited by wire tunnels

One of several towers outside, often connected to the planes by the wire tunnels.

The stone tower has this enchanting dragon inside.

A utility room transformed into a secret cave. Yes, you can go down the tiny passage, it leads to "20,000 leagues under the floor"

Many of the caves are sculpted like dragons and other creatures.

The interior shaft of the building is filled with old spiral staircases. Some have been turned into slides.

Theres the bus again, as viewed from the pond on the roof.

Traveling to Strange Loop

Sunday, 2011-09-18

The trip to Strange Loop started rather early Sunday morning – I had to get to the Metra station, to get into Chicago to take Amtrak to St. Louis, arriving with plenty of time to settle in during the afternoon.

Sometime while I was in Chicago Union Station, Sunday turned into a dark and rainy day. I didn’t pay too much attention to the weather. I got a seat next to the window and power outlets, but my neighbor was a friendly student traveling back to school. His main focus was biochemsitry, but he did some web page development and search engine optimization, so we had a little to talk about.

The moist weather did give me some misty shots of the arch on the way in. Things were starting to clear up by the time the train arrived in St. Louis. It was still overcast and wet, but not actively precipitating. The path from the train station to the hotel ran past CityGarden, a park, in direct line to the arch, filled with plants, water features, and art of all kinds.

Arriving at the hotel, I was confronted with The Elevator. The elevators at the Hilton St. Louis Ballpark have a touch panel where you select your floor before getting on. It’s not a very good touch panel – in fact it’s abysmal. Someone else clued me in to use a fingernail to activate it; I can’t help but wonder if someone bought touch sensors designed for pen input to try and save money. In theory putting in the destination floor beforehand allows the elevator system to plan more efficient routes. In practice, it felt uncommonly slow, and from what I overheard, many people agreed.

One of the reasons I arrived in the afternoon was to attend the speaker dinner. At last year’s Strange Loop I thought the pre-party went rather well, but this year I didn’t make much of the conversation. I went up to the rooftop bar afterwards; the view was poor as it had started raining again, and I failed to make an connections in the overcrowded room.

Working and Not Working

The year since leaving steady employment has been a study in contrasts. On one hand I’m busier than ever, and on the other I don’t feel like I’m going anywhere.

Having the freedom of my time has allowed me to attend various user groups and conferences. I spent a lot of time preparing presentations for some of them, but haven’t taken it far enough to get more than the cost of the conference, and once a hotel stay.

I think as close as I’ve gotten to an ideal day is making some progress, perhaps doing something else for a break, and then getting more done. In practice I usually start trying to check off items from the to-do list, and watch that turn into an all-day event. Or at least enough of the day – evenings are usually filled with martial arts or user groups. Sometimes it seems like the only days I make real progress are when nothing is really going on, and I can chew the usual round of email, laundry, groceries, etc. and then get a few hours of measurable progress, which actually seems to be a fairly rare event.

The Cave of the Mounds

Thursday 2011-08-18

Thursday morning I set off for Madison Ruby Conf. The conference didn’t start until Friday, so I figured I could look around a little. When I went to look up madison attractions however, the only one that really struck me was The Cave of the Mounds, a little outside of the city proper. (The House on the Rock was farther out, and a day trip in and of itself.)

It turned out to be around a half-hour past Madison, so it wasn’t quite as quick of an excursion as I thought. I did pass Erb Road on the way out, which seemed somehow appropriate for a trip to a Ruby conference (ERB is a common template format in Ruby on Rails) I relied on there being signs to direct me to the cave, and was not disappointed. I suppose it was about as close to the highway as a natural landmark could reasonably be.

Once I got out of the car, I saw a sign saying that the caves were cool, so I went back for jeans. By good fortune I was already wearing my only regular long-sleeve shirt, from Rubyconf.

The area outside of the cave includes a road painted as a timeline, terminating at the front door of the waiting room/gift shop, with the date of discovery. The gift shop was exactly what you’d expect – lots of fossils and crystals. It looks like they have recently installed a fossil dig and gem mining (e.g. rinsing)

The tour itself started with a video which went over the formation of caves and the discovery of this cave. The cave itself is an interesting study in contrasts. One one hand, they admonished us not to touch the cave, since it can disrupt the natural cave formation. On the other hand, the floor has been paved with cement to create a smooth walking surface, with stairs in places. The larger portion also has at least one artificial level, which obscures the size of the main cavern.

It’s also a study in the contrast of light and dark. The cave itself has no light at all (a point demonstrated for a few moments in a “you can’t see your hand in front of your face” part of the tour. (The little girl with flashing shoes thankfully remained still.) Lights are turned on selectively as tours pass through, with the stated purpose to prevent mold and such from finding it too hospitable. Lighting is mostly spotlights, pointing out salient cave features while maintaining the suggestion of darkness. The tour also uses the light to great effect, leaving areas in darkness until it suddenly opens up in a dramatic reveal.

One feature of the cave is where deposits formed variegated strips called “cave bacon”. Apparently water drips follow a path and leave behind deposits; this makes the area slightly lower, and more drop follow, slowly building a ridge. It was another apropos point for the trip to Madison Ruby (Chunky Bacon is a part of the Ruby culture)

Towards the beginning of the tour, we were shown an area where a sinkhole had collapsed into one end of the cave. I spent a little time afterwards going around the above-ground paths. I found a few sinkholes, but it wasn’t clear which one was over that end of the cave.

Refusing the Call

Thanks to SPARK I have the opportunity to get involved in Code Mountain. Now comes the difficult part of birthing a company, under very unusual circumstances.

As a SPARK team we had eight people working together. All that effort made it easier for us to put on a good show and win the competition. But for a startup with no income, all those people cause a bit of difficulty. The standard advice is to found a company with two, maybe three people. If two, you’ve got the business side (customer development) and the product side. Our team ended up being heavy on product side, so on paper we’ve got one master networker with a large stake, and everyone else splitting the rest. While I understand that some people are prepared to put in grueling hours, does that translate to a fifteen-times interest? Perhaps there is a sort of exponential price of time commitment – certainly I’ve avoided going off the high end, both because of reduced performance, and the utter blackout of everything else.

In truth I don’t know what to even ask for. The process of doing this all up front seems strangely out of place in an environment that is otherwise gung-ho agile. There are of course some provision for changes – “four year vest with one year cliff” in startup jargon, but it only addresses departures, not variance of contribution.

The other related issue (which actually came up sooner) is the CTO (Chief Technology Officer) position. This would be the entire product side in a two person startup. The investors of course want a big name that’s done it before, but we are seriously considering bootstrapping (no investment) In the world of by-the-book startups (who’s book, anyway?) the CTO is a more-than-full-time position. In the SPARK team, developers were myself, and another who has some relevant experience, but is’t available even full time.

Probably, all it would have taken for me to be that person would have been to step forward and confidently say “I’m your man”. That moment, of course, has passed. The consequences of that decision would be staggering. No more martial arts, no more condo board, no more walks in the woods, no more user groups, no more personal projects. and no more idle distractions. I’d certainly have to move downtown, at least on a trail basis, which would mean finding a place, dispositioning all my stuff, moving, and probably hiring someone to rent out my property. It would be a kind of death and resurrection – I’d be sorely tempted to throw a wake for the person I was.

I’ve lived my life mostly taking things pretty easy, sometimes enjoying moments of total effort. Since this is all I’ve known it might have been interesting to try for a little while, but this could easily become a many-years marathon. Having lived my whole life with the philosophy that it’s about more than money, it would seem a shame to just give in at the first real challenge. (Of course creating something is about more than money, but it would be a very stressful time all the same.) The fact that I don’t have the experience the advisors want doesn’t embolden me either.

New York: Taking the Highline Home

Sunday, July 10

Sunday I packed up. The logistics didn’t look good for stopping back at the hotel to check out. In part this was the remaining balance on my metro card. I turned out I would have been just as well off with a 7-day unlimited pass. It also would have helped if I hadn’t gotten off at the wrong stop once (they don’t give you any credit for close trips) Time was an issue, so I had to carry my baggage with me.

I also didn’t get much benefit from being in the conference hotel – I wasn’t around Friday night because of the play; I suppose I could have hung out in the lobby Saturday night after I missed the bar crowd. I suppose I did get the walk back with Kyle. But was it worth $200?

I started walking south to the Highline, a raised railway converted into a snaking park. Along the way I saw more of New York’s vertical parking solution. It seems that they would either need to valet the keys or have strict in/out times to manage the people on top. Breakfast was kind of random (I left my grapes at the AirBNB place, and it never seemed worth the trip to try and pick them up) I stopped at a diner, and got a huge fritata, with toast and potatoes to boot.

The Highline is kind of an interesting project. Different sections have their own character, from flat open walkways, raised platforms over mounded hills to support trees, and planters with rolling-on-rail benches nearby.

From the bottom of the Highline, I took the subway to jump back up towards Central park, stoping at Trader Joe’s to stock up for the train ride home. Heading towards the park, I’d seen a few references to the Alice in Wonderland statue, and finally found it, and the conservancy water, with it’s remote control sailboats.

Just south of there, another piece was carved out of the park for the Central Park Zoo. It’s a fairly small zoo, although well suited to the hour I had allotted for it – there was more than I really had to look at. I managed to squeeze out one last picture by turning down the size to fit the remaining sliver of space – an idea I got when I saw two pictures left turn into “Memory card full” – JPEG is variable size after all, so the camera was estimating.

From there it was another subway jump south, to the neighborhood of Penn Station. I picked up a falafel to save for dinner and arrived at the station with plenty of time to spare. I was disappointed that Amtrak’s check-in terminals couldn’t scan an iPad, but I had a paper backup just in case.

It turned out that the train had a dining car, so I missed an experience there by bringing my food with me. It didn’t look like a lot of other people were taking advantage of it either, but the car had reservation times, so it might have been too piecemeal to notice.

There was really nice sunset, lost to my full camera. Sleeping in a coach seat is hardly ideal, but with the train bumping and stopping, I don’t that a bed would make it much better.

New York: GothamJS

Saturday, July 9*

My second major reason for being in New York was GothamJS, a Javascript conference which actually didn’t sell out before I heard it was open for registration. Too late Saturday morning I realized that I could still go exploring; I set out into Central park, but realized that I wouldn’t have enough time before I got anywhere new.

GothamJS was held in the NYIT auditorium. The theater worked out well for the presentations, although the lobby area got a little cramped at times. I don’t know if it was intended to serve as a primary social space.

The first talk was one of the things that attracted me to GothamJS, The Once and Future Scriptloader by Kyle Simpson (aka Gettify). I dabbled with my own loader once, but lost interest when it got to the hard parts – browser testing and file optimization. Since then I’ve gone in with the RequireJS/AMD camp. Kyle actually promotes pure loaders – no dependency management (that might be a separate component) He broke down the challenges of loading (different scripts for different pages, caching, and parallel loading), called for the death of document.write, and laid out his personal perfect loader – any script, from any browser, at least as good as script-tags, without hacks or special cases. He also pointed out some challenges I hadn’t run into, as well as some techniques I never used – IE has a way to separate loading and execution, and async=false can also force execution in order. He is working on [], which was not released as of the conference.

Robert Nyman talked about HTML5 APIs. I’ve been around long enough to hear about most of the technologies. I did lear a few things, such as online/offline events – although their are still several browser kinks, and the file reader API. I mostly learned about interesting services: video transcoding, popcorn.js for live video sidebar, Google Body – a searchable 3d model, and Mozilla DevDerby, although unlike the page he showed that seemed to be a monthly challenge, the actual web site appeared to be a less frequent event.

Anton Kovalyov talked about JSHint, an alternate to JSLint that tries to be less opinionated than Douglas Crockford (e.g. a dictator). It also checks for implied globals.

Jonathan Julian went over the issues with Rendering Views in Javascript. Once again I’ve heard of most of the libraries involved, although he did raise a good point about search engine interaction with dynamic pages.

Rebecca Murphey presented Lessons from a Rewrite, that took a body of real-world experience and distilled it down a series of guidelines, backed by her actual experience.

Seb Lee-Delisle wowed everyone with CreativeJS Visual Effects. It was basically sprite graphics on canvas, and a few people said he could have actually gone beyond the really basic techniques. He still got some very nice effects with simple systems, and it’s good to see people who take these ideas and make them exciting. I got over the gee-wiz factor back in the BASIC days, so we need people to keep it fresh.

Mark Headd talked about JavaScript and Node.js in telephony. He started out saying “turns out people don’t like writing things in XML”. He was referring to a voice protocol, but in retrospect it may have also been a shot at his (Tropo’s) competitor Twilio. He some about telephony, and some about Javascript architechture, such as hosting demo as CouchApps and using Redis PubSub to as a message queue.

Yehuda Katz closed out with “The Fallacy of Microlibs”. As a developer of SproutCore, Yehuda can’t be called unbiased in the argument, but he argues well, and one presumes he’s working on SproutCore because he believes it the way to go. The basic argument seems to be that while microlibs (as promoted at []) are great for experimentation, the lack of coherency makes things more difficult for people trying to use them (“Integration eliminates cognitive overhead”). He points out the much-promoted UNIX philosophy of using small tools with pipes took ten years to develop – we probably don’t as good a common paradigm yet. Meanwhile, JS apps are competing with Cocoa (e.g. iOS), which is fairly consistent and well-documented.

The afterparty turned out to be some catering the crowded lobby. People stayed upstairs by the food, making it even worse. After a little wandering around I fell into the orbit of Yehuda, Kyle, and a few others discussing various minutia of JavaScript. People gradually wandered off, until we were informed that the building would be closing shortly. People agreed to meet up at a bar over in Hell’s Kitchen a little later.

I walked back to the hotel with Kyle Simpson (LABjs) and took the opportunity to feed my curiosity. I stopped developing my Module library when I got to the hard part, so I wondered if he knew where the gotchas were the exception-and-reload technique. Perhaps I wasn’t describing it very well, but it actually appeared to be something novel. He recommended that I move the library over to Github, which has apparently become the defacto Javascript host along with Ruby.

After a missing the first time, I finally found the specified bar. However, this crowd is so new to me that I didn’t recognize anywhere there. Given that I’m not really a bar person myself, I didn’t hang out.