Archive | Home Page

Articles to appear on the home page (nearly all)

New Hampshire Ruby / Rails Group, MONDAY, 16 November 2009

Reposting Nick’s announcement from

NHRuby is meeting for the last time this year on Monday the 16th at 7pm at RMC Research, 1000 Market Street, Building 2, Portsmouth, NH. Monday?! You say? Yes — due to scheduling conflicts, the regular meeting day for NHRuby is now to the third Monday of the month. Also, since next month’s meeting fell so close to the Christmas holiday, we decided to skip the December meetup and resume in January. So join us for the last meeting of 2009 for two presentations by NHRuby regulars, Nick Plante and Brian Turnbull.

Nick will present EC2, Amazon’s Elastic Compute Cloud. EC2 is a web service which allows customers to rent virtual server instances by the hour. The real power of EC2 is that it allows you to auto-scale your web applications on demand. Expecting heavy load today? Fire up another web app server or two, with no wait time for procurement, while taking advantage of Amazon’s robust infrastructure.

Making EC2 even more attractive are tools like Matt Conway’s Rubber, a set of extensions to Capistrano that allows you to script procurement and provisioning of server instances as well as deployment of your application itself. Need to set up a staging server? Use Rubber to deploy a disk image, install the necessary stack and utilities, and deploy the appropriate version of your application — in moments — all automatically. In this talk, Nick will quickly discuss the basics you need to know and then dive right into a realtime demo.

Brian will introduce RVM, the Ruby Version Manager. RVM is a command line tool which allows us to easily install, manage, and work with multiple Ruby environments and sets of gems. Topics to be covered include:

  • Installation of RVM on Linux or OS X.
  • Day to day use of RVM to switch between Ruby interpreters
  • Managing sets of gems using Named Gem Sets

If you’ve ever been burned by differences between development and production, you should check out RVM — see how easy it is to take control of your Ruby environment.

So join us on Monday, 16 November at RMC Research for the last meeting of the year. Hope to see you there!


I think I saw this written up in one of ACM‘s magazines, but those don’t get a lot of traffic, and they hide much of their best content behind subscriber-only firewalls. NPR did a story over the weekend on a group at Stanford doing “computational photography” – camera hardware with a Linux backend. I’ve been a fan of photography for decades, since Dad and I set up a dark room in the cellar. The Stanford prototypes are ungainly, of course, but the potential is very interesting. Here’s the story and the linked video. While you wouldn’t like to lug the prototype around all day on a neck strap, the idea of a “smart” camera where you could develop (or download) new effects, hacks, etc. and upgrade the capabilities of your camera is very attractive. Like the consumer cellular telephones started out as fixed devices and added uploadable ringtones, then backgrounds, then camera effects, then wide-open platforms like Google’s Android phone, an open hardware platform for photography could create an entire new category of devices.

DLSLUG: Forecast is Clouds, and Nifties! Notes from 3-Sept-2009 meeting

Fifteen people ranging in age from 4 years old to, well, quite a bit older than that, attended the September meeting of the Dartmouth – Lake Sunapee Linux User Group. DLSLUG meets on the first Thursday of most months somewhere on the Dartmouth campus. Join the announcement list to keep up with the latest news. The meeting consisted of the usual round of announcements, two short presentations, informal quick presentations by the assembled crowd — Nifties! — and discussion that went on until the janitors kicked us out.

Bill Stearns demonstrated the drop-dead simplicity of configuring and launching a virtual machine on the Rackspace Cloud ( Computing site. Nearly as quickly as he could describe it, Bill set up a new machine, choose the memory and disk size, the version of operating system, and got the machine up and running (he had previously registered, so he had an account and payment information on file). The costs for machines are based purely on how much you use, the hours the machine is running and the bandwidth consumed. A minimal machine can be deployed at 1.5 cents per hour, and a busy machine can cost less than $60 a month. This is well worth looking into if you’d like to deploy a backup DNS server or your entire online facilities.

Rich Brown of Dartware showed what his company has been up to in extending the reach of the InterMapper ( network monitoring software to work on, and with, the Amazon Web Services (AWS), EC2 and S3. AWS is the more mature service and seems to be targeted more at enterprise customers. Amazon offers a cloud monitoring service and APIs that let you launch additional instances of your saved imaged machines as needed. InterMapper is adding some interesting facilities to the service, and have free 5-user licenses available for the asking.

Alan Johnson showed a nifty on the command line pv tool (Progress Viewer) which is a classic small-tools-loosely-joined *nix tool: a  pipe that can display the progress of data through that pipe. Alan showed a simple example of cat’ing /dev/zero to /dev/null and sticking pv in the middle to show the progress. Cognoscenti in the audience pointed out that cat wasn’t necessary, and using pv with directly piped input and output displayed throughput of an order of magnitude increase. Debate ensued as to the many causes likely to contribute to this effect. Nerds are so cute.

P.S. Those interested in testing pv on their own machines should find it part of many Linux distributions. The caution at the end of the discussion section of the man page ( should be taken seriously.


James Murza showed us some code he’d been working on. It looks up words you specify on wiktionary (, finds all of the translations wiktionary offers and calculates a numeric value based on some semantic qualities of the word for each language. Then, James offers a PHP page where you can list the relative differences between any two languages, based on the words you’ve selected. So, for example, French and Spanish words tended to score close together, while Tagalog and Frisian had little in common.


Bill McGonigle demonstrated his Wok-Key login, a very clever Javascript routine for allowing you to log into your SquirrelMail front end from a machine you might not trust to share your password with. Instead of typing your actual password, the Wok-Key code generates a table on the fly (different each time) of two-letter pairs matched to all the keyboard characters, and displays a table to the screen of the letter-pairs laid out like a QWERTY keyboard, upper- and lower-case. Rather than typing your password, you type the equivalent two-letter pairs, and the Javascript on the page converts your choice to the password to be sent to the backend. This means a keystroke logger will never see your password, and it is unlikely to be saved in a cache on the browser.


Lloyd Kvam announced there were two new additions to the library, one book on Erlang ( and a DVD on Perl ( Any GNHLUG member (that’s you!) can check out a book by contacting Lloyd. The list of books in our library can be found at:

Bill McGonigle said that he’s trying to line up the correct facilities for the next meeting, and if we’re able to get a room that will support all our laptops, we’ll go for a session on encryption and a key-signing party. Stay tuned for a confirming announcement.

Thanks to Bill McG for organizing the meeting, to Dartmouth College for the great facilities, to Bill Stearns and Rich Brown and all the Nifties! presenters for the participation.

Notes from Python Special Interest Group, 27-August-2009

Twelve folks attended the August meeting of the Python Special Interest Group, one of the most active chapters of the Greater New Hampshire Linux User Group. The meeting was held on the regular night, the fourth Thursday of the month at the Amoskeag Business Incubator in Manchester, gathering at 6:30 with the formal meeting starting at 7 PM.

I gave the usual pitch about the GNHLUG, checking the calendars for upcoming meetings, joining the announcement mailing lists for low-traffic meeting announcments, or the GNHLUG and PySIG discussion list for slightly-higher traffic but high-quality technical discussions, and mentioned some of the upcoming meetings. I also reminded members that user group discounts are available from many of the book publishers, and that if they are interested in reviewing a recently released book, I can request one through the user group program.

Software Freedom Day is coming up September 19th, and Arc will be running an event in Manchester. Keep an eye on the mailing list for further details.

Mark talked about his monthly Tech Talk presentations in at the Lawrence Library in Pepperell, MA (next meeting, September 30th), and his Tech Talk newsletter. Mark is doing a great job getting the word out there and spreading the message about Free/Open Source to non-technical folks. He’s also tried to get a hearing about Open Source in his local schools, but without much luck. Mark also pointed out the new Full Circle magazine Issue 27, which starts a tutorial series on Python.

Arc Riley gave a quick demo of Crunchy, a python-based local web server for serving Python tutorials. Looks neat.

Arc talked about the Python Software Foundation and the Google Summer of Code and also here. The project Arc mentored helped to develop the 3to2 program for rolling back code written for Python 3 to run in Python 2.x. While the code is still in an alpha state, it successfully performs a lot of the conversion needed, and will continue as a framework for the final product. Arc managed the GSOC for the PSF. The Python Software Foundation had the second largest number of sponsored GSOC projects (Apache was #1) and most were completed successfully. Thanks to Arc for a lot of hard work this summer!

Kent S. Johnson talked about itertools. Itertools provides a simple way to represent and manipulate large sequences of numbers without the necessity to consume large memory and CPU resources with creating the entire sequence before iterating over the sequences. Starting with some simple examples of arrays and lists, sequences and generators, Kent built up examples (with some contributions from Bill Freeman) into a more complex problem that illustrated why itertools is so handy. Well done!

Bruce Labitt is almost single-handedly responsible for keeping the pysig mailing list going this summer. Bruce talked about the work he’s doing with intensive calculations and huge arrays. Bruce is building some complex simulations of radio waveforms and calculating various aspects of the radio waves for regulatory compliance. He’s using Python and NumPy and other libraries to generate test data and simulations, and interfacing common PCs with some supercomputing facilities for the heavy number-crunching. Very interesting talk.

Thanks to Bill Sconce for organizing the meeting, to Mark, Arc and Bruce for presenting, to Janet for the awesome cookies, to the Amoskeag  Business Incubator for the great facilities, and to all for attending and participating.

Notes from NH Ruby group, 20-Aug-2009, “Where’d you learn that?”

Eight folks enjoyed an excellent dinner at The Rosa Restaurant. We had a private room upstairs where we could woot and yell over each other and tell geek jokes without inhibitions, not that that has ever stopped us before.

Nick Plante mentioned Rails Rumble coming up this weekend. Watch for some incredible apps coming from the Rumble. Can’t wait to see the winners.

Adam Bair brought along two books, Kent Beck’s “Smalltalk Best Practice Patterns” (ISBN 978-0134769042) and Martin Fowler’s “Refactoring” (978-0201485677). Adam credit both books as being very helpful for his practice in the past several years where he has had to refactor a lot of code in rescuing lower-quality Rails projects.

Adam also mentioned an inspirational presentation by Marcel Molina, Jr. at Ruby Hoedown 2007 called “Beautiful Code” ( – Adam recommends the higher quality videos as they include video/slides side by side – and also browsing much of the site for some great videos.

Russ talked about Peepcode videos (, which he really appreciates. In particular, he mentioned the most recent, Advanced Command Line, helped him debug an unusual problem he was having with one remote client whose shell behaved incorrectly. He’s used inspiration from that video to reconfigure the way he uses his shell. Russ also mentioned Ryan Bates “RailsCasts” ( as very useful, and in particular, thought that the three part series on forms (link updated; thanks, Russ!) changed the way he developed Ruby apps.

I talked a little bit about “The Well Grounded Rubyist” (ISBN 979-1933988658) by David Black, which has helped me fill in some of the background of how and why Ruby behaves the way it does. I also passed around Jason Clinton’s “Ruby Phrasebook” which is a handy book of recipes on how an experienced Rubyist is likely to solve common problems like parsing config files or processing XML.

Nick mentioned that he’s using the unix screen command to do screen-sharing for remote pair-programming and you could see the lightbulbs go off over people’s heads (“That’s my payoff for tonight!” one attendee exclaimed.) He’s also working with EC2 instances and is fired up over how simple and powerful they are. Nick promised a followup, perhaps a demo at a future NHRuby meeting, and Casey mentioned that there’s someone local who’s been doing demos on the Amazon Web Services offerings – we hope to come up with some contact info and see if we can schedule a presentation.

The group also talked about how, as a group, we might contribute to one particular open source project. A couple of ideas were batted around. I look forward to hearing more about this idea.

The night’s theme was “How do you know that?” and I asked about how people are keeping up on all the news about what’s happening. We didn’t really come up with a list of links or blogs or news sites, so if you think of any now (or have your bookmarks handy for sharing), I’d appreciate you passing them on and I’ll include them in the meeting notes.

Thanks all, for a fun dinner amongst friends and some inspiring ideas!

Pro Git

Congratulations to author Scott Chacon and publisher Apress for the newly-released book, “Pro Git,” a book about the professional use of Git, the version control system. Git is the engine beneath the popular site where much of the Ruby on Rails community does their development. Git is also the core of the version control system for the Linux kernel. Kudos to both author and publisher, for releasing the book under a Creative Commons Attribution-Non Commercial-Share Alike 3.0 license. This is a valuable service to the community so that search engines will find authoritative information on Git, and also serves as great advertising for the book. Apress will be providing a review copy for the GNHLUG members to review; keep an eye out for a review soon! And if you’re using Git as part of your professional work, consider purchasing the book to thank Scott for his efforts and APress for their wisdom in releasing the book on the web.


Has everyone made the connection that coding web applications in HTML for content and structure, CSS for presentation and Javascript for functionality is the same as HTML as Model, CSS as View and Javascript as Controller? Metaphors and models are always only a first approximation, but this is an interesting one.

Photo Gallery

I’m evaluating some photo gallery add-ons for the blog, so anticipated a few posts that appear and disappear…

Blue Iris, taken June 8th, 2009

Blue Iris, taken June 8th, 2009

orange day lilly, taken 27 June 2009

orange day lilly, taken 27 June 2009

Notes from New Hampshire Ruby User Group, 25 June 2009: Pat Allen, Thinking Sphinx and Casey Rosenthal SASSiJS

Twelve people attended the June meeting of the New Hampshire Ruby / Rails User Group , held on the 4th Thursday of the month ( we usually meet on the 3rd Thursday) at RMC Research in Portsmouth (Thanks to RMC and to John for hosting the meeting!)

Nick Plante was our master of ceremonies. As is the custom, we made a round of introductions to find out the most of the folks were “from away.”

Pat Allen put on the first presentation, on Thinking Sphinx. Thinking Sphinx is a Ruby library (not just for Rails) that allows Ruby applications to work with the Sphinx full-text search engine. Pat presented a slightly shortened version of the presentation he gave at RailsConf, and the presentation was clear, engaging and interesting. Participants had lots of questions to ask on search technology, word stemming, project status, what it’s like to be a Freelancing God, what being the lead on a popular Open Source project is like, what’s a kilometer, and more, and Pat’s answers were insightful. Check out (pun intended) the source on github, the support on Google Groups and Pat’s guide to using Thinking Sphinx on Peepcode.

Pat also took a moment out to plug his upcoming Rails Camp, a not-going-to-make-a-profit weekend get-together in BarCamp/Unconference format for 30-ish people at Bryant Pond, Maine. It sounds like a great event and a nice location and a price that can’t be beat: $120 for 3-nights, 3-days food, lodging and conference. Get details and consider signing up at

Casey Rosenthal asked us, “What are style sheets for?” a number of times during his presentation, for good reason. Casey talked about SASS, Syntactically Awesome Style Sheets, a part of HAML and his reimplementation of SASS in Javascript, SASSiJS, sounds like “sausages” leading to all kinds of predictable jokes. But the topic was thoughtful, intriguing, interesting, and controversial. SASSiJS actually allows a .sass file to be downloaded as part of the HTML file, with similar syntax to a stylesheet link, and a JavaScript file that interprets the .sass file into CSS and applies it to the HTML document. Discussion was far-ranging and insightful: “What’s this good for?” “Would designers use this to make their CSS DRY?” View the source on GitHub at

Thanks to Pat and Casey for their great presentations, to Nick for organizing, and to John and RMC for the facilities.

Powered by WordPress. Designed by Woo Themes

This work by Ted Roche is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 United States.