Tag Archives | GNHLUG

Notes from PySIG, 25-Sept-2008: What’s New in Python 2.6

Fourteen people attended the September meeting of the Python Special Interest Group of the Greater New Hampshire Linux User Group, held as usual on the fourth Thursday of the month at the Amoskeag Business Incubator in Manchester, NH, 7 PM – 9 PM.

Our presenter of the evening had to postpone, due to family obligations, so we had a general night of discussion. It was vigorous and interesting. I was a tad late to the meeting, so I missed Ray Côté’s description of a gotcha using Python. It pays to show up early to the meetings! Bill Sconce brought along a two page agenda and list of topics, focused on new features in Python 2.6. This lead to a lot of discussions, clarifying what can be done in earlier Python versions and how the new version works, including many times when we dropped to the shell and started python to test out our assumptions.

Janet provided yummy cookies, as always — thanks, Janet! And Ben was harassed in absentia. Thanks to Bill for arranging, announcing and herding cats to run the meeting, the Amoskeag Business Incubator for their great facilities, Janet for the cookies, and all for attending and participating.

Ruby/Rails SIG tonight: tripleheader!

Scott Garman posts a reminder message that tonight’s Ruby/Rails SIG meeting will be a special meeting: three presenters on three topics, and some awesome door prizes: Brian Turnbull on HTTP, Scott Garman on VPS, and Nick Plante on git. There will also be discounts for Linode, a raffle for free admission to the Voices that Matter Ruby 2008 conference in Boston, and perhaps Nick will even bring copies of his new book (with David Berube), Practical Rails Plugins. A meeting not to be missed!

Notes from MonadLUG: David Berube, Ruby on Rails

Eleven members attended the August 14th meeting of the MonadLUG, Monadnock Linux User Group, held as usual on the second Thursday of the month at the SAU1 offices in Peterborough. David Berube was the main presenter.

We had the usual announcements (check upcoming events at http://www.gnhlug.org) and also some time for Q&A while waiting for the main speaker and had the ceremonial struggling with the laptop and the projector. One fellow was looking for help understanding how to install drivers for a scanner not supported by SANE, another had questions on what the keyring was and how he could get it to stop demanding a password from him.

David’s been a fixture in the groups for some years. He served as Fearless Leader of GNHLUG for several years, and took a stint as coordinator of the CentraLUG group. He has written a number of magazine articles and authored or co-authored several books, the most recent, Practical Ruby Plugins, due out later this month.

David gave us a brief history of web development, focusing on the incremental improvements made from scripts to cgi-bin to modules to long-running processes in terms of responsiveness, latency and the ability to scale to larger and quicker demands. He briefly compared Ruby with Perl, Python and Lisp, and then dove into the demo.

David had an Ubuntu laptop that he hadn’t previously done Ruby on Rails development on before, so he showed us the basics of installing Ruby, using Ubuntu’s package manager, and cautioned us against using the OS package manager to install gems: The gem system is a package manager in its own right, and it does things in a somewhat different way than most of the OS package manager tools. Instead, he recommended using ruby to install gems. As is often the case, there were some glitches, so we had a small distraction while we worked through creating the /usr/bin links for rake and rails that somehow hadn’t been created automatically.

David then created a new project, and walked us through the directory structure and the significance of files in each folder. He created a model that defined the wiki example we were creating, a controller to answer requests from the web server, and a view that would render the response from our application. He used the built-in rails and rake scripts to create the example database (SQLite3 is built in and used by default if nothing is specified, new in RoR 2.1), showed how the rails console could be used interactively to create model objects (implicitly saving them to disk) and that the console could be used to add, edit, query and delete objects. He then ran the application, after explaining the logic of URLs constructed in a “RESTful” fashion as http://yourwebserver/controller/action/parameter addresses. David started the built-in Webrick webserver and navigated his browser to http://localhost:3000/page/show/bob to show us Bob’s wiki page entry. Whew!

There was some good Q&A during and following the presentation.

I asked some questions on how a team of developers could insure that they were maintaining the same versions of gems when developing, as the gems are usually installed globally and are not in the main application source code tree. David suggested either creating a local team gem repository, or hardcoding the exact versions you want to freeze the target application at, directly within the code.

Charlie had some questions on how to keep up. While he’d read through the “PickAx” book and the “Skateboard” book, those are already a version out of date. David booted up Pidgin and we chatted with a couple of his fellow authors on what they recommended. Here’s a few links I noted from the meeting:

David also mentioned he was running Gnome-Do, a QuickSilver-clone that lets you launch applications or perform functions with a keyboard shortcut and your keywords. And David also showed off the Vimperator, a Vim-like interface for the FireFox browser. David noted you might find some troubles with Javascript-intensive pages:

Thanks to Charlie Farinella for organizing and running the meeting, to Ken and the SAU for providing the fine facilities, to David for an informative presentation and to all for attending and participating!

DLSLUG Notes, 7-Aug-2008: James Fogg, Administrator-In-A-Box

Eighteen attendees braved the downpours to attend the August meeting of the Dartmouth – Lake Sunapee Linux User Group, held as usual on the Dartmouth campus on the first Thursday of the month. Coordinator Bill McGonigle noted that several past presenters had new books published:

Jeff Dwyer: Pro Web 2.0 Development with GWT

Barrie North: Joomla! A User’s Guide: Building a Successful Joomla! Powered Website

James Fogg was the main presenter, talking about high-end administration of many machines, and how the adminstration tools are both growing out of the grassroots and migrating downward from the large mainframe/mini management systems. These systems configure, monitor, test, audit, report and manage large numbers of computers, network devices (routers, switches, etc.) and enable a small number of administrators to keep a large plant running, manage changes in fractions of the time and effort that a manual process would require, and provide in-depth information on the state of the plant. He talked about, and demonstrated, the high-end products from HP and BMC.

We talked about many related FOSS tools which served some or all of the functions of the high-end tools, though perhaps not yet with their polish, breadth, depth or integration. Products mentioned included:

Upcoming meetings include “How to Write a Compiler” in October and “High Availability Linux” in November. Stay tuned for more details.

Thanks to Bill McGonigle for arranging and running the meeting, to Heidi Strohl (http://www.heidistrohl.com) for providing the awesome brownies, and to James for the presentation.

Notes from PySIG, 24-July-2008: Improv Intro

Seven attendees made it to the July 2008 meeting of the Python Special Interest Group of the Greater New Hampshire Linux Group, despite the heavy rains. Due to some last-minute conflicts, our planned speaker, Ray Côté, had to take a rain check for a future meeting, but cookies were made and we resolutely carried on.

There were two first-time attendees, one with a novice level of knowledge of Python and the second very little. Lead by the PySIG leader, Bill Sconce, we launched into an improvised session introducing Python and talking about its power, range and flexibility, comparing it with other languages, heckling Ben Scott, demonstrating several IDEs, talking about procedural scripting and object-oriented programming, showing off some working code, migrating database applications from proprietary platforms, and much, much more. A good time was had by all.

Prominently mentioned were the great tutorials available directly off the Python web site and the Tutor mailing list.

Great thanks to Janet for a delightful variety of cookies, to Bill for not only running the meeting and providing the projector but also bringing the milk, to all for participating, and to the Amoskeag Business Incubator for providing the fine facilities.

(Note: despite the organizational support of the GNHLUG, members running all sorts of OSes are welcome. A typical meeting has people running Python on OS X, Linux and Windows. All should expect equal-opportunity heckling.)

DLSLUG Notes, 5-June-2008: Bill Stearns, FUSE filesystems

Twenty-two people attended the June meeting of the Dartmouth-Lake Sunapee Linux User Group held as usual on the first Thursday of the month. We were fortunate once again to get room 041 in the lower-level of Haldeman, with power and ethernet jacks at each seat.

As seems required at each LUG meeting, persuading the projector to show X is always a challenge. Bill Stearns is a big believer in the “power on the projector first, then the laptop connected to the projector” theory, which I also like. Today, though, 800 x 600 was the best he could do, even with this work-around. There’s a good Summer of Code project in there somewhere, if not a PhD thesis. Video negotiations between machine and display start with bootup and BIOS code and run through X configuration and ends with xrandr or direct x.org tweaking. (Update: I saw a new applet in the “What’s New in Nine” session at FUDCon where the configuration of video on the fly was a lot easier! Looking forward to trying it out!)

Bill McGonigle also recorded the audio from the event. Keep an eye out for an announcement on when the recording might be available. (With gas prices climbing, I’ll be attending more meetings virtually via podcast. Someone ought to do a meeting on… 🙂

Bill Stearn’s presentation was on FUSE filesystems, additional file systems over and above what’s needed to start your system. There are infinite possibilities on what you might want loaded as a block device and manipulated with the tools that know how to work with a filesystem: a compressed archive, a remote music source, a database, an encrypted volume, etc., and there’s a good chance someone’s already started writing a FUSE driver for it. The list of drivers under development is pretty impressive and some of them fairly innovative.

Bill started with a couple of slides to establish the basic terminology and to walk through the basic commands of setting up a couple of the FUSE filesystems. Soon abandoning the slideshow, Bill hopped into a shell and actually performed the operations, showing how an encrypted filesystem might work, how archives could be read as files (or grepped or wc’d or…) and how gluster, a cluster file system capable of managing petabytes, could be used. There was a lot of audience participation and “Yeah, but what if…” questions and a good time was had by all.

Roger Trussel is scheduled to present jUnit at the July meeting.

Thanks to Bill Stearns for his great presentation and handouts, Bill McGonigle for organizing, promoting and herding cats at the meeting, to Heidi Strohl (http://www.heidistrohl.com) for providing the refreshments (awesome cookies!) and to all for attending and participating.

Notes from CentraLUG, 2-June-2008: Mark Boyajian, Open Source Advocacy

Twelve folks attended the June meeting of the Central New Hampshire Linux User Group, held as usual on the first Monday of the month, but at the summer venue of the Hopkinton Public Library. Attendance was a delightful mix of regulars and new visitors.

As the crowd had some new members, I spent some time introducing the GNHLUG and its many chapters, its purpose and that upcoming events (there are many!) can be found on the gnhlug.org web site. We had a round of announcements and introductions and got into the main presentation.

Mark Boyajian has been working with Bill Sconce to demonstrate and encourage the use of Open Source software at the Lawrence Library in Pepperell, MA, strongly encouraged by the Library Director Debra Spratt. Deb has been instrumental in getting equipment set up, encouraging them to establish an information kiosk where they could feature news and posters about Open Source, as well as setting up an older machine with Linux. Mark brought along some pictures to show their setup and talked about the good reception they’ve got from attendees and the interest generated. Mark had some success stories to share and some interesting stories of the misconceptions he tried to address.

Thanks to Mark for the presentation, to Bill Sconce for providing the projector, to the Hopkinton Public Library for use of the facilities, and to all for their attendance and participation.

Notes from PySIG, 22-May-2008: IPython and Frangoes

Twelve folks attended the May meeting of the Python Special Interest Group, held as usual at 7 PM on the fourth Thursday at the Amoskeag Business Incubator in Manchester, New Hampshire. Vigorous discussion, idea exchange, job openings and, yes, Python, was discussed in depth.

Bill Sconce was the master of ceremonies and lead off with his usual printed agenda of items: Welcome, Announcements, a round of introductions, Janet’s Famous Cookies (this week, Frangoes! Awesome!), open announcements and discussions of gotchas.

Sample Q: how to debug binary text that may or may not be Unicode? A: Mark Pilgrim’s Universal Encoding Detector, [link updated, tr] originally part of his famous Universal Feed Parser.

Sample Gotcha: scripts with a she-bang line might not always be transportable between Windows, Unix and OS X because of line ending differences. If your parser complains about invalid commands on the she-bang line, make sure your line endings are correct for the platform.

Shawn K. O’Shea arrived and proceded to note every passing mention (with links!) in his great blog entry at: http://www.eth0.net/blog/?p=12 — thanks, Shawn!

Kent asked about using Python to interface with an existing C++ code and a lot of useful suggestions were forthcoming.

Arc updated us on the state of PySoy: the major bug that was crashing PySoy seems to have been isolated, and the code is orders of magnitude more stable. Bug fixing is proceding apace and an end-of-summer major release appears feasible.

Discussion on the upcoming Software Freedom Day got an enthusiastic reception, with several folks considering something in their communities.

On to the main presentation: Kent presented his monthly Kent’s Korner featuring the IPython interactive shell. IPython is slick, with a slew of features and quite a bit of documentation as well. IPython is not just a shell, but also an embeddable library that can bring scripting features into your application, and can also be used as a non-blocking interface to graphical environments like GTK, Qt and Wx (unlike the standard Python shell, which only works against Tk). Anyone doing a lot of work with Python from the shell needs to check out IPython!

Thanks to Kent for the presentation, to Bill for running and promoting the show, to Janet for the awesome Frango cookies, to Shawn for the excellent capture of the night’s events, to ABI for their great facilities and to all for participating!

Notes from NH Ruby/Rails Group, 20-May-2008

Five members attended the May meeting of the New Hampshire Ruby / Rails group, held as usual at the offices of RMC Research in Portsmouth.

Nick Plante entertained and educated the group on Rack, a foundation layer that interfaces between the web application handler (like Mongrel or FastCGI) and the actual web application framework adaptor (like Merb or Camping or Halcyon or Sinatra) in a manner similar to the Python WSGI layer. It allows for the creation of custom web frameworks while removing a lot of the grunt work. Nick had a sample application whipped up where a few lines of code could define the routing of various requests and cleverly answered “Hello, World” to the correct RESTful query.

For those for whom Rails isn’t the complete answer or those who want to build their own web functions with components other than those used by the Rails framework, Rack is a foundation on which you should be plugging together your building blocks.

Brian Turnbull volunteered to fill in for Scott Garman, who had to cancel at the last minute. Brian had been using NetBeans only a brief while, but had a great story to tell on using the built-in debugger to trace out a problem with Rails-generated CSS meta tags always getting a cache-breaking URL. While a feature in development, when the CSS was being served from a caching store like Amazon’s S3, the ever-changing URL defeated the point of caching. Brian showed how breakpoints could be applied to the code and step-by-step tracing (why is it that all debuggers have Step-In, Step-Once, Step-Over, Step-Out icons that all look the same and can’t be told apart?) and walked from his code into the Rails framework down to the mis-behaving component.

Having identified the problem, our discussion took a tangent into a discussion about monkey-patching, and how this ‘feature’ was a bug deserving of an optional switch to disable, and ought to be submitted upstream to the Rails maintainers. To confirm, we went through the steps to grab the latest version of rails as a plug-in (gem? I’m not sure.) so that we were working with the latest ‘edge’ code to confirm the problem hadn’t already been fixed. By installing this way, we were overriding the Rails framework only for this application, and could easily revert to the stable version, without disturbing the main shared code on the machine. We talked about how this was a Best Practice when bringing an app under development up to production, so it was isolated from changes outside of the app’s control.

Plenty of time was available for discussion, and we talked with Tim a bit about configuring a new machine with all the tools he’d need to develop a Rails app with NetBeans: Ruby, Rails, a couple good gems, the Java runtime. Nick and Brian noted that the default Rails environment within NetBeans is JRuby not MRI (Matz’ Ruby Interpreter) and how you might want to reconfigure NetBeans to use MRI instead if you weren’t planning on deploying to a JRuby environment.

Thanks to Nick and Brian for their presentations, to Scott for arranging the meeting, to Tim and RMC for providing the great facilities and to all for attending the meetings! Discussion is ongoing now on the topics for the June meeting; join the mailing lists at http://mail.nhruby.org/mailman/listinfo/ and keep an eye on the new meeting plans at http://wiki.nhruby.org/index.php/Upcoming_meetings.

CentraLUG, 2-June-2008, Hopkinton, NH: Open Source Advocacy

The monthly meeting of CentraLUG, the Concord/Central NH GNHLUG chapter, happens the first Monday of most months. On June 2nd, we’ll be meeting at the Hopkinton Public Library from 7 PM to 9 PM. (Directions and maps here. [Edit: updated to current link 2014, too late for you to make the meeting, sorry.]) Open to the public. Free admission. Tell your friends. At this meeting, Mark Boyajian, Bill Sconce and other special guests will discuss “Open Source Advocacy.” I hope this spurs some discussions on how we can duplicate their success and avoid problems they can experienced.

About the presentation: Mark and Bill have been working with the Pepperell (MA) Lawrence Library to raise awareness of Open Source software solutions. They kicked-off this effort with a presentation last October in support of Software Freedom Day. The enthusiasm of library director Debra Spratt resulted in the Lawrence Library Tech Talk series: a monthly presentation on Open Source software and issues. Additionally, Debra has facilitated the creation of an Open Source information kiosk as well as a Linux-based computer in the reference library for use by the public!

The Tech Talk series formally launched in February and has consistently drawn a good audience. The kiosk and computer have been up and accessible since March. The experiences of working with this rich environment has surprised, challenged, and taught us many things we never expected. We are all working and adapting to better understand the [technical] needs and interests of the community and how the library can support them.

About Mark and Bill: Mark is an IT consultant (Simple Solutions) specializing in curriculum development and training, database development, and information management using Open Source solutions wherever possible. Mark “started life” as a music teacher, spent 20 years as an environmental field scientist specializing in wetlands and data management, and launched Simple Solutions as a full-time endeavor in 2001 built on Open Source solutions.

Bill Sconce is the proprietor of In-Spec, Inc., a Milford, NH-based consulting company. Bill is an activist with the Greater New Hampshire Linux Group, Secretary to the Board of Directors and coordinator of the Python Special Interest Group. He’s presented to most of the chapters and advocates for Open Source software at many other venues, including the McAuliffe and the NELS/FOSSEd conferences.

Future Meetings: Stay tuned for details on the upcoming bbq/picnic all-hands meeting in July, and for the location of the August meeting, still TBD. As always, meetings are subject to change. You are encouraged to join the low-traffic announcement list at http://mail.gnhlug.org/mailman/listinfo/gnhlug-announce to get announcement and cancellation information.

Meeting promotions: I’ve posted this meeting at lots of locations: FindEventsFast, Eventful, zVents, Upcoming, the GNHLUG announcement list, NHPR, the Concord Monitor. I’d be interested in hearing about where you learned of the event to better tune the meeting promotions.

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.