Wednesday, December 28, 2011

Christmas Statistics

Statistics for photo Christmas cards and enclosed photos that I received this year.

Prints per paper manufacturer:

  • Fuji: 5
  • Kodak: 2
  • HP: 1

Square inches of paper per manufacturer:

  • Fuji: 108.5
  • Kodak: 26.25
  • HP: 24

Retailer:

  • studio: 4
  • Walmart: 2
  • Walgreens: 2

The smallest prints were made by photo studios and these accounted for all the Kodak prints. The largest prints were greeting cards made at Walmart and were on Fuji and HP paper.

This is consistent with my anecdotal observations of the past several years. Most of them appear to have been made in a store rather than ordered online. Draw your own conclusions.

Monday, October 17, 2011

Smashingline

I started working on Smashingline five months ago. Smashingline is a website that displays results from races. Most of the results are for footraces but there are some triathlons and a bike race or two.

For about two years I had wanted to build some sort of web property (a web site or a web app) as a way to demonstrate that I could build the frontend, backend, and an API to glue the two parts together. At the beginning of May of this year following a race that Sarah and I had both run we were discussing how tedious it was to download race results and create charts in Excel to get a better idea of how we did in the race relative to the other runners. I casually remarked that this seemed like something that would be helpful if it was online. As the thought formed I realized that this idea was a good candidate for the web site I was looking to build. I did a few quick searches but didn't find anything like it; I did turn up a variety of race results web sites, but at best they showed a table of results with a row for each runner. This presentation of data didn't (and still doesn't) give you any deep understanding of how you did compared to anyone else. A week later we were on vacation in Maine when I started putting the website together at the Maine Grind.

I made a few key decisions fairly quickly; first I chose to develop on Google's AppEngine. The reasons were entirely pragmatic: I already had the development environment including Eclipse and its AppEngine plugin installed and configured on my laptop. Second the project would be coded in Java. Since Java is very similar to C#, which I use daily at work, the learning curve was not very steep. In making these choices I had to balance conflicting desires: getting the website up and running as quickly as possible against learning a new language like Ruby or Python and an associated platform like Heroku or Amazon's AWS. In the end I decided that "shipping" the finished product was more important than academic pursuits. By the end of the vacation I had a working prototype.

Unlike the weekend projects you can often find posted to Hacker News I have probably spent about 140 hours on Smashingline. That time includes both writing code and uploading race data. About two months in to the project and with several races on the website I realized that I needed to make major changes to the way that race information was organized in the DataStore (Google's version of a database). It was taking too long to get information out and Google was changing the pricing model for AppEngine which would raise the cost of Smashingline from $0 per week to about $10 per week. Once I successfully completed those changes the site was much more responsive and the costs fell well below AppEngine's free quotas. Since then other changes have been relatively easy: adding "Like," "+1," and "Tweet" buttons to the front page and the results page for each entrant so they can share them with friends. Adding Google analytics and opening webmaster accounts at Google and Bing. Settling on the name "Smashingline" buying the domain and configuring DNS. Creating a Smashingline page on Facebook and opening a Smashingline account on Twitter. Of course there's always bug fixing and a whole host of minor improvements like a feedback form so people can suggest races for inclusion on the site.

The biggest challenge to the site going forward is the continued availablity of race data. Right now most race data on the web is an HTML table or a table embedded in a PDF file. But some of the results are only available through websites that display information for a limited number of runners at a time and they require the user to "page" through the information if they want to see all of it. Race result data, acquiring and arranging it for use on Smashingline, deserves to be the subject of its own post.

For now I have a growing backlog of features to add and not enough time to do them. Beyond that if the site is to thrive I have to deal with a variety of issues: it takes considerable time to properly format race results so they can be added to the DataStore, if the site's popularity grows data formatting will consume all of my available time (and more). Also as site usage increases its costs grow. Currently there is no advertising but that can't continue when the site exceeds AppEngine's free quotas. If ads become necessary I'd like to keep them as unobtrusive as possible. There is very little publicity for the site. Improving the site's visibility is probably more important than almost anything else, even greater than implementing new features. There is definitely a need to build relationships with race directors and other people and groups that organize races.

It's been an interesting almost six months of code hacking on vacations, nights, and weekends. If it's really true that most web sites and applications become an overnight success in about two years then I only have 18 months to go!

Tuesday, September 6, 2011

ToDo

I've heard that one of the keys to success is a todo list. This is mine, in no particular order:

Travel to South America

Travel to Antarctica (then I'll have bagged all seven continents)

Learn to play guitar

Learn to speak another language fluently (French preferred)

See a leopard and black rhino in The Mara

Create a trust fund to help educate more teachers and engineers that want to protect the environment

Get a better profile picture for Facebook

Have dinner with Sarah in that little cafe in Cassis on the Mediterranean coast of France enjoying a glass of wine as the Sun is setting

Write and publish a book

Publish a photo book of my own pictures (yes a coffee table book)

More blog posts for Deeloggee and Subv3rsicon (and better publicized)

First acquire hospital maternity equipment here in the States and second get it successfully to the Aitong health clinic in Kenya to save the lives of more mothers and their babies

Same for dental equipment. Right now their only treatment is to pull teeth.

Edit and print my backlog of "art" photos from the last twelve months

Use my meager software hacking skills to do something that makes the world a better place instead of just consuming resources

Take a wheel pottery class

Build shelves in the garage

My understanding of physics is pretty bad, need to improve it

Write a blog post

Sunday, April 3, 2011

The danger of running

"I wished to live deliberately, to front only the essential facts of life, and see if I could not learn what it had to teach, and not, when I came to die, discover that I had not lived."
- Henry David Thoreau

I was not a runner in school. I learned the danger of running later when I already had hardened habits and constricted thinking. The many physical hazards of running are well known: drivers who accelerate right into you without looking, snow hiding a sloped shoulder edge so that one misstep sends you crashing to the ground, a crowded race where it's easy to fall off an unseen curb tearing muscle and skin. But the real danger is more subtle:

  • Run one mile without stopping.
  • You can probably run two miles, and you do.
  • You run four miles. Most people tell you they can't imagine running so far.
  • Run ten miles then do it again but faster. If you can run ten miles what else can you do?
  • Run a half marathon. If you did that, who knows what your limit is?
  • You believe you can run a half marathon. It takes work but you do it.
  • You know you can do a marathon so you do.
This is the true danger of running. Because soon your life isn't framed by the words, "I can't do that." Instead it unfurls before you like an open road, or path, or trail, and you think, "What can't I do?" Open the door and go out; I've learned it's always a good day for a run.
For Sarah, who started me running. Racing in Kenya.

For Sarah, who started me running. Racing in Kenya.
Photo copyright 2010 Mary Crockett.

Monday, March 21, 2011

Shooting the Moon

"I'm in the wrong place!" I thought angrily. How could it be that after hours of preparation my photo of the "super moon" was probably not going to happen as planned? The modern technology I had employed to try to capture the best shot had failed me.

I started the day with a list of locations in Rochester that I thought might be good for shooting the moon. Each one was previewed and mapped out with Google Earth. The KML file with the locations was transferred to my phone and Dan O. and I went to each site in turn assessing it for a suitable foreground with the proper orientation. The first sign of trouble happened early when the phone's compass and sky map applications failed to calibrate properly. In the morning I had determined that the moon would rise at about ten degrees south of east but since the compass wasn't working it was difficult to visualize exactly where that was.

After visiting all the locations only one seemed to hold any promise, and we weren't really happy with it. In the end we decided to scrap the urban concept and photograph in Mendon Ponds Park. That afternoon I spent another two hours with Google Earth trying to find the most likely locations that fit our criteria: some sort of vegetation or other detail in the immediate foreground, water in the middle ground (but not a vast expanse) and hillside trees in the distance. Several places along the south west edge of Hundred Acre Pond seemed our best bet.

Scouting Super Moon Locations
Dan and Sarah at the edge of Hundred Acre Pond in Mendon Ponds Park.
Dan, Sarah and I got to the park about an hour before moonrise and geared up to scout out locations. Along the way we were distracted by four deer running just uphill of us across the West Esker and a beaver swimming along the edge of the pond. After surveying the area I decided to set up my tripod at the narrow channel that divides Hundred Acre Pond and Deep Pond. Dan decided to try his luck further back along the edge of the pond.

Here I was waiting and wondering when the moon would finally rise above the small hill in the east when I realized that there was a definite glow about 20 degrees to the right from where, based on my jittery phone compass, I had expected the moon to rise. The view in that direction was blocked by dense tree growth. I grabbed up my tripod, Sarah got the pack and we hustled back to where I thought I could get a better shot, but it was too late. The moon was already off the horizon there and I had no foreground detail at all, I might as well have taken pictures of the moon from just outside my front door.

I worked my way over to Dan who had managed to find a location with cattails, water, and distant trees. As I muttered about my poor photographic skills I started to look around (always a good idea for a photographer) and I had a sudden revelation: with the bright light I could make some landscape photographs illuminated by the moonlight and with stars overhead.

Hundred Acre Pond: Orion
Constellation Orion over Mendon Ponds Park lit by "super moon" light.
After a few experimental exposures I began photographing the pond with the Big Dipper hanging directly above. Right away I felt that I had something good here, maybe even better than a photo of the moon itself. After an hour or so of shooting with one final stop for a photo of Orion striding above the pond as though in pursuit of the deer we saw earlier, we piled our gear into the car and headed off to dinner. By the end it turned out to be a very satisfying evening of photography, nature, and friends. Next time though I'm bringing some ancient technology - a compass and a map.

Sunday, January 23, 2011

The Shadows Will Be Behind You if You Walk Into the Light

"Darkness cannot drive out darkness; only light can do that. Hate cannot drive out hate; only love can do that."
- Martin Luther King Jr.

With this morning's news of government employee malfeasance[1] and the shamelessly brazen behavior of elected officials[2] it would be easy to give free rein to winter darkness and the cynical feelings it breeds. After a brief renewal of my ongoing internal struggle with despair over the human condition I decided that rather than allowing small people to waste my time and attention I would concentrate it instead on someone who did something positive and improved the world.

Tom White was a founder and backer of Partners In Health. He died earlier this month. His friend Paul Farmer gave a wonderful eulogy that I encourage you to read in full[3].

Tom was a great man by conventional criteria but mistrusted, most of his life, these criteria. He was, as has been noted far and wide, a successful businessman who mistrusted the trappings of wealth and served as a model for spreading it around. He was a Harvard graduate who by his own account didn’t study much; a decorated soldier who was at heart a pacifist; a successful businessman who relied on generosity and trust in all his dealings; a devout Catholic who acknowledged crises of faith and knew the sharp limitations of all human institutions; and a family man with a large family here in this city and, thanks to his family’s willingness to share him, scattered throughout the wide world. . . Nothing made him happier than fixing a problem, but there were some he could not fix, and he confronted these too. When he could not save a life, or ease a loved one’s pain, he was still left with his ministry of showing up.
One of the many examples I should learn from Tom White's life is that even if I can't solve a problem I can still show up. Even if the situation is difficult, or it's awkward and I don't know what to do, I guess I can hold a hand at least as as well as the next person and be there.

1 - Democrat and Chronicle (David Damelio charged $3,988 at N.Y.C. strip club)
2 - Democrat and Chronicle (State Sen. James Alesi suing over fall at unfinished home)
3 - Partners in Health (He restored our faith in faith itself.)