Archive for the ‘technology’ Category
Continuous Monitoring Tutorial at Agile 2008
Last week, I conducted a tutorial on Continuous Monitoring at the Agile 2008 conference in Toronto. The title of the session is Continuous Monitoring: Beyond Continuous Integration. Unfortunately, the track organizers changed the topic title on me twice and as a result I ended up with a number of attendees who had come to learn about setting up an automated build server. Ack! Hopefully, they didn’t go away disappointed and still got something valuable out of the tutorial.
The session was divided into 3 sections: I began with a presentation introducing the topic; next, participants were encouraged to work in small groups to design an andon dashboard for their project teams; the remainder of the session was spent discussing the implementation details involved in building a dashboard. My plan for the latter half of the session was to get participants to integrate metric data from different sources via RESTful XML web services into a simple Rails-based dashboard that I have thrown together, but given the size and interest of the group, it seemed easiest to just discuss the implementation rather than go through with the exercise. I had also intended to demo using a digital photo frame as a digital dashboard, but my photo frame couldn’t get onto the hotel’s wireless.
If you are interested in a copy of the presentation, I’ve uploaded it in Keynote or PowerPoint 2003. Please feel free to use the contents of the slides. The presentation is done in the Lessig style, so it might not be the easiest to follow. If you end up presenting on the topic, let me know — I’m interested to track the thinking and ideas as they evolve. Here’s the embedded slideshow from Slideshare:
As for the code that I used in the demo, I’ll get it uploaded to github soon.
Tags: agile 2008, continuous monitoring
Filed under agile, ruby, technology :
Comments (0) :
Aug 14th, 2008
Continuous Monitoring on Hanselminutes
While at DevTeach, I was interviewed by Scott Hanselman for his Hanselminutes Podcast. We started out talking about the history of the CruiseControl.NET project, but I opted to segue into discussing Continuous Monitoring. Continuous Monitoring focuses on providing continuous feedback to a team by leveraging visible dashboard displays to ambiently communicate information about the health and state of their project. I intend to write more about the practice here on this blog, but for now the podcast is the best place to learn more about it. I will be presenting about it at Agile 2008 and if you are interested in joining the discussion, feel free to join the Continuous Monitoring group.
Corrections:
There are a few statistics that I cited incorrectly off the top of my head during the podcast:
- The CruiseControl.NET project has consumed over 46 person years of effort - at least based on what oloh can divine from our subversion repository.
- The CruiseControl.NET project has had over 800,000 downloads - not 80,000 as I said during the interview. I was off by an order of magnitude. Oh and this doesn’t include all of the direct downloads from CCNetLive
Tags: continuous monitoring, hanselminutes, podcast
Filed under .net, agile, technology :
Comments (1) :
May 20th, 2008
DevTeach Toronto Wrap-up
Last week I was out in Toronto presenting at DevTeach. I gave 3 presentations:
- Database Migration in .NET (Sample Code)
- Recommended CI Practices
- Operations Database: Bridging the Gap between Development and Production
Unfortunately I ended up attending relatively few of the sessions as I was pretty busy preparing the materials for my presentations. But what I did see was quite good. I particularly liked Derek Hatcher’s Leveraging the Amazon Platform (EC2 and S3) and Greg Young’s DDDD, Unshackle Your Domain.
What I enjoyed most about the conference was getting to know and learn from some of the experts in a new technology circle. I missed last year’s DevTeach in Vancouver as I was in China at the time but I was glad to have made it out this one.
Tags: CI, devteach, migrations, operations database, speaking
Filed under .net, agile, technology :
Comments (3) :
May 20th, 2008
Scaling Continuous Integration paper
I wrote Garmisch-Partenkirchen. While it is a bit dated, most of the advice in it is still relevant.
I’m in Toronto this week speaking at DevTeach. One of the sessions that I will be doing is on Recommended Practices for Continuous Integration and I’ll be referring this paper.
Tags: continuous integration, CruiseControl.NET
Filed under .net, agile, technology :
Comments (1) :
May 13th, 2008
Earth Hour
At 8pm Saturday March 29th, people around the world turned out the lights in support of Earth Hour. Earth Hour is a campaign organized by the WWF to raise awareness of the connection between energy use and global climate change. The event encourages people to take action by turning off their lights and power to any non-essential devices for the 60 minutes between 8pm and 9pm.
This year’s Earth Hour was a very busy event for me and my new company Small Energy Group. In partnership with the University of British Columbia, Vancouver City Hall, and the Village of Hartley Bay, we monitored the energy use over the day for each site to quantify and make visible the energy savings impact of their actions. UBC had committed to powering down non-essential services over the entire day; City Hall shut off the floodlights lighting the art deco facade for the building; and in Hartley Bay, they turned off the diesel generator that supplies power to the whole community plunging the village into darkness.
You can see the results of the savings achieved by each site by checking out the web site: http://earthhour.smallenergygroup.com/.
Tags: earth hour, energy, small energy group
Filed under environment, life, technology :
Comments (0) :
Apr 10th, 2008
More MacBook Pros and Cons
Now that I’ve had my MacBook Pro for a little over a month, I have some additional observations on its merits and demerits. Overall, I’m still extremely happy with the product and consider it to be the best laptop I’ve owned to-date.
I still do quite a bit of work in Windows (both development and work with MS Office). I purchased a copy of VMWare Fusion to virtualize my Windows Bootcamp partition. Fusion makes it easy to operate concurrently on both Windows and OSX without any noticeable performance hit. I can drag files or copy and paste text back and forth from one environment to the other. Unlike Parallels, it provides a performant virtualized environment that I would actually do development in. That said, I have noticed some strangeness when trying to access a DVD drive or USB devices while running Fusion. I haven’t investigated enough to figure out what the issue is, but these problems seemed to disappear after shutting down the virtualized environment.
Another thing about the MacBook that is quite nice is the little remote that it comes with. It works well for driving presentations, pausing movies and shuffling songs. I’ve previously owned a USB-enabled remote for presentations, which I’ve now happily passed on to my wife.
Speaking of movies, I’ve been quite impressed with the quality of the MacBook Superdrive. I have a few DVD movies that I picked up in China that I haven’t been able to play on a PC. But the Superdrive can read them.
My one big annoyance is the lack of support for a direct VGA connection. I hate having to carry around the DVI-VGA dongle. It’s easy to forget or leave behind attached to the projector. I understand why Apple would provide support for the higher-quality, more future-proof DVI, but the majority of projectors and external monitors out there still require a VGA connection. Would providing VGA support really been such a big effort?
Tags: macbook
Filed under technology :
Comments (0) :
Mar 10th, 2008
Speaking at DevTeach, Toronto
I have been selected as a speaker at the Toronto DevTeach event on May 12-16th. I’m running 3 session:
- Automated Database Evolution and Deployment
- Recommended practices for Continuous Integration
- Home-grown Production System Monitoring and Report
Let me know if you’re planning to attend the event and if there’s anything in particular that you would like to see covered in this event.
Tags: devteach, speaking
Filed under technology :
Comments (2) :
Feb 11th, 2008
Syntax highlighting Ruby code
Since setting up this blog, I have been experimenting with various ways to display code on this blog. I started out trying some of the Wordpress plugins like SyntaxHighlighter that used the Google code javascript library, but I wasn’t very happy with the result.
Looking around, it seems like the Ruby community generally just handles code formatting using the Syntax module. Here’s the code that I have put together to handle formatting code for this blog:
#!/usr/bin/ruby require ‘rubygems‘ require ‘syntax/convertors/html‘ def convert(code) convertor = Syntax::Convertors::HTML.for_syntax "ruby" ‘<pre class="ruby">‘ + convertor.convert(code, false) + ‘</pre>‘ end if ARGV.size > 0 code = convert(ARGF.read) File.open(ARGF.path + ".html", "w").write(code) else # use clipboard if no file is specified code = convert(`pbpaste`) IO.popen("pbcopy", "w") { |clipboard| clipboard.print code } end
One thing that I found that I had to be careful with, however, when pasting code into the WordPress editor is that it has a tendency to remove all carriage returns from pasted markup. Obviously this isn’t a problem normally, but when dealing with preformatted <pre> tags, it tends to break the formatting. It looks like most WordPress users who are comfortable with HTML just disable the visual editor.
Tags: blog, code, ruby
Filed under technology :
Comments (0) :
Feb 11th, 2008
MacBook Pro: first impressions
I’ve had my MacBook Pro now for just over a week and I have to say that I’m very impressed so far. It performs well, it’s well designed, it has great battery life and it is light and portable. I have to admit that I was a bit worried about adapting to OSX, but the learning curve was gentle and most things were quite intuitive. Now that I have a WindowsXP Bootcamp partition set up, it makes for a great .NET development laptop as well. One of my colleagues mentioned that you can use OSX disk utility to create an additional FAT32 partition that you can use to share common files between Windows and OSX. If I had thought of that then I could have set the Bootcamp partition up as NTFS. Anyway, all of that aside, there are still some things about the Mac that bug me:
- Why does Apple still insist on designing mice and trackpads with only one button? I know it’s a design thing, but honestly. Having to do crtl-click or have two fingers on the trackpad + click just seems to be poor usability.
- Once you minimize a window, it is very hard to find again. The only way that I’ve found it is to go to the Window menu and select the window’s title. Minimized windows don’t show up when you cmd+`. This seems to be a usability flaw to me, especially as in MS Windows minimized windows are easily visible in the task bar. Also as a Windows user, I’m accustomed to double-clicking on a window’s title bar to maximize it — in OSX, the window is minimized instead.
- In OSX, closing windows does not close the application. It is pretty easy to end up in a situation where you have a lot of applications running without realizing it because there are no open windows associated with that application. Coming from a Windows background, it seems pretty intuitive that closing the last open window would close the application, but apparently the designers of OSX don’t think so.
- The keyboard layout seems a bit bizarre to me. For example, why not have a separate delete and backspace key. If I want to do a Windows-style delete, I have to type fn+delete. This is a pretty common operation — why not dedicate a key to it instead of making it a combination key click. They could use the superfluous enter key which, at least on the MacBook Pros, is on the bottom right side of the keyboard. And while we’re at it, why not dedicated page up, page down, home and end keys instead of having to do ctrl+arrow key or cmd+arrow key.
Tags: apple, macbook
Filed under technology :
Comments (1) :
Feb 11th, 2008
NetSquared Vancouver
Last night I attended the first NetSquared meet-up. NetSquared is a forum for people interested in the intersection between IT and social change. This local event has spun out of the Web of Change community as a more regular place to keep in touch and share ideas. The session was kicked off by Tom Williams at GiveMeaning.com, self-professed Obama fan-boy. I was interested to hear Tom speak as I recently used the GiveMeaning site as part of Josie’s charity. Unfortunately, relatively little of his talk was about the site, so there wasn’t much new there.
The highlight presentation of the evening was by Igor Faletski from Handi Mobility talking about their new project livevote.ca. This simple Flash-driven site allows you to set up SMS-driven polls in seconds. Handi Mobility is behind the Translink SMS schedule system and they have set the livevote.ca site up as a free service. The poll results are easily embeddable within a web site as you should be able to see below:
At the session I also had the chance to catch up with Trevor Bowden, who I haven’t seen since high school, about his new venture EcoLabelling.org. This site provides a great service by helping consumers and businesses sort through the array of professed ecolabels out there, sorting the good from the greenwash.
Tags: livevote.ca, netsquared
Filed under technology :
Comments (0) :
Feb 7th, 2008