Self-Applying Monetary Incentives to Improve Sleep Schedules

Sleeping Indira

For the next week, I will donate $1 to charity for every hour or fraction there of that I stay up after midnight. This is a one week experiment. Next week, I’ll evaluate it and decide if it’s something that I want to continue.


I have been trying to get on an earlier schedule for a while. One strategy that I’ve employed is to make myself to get up earlier. This semester, I took an early morning exercise class once a week. I made it to all classes and although there were a few painful days in which I was very sleep deprived, this has helped a lot.

However, I still find myself staying up later than I intend to do. When I’m on the computer, it’s just too easy to get sucked into thinking that I’ll just read one more article or post one additional email. When I’m out with friends, it’s easy to think that I’ll just stay up a few minutes longer. I’m instituting this experimental policy so that I’ll have an incentive to go to bed earlier. I know there will be times when staying up late is necessary or highly desirable which is why I’ve decided to use flexible monetary incentives rather than a hard and fast rule.

Notes: I’m counting the time when I’m in bed with the lights out rather than when I actually fall asleep. Calculating the exact time that I fall asleep is difficult and not something I can totally control. This project may have been inspired by this alarm clock.

Sleep, Don't Weep

Credits: Images courtesy of flickr  users kudumomo and Tambako the Jaguar (CC BY-ND 2.0)


Update: 29 April 2012 – Here are the results after 1 week.

Titanic Vintage Dance Weekend

From Titanic Vintage Dance Weekend

This weekend, I had the pleasure of attending Titanic Vintage Dance Weekend — a series of special events commemorating the 100 anniversary of the Titanic’s fateful maiden voyage. The dance weekend was run by commonwealth vintage dancers who always do an excellent job reenacting the historical ballroom. The attendees mostly worn historically accurate dress and their outfits were a treat to behold.

Although everything took place on land, they captured both the style of the ragtime period and the elegance of the RMS Titanic. Things started on Friday with a steerage dance reenacting the type of ball the that 3rd passengers might have had. Though comparatively informal by vintage standards, it was still classy and fun. Saturday featured an elegant formal tea luncheon at the historic Hawthorne Hotel followed by a formal dinner and grand ball at Colonial Hall at Rockafella’s. We finished off the weekend with a costumed stroll at the Peabody Essex Museum on Sunday morning and then a concert by grammy winning artist Ian Whitcomb in the afternoon.

While the events were festive celebrations of the kind that would have taken place a hundred years ago, the attendees frequently talked about the tragic loss of Titanic. At the 100 anniversary of the moment that the iceberg struck the ship they paused the grand ball and had a moment of silence out of respect for the victims.

The weekend was a unique opportunity to experience an earlier era. It was also a chance for me to catch up with old friends and make new ones. I’m very glad to have attended and would like to thank all those who worked so hard to make the weekend a success.

Here are some pictures here if you’re curious about the event.

Titanic Vintage Dance Weekend

The State of Perl

The last decade of Perl could be summarized as follows. Around 2000 Perl was essentially the goto scripting language for system administration and dynamic web sites. The design process for Perl 6 was announced in June of that year by Perl creator Larry Wall who hoped to remove “historical warts” from the language. It was expected that Perl 6 design and development would proceed quickly and that within a few years Perl 6 would displace Perl 5 the way Perl 5 displaced Perl 4. As a result development of Perl 5 stagnated, while the Perl community expected a Perl 6 which never really materialized. Perl 5.8 was released in 2002 and the 5.8.x branch remained the current version for 5 and a half years until Perl 5.10 was finally released in December of 2007. The Perl community eventually began to view Perl 6 as a parallel project rather than a replacement for Perl 5 but the damage had already been done.  Perl had lost much of its mindshare and was increasingly being displaced by languages such as Php, Python, and Ruby.The Perl community has returned to improving Perl 5 with renewed vigor. The community aims to release a new point release of Perl 5 every 6 months and numerous modules have been created to improve the Perl 5 experience. It’s hard to determine what the mind share of Perl will be a few years from now.

Perl now faces both technical and marketing challenges. In many ways, it is a victim of its own success.  Because Perl has been around so long, numerous outdated tutorials are still floating around the web. When Googling it can be difficult to figure out which pages tell the best way to do something in Perl now and which tell you what was the best way 10 years ago. Debian GNU/Linux and derivative distributions such as Ubuntu are essential written in Perl. While this increases Perl’s mind share, it also means that the system Perl can not be easily upgraded. Unlike updating the Java version, changing the Perl version has widespread implications that require extensive testing. As a result, Ubuntu release tend to include the version that was current 6 months before the actual release rather than the latest version.

More generally, Perl suffers from outdated perceptions. Yes it was once possible and common for people to write unreadable Perl programs that resembled line noise. (The old joke was that “Perl is like a toothbrush — you should use it but you don’t want to use someone elses”.) But this is no longer the case. Simply adding ‘use strict’ prevents a lot of bad code. Using good style practices prevents many of the rest of the issues. It’s certainly true that Perl allows people to do things that might not be a good idea such as using arbitrary regular expression delimiters but in real programs, this is the exception rather than the rule.

This has been a short discussion of the state of Perl and the issues facing it. I write this as someone who is knowledgeable about the language but isn’t a Perl partisan. I’ve known Perl for over a decade and used it as a primary development language for the last three years. However, I’ve also used other languages and know that every language has its strengths and weaknesses. In subsequent blog posts, I plan to further explore the state of Perl and the efforts of the community to improve it.