Archive | Technology

CentraLUG Notes, 4-May-2009, Cole Tuininga on MySQL Optimization

Sixteen people attended the May meeting of the Central NH Linux User Group. Thanks to Larry Cook and Sybase for the use of their meeting room and projector!

Announcements:

  • David Marston, SwaNH Dinner, May 14th
  • Maddog: working with Koolu on Freerunner-based phone, running “Cupcake,” the version 1.5 of the Google Android phone OS. See http://www.engadgetmobile.com/tag/koolu/ and
  • Me: watch gnhlug.org for future meeting announcements

Cole works for Dyn Inc, the parent company to DynDNS and the other Dynamic companies. Cole Tuininga presented tips and tricks on optimizing the performance of MySQL in high-traffic, large-dataset situations. He talked about the selection process Dyn, Inc went through to select databases and the large scale processes they have automated at Dyn. You can find the slides on the GNHLUG site at http://wiki.gnhlug.org/twiki2/bin/view/Www/MySQLOptimization.

By the way, seven of us made it to Panera Bread before the meeting for a breaking of the bread. I hope to make this a regular extension to the regular meetings.

Thanks to Larry Cook and Sybase for providing the facilities, to Cole for the presentation, to all for participating!

June meeting *Might* be next week, or we may have to reschedule — securing a location has proven to be a problem. Stay tuned.

Notes from MonadLUG, 14-May-2009, Tim Wessels and Kablink

Five people attended the May meeting of the Monadnock Linux User Group. Thanks to Charlie for scrambling at the last minute to secure the Peterborough Town Library for the meeting, as our regular venue was unavailable. Charlie made the iniital announcements – Ed Lawson presents Scribus in June, Charlie will show OpenBSD in July, no August meeting, and Patrick Galbraith returns for another (not-to-be-missed) meeting on MySQL in September.

Tim Wessels did the main presentation of the evening. Kablink is the Open Source version of Novell’s Teaming product, bought from SiteScape, Inc., a company that started in Clock Tower Place in Maynard, MA. The Open Source version had been known as ICECore previously. Source code can be downloaded from http://www.kablink.org and sourceforge. Tim discussed some of the history of the project, where and how it is being used, possible ways to configure it for workgroup and corporate enterprise use. and reviewed some of the challenges and tricks to installation and configuration. If you’re looking for an Open Source competitor to Microsoft’s Sharepoint, with the ability to create portals, finely-control roles and access, and scale to thousands of documents, Kablink is worth investigating.

Thanks to Tim for the presentation, Charlie for running the meeting, and all for attending!

Notes from NH Ruby, 21-May-2009: Brian Turnbull on Monit, Tim, Nick and the other Nick Lightning Talks

The New Hampshire Ruby / Rails Group met on the 3rd Thursday of the month at RMC Research. (Third-Thursday is the new standard, but June’s meeting is likely to be on a different night; see below.) Ten people attended. Nick Plante started off the meeting, noting that David Berube had to back out due to emergency, but we’d fill in with ad-hoc Lightning talks.

Brian Turnbull talked about Monit [link updated – Ed.] (see his slides here), a small-memory and resource-consuming application for monitoring key performance metrics, and launch scripts and/or alerts when alarm levels are met. Brian talked about early days of managing Mongrel and the necessity to restart the services on failure. While that’s mostly been resolved with later versions (and new options like Passenger), this is still a handy utility for keeping services going, especially if you’re troubleshooting some balky applications. Brian included some clear examples in his slides. We talked about how this wasn’t a solution for remote monitoring (your network could be down, even if you’ve restarted Apache), there were solutions, like running Monit on a couple of machines “watching the watchers” and other solutions, but that Monit was a simple and relatively lightweight solution. Other tools, such as Nagios, are available for more complex problems and the need for customization. Excellent presentation!

Tim Golden, our host, announced he had finally gotten to “Hello World” (a long running joke within the group) and described some of the challenges of setting up a Ruby development environment in Windows. He used the Ruby one-click-installer, and installed many gems. He’s trying out NetBeans as his IDE, and sticking with SQLite as the development database.

Nick Quaranto spoke on his work with gemcutter, developing a new scheme for a gem repository with a simple and scriptable API and a more scaleable and responsive repository architecture. This could grow to be a worthy replacement to RubyForge.

Nick Plante showed off the cool stuff he’s developed at RDoc.info – a web site that displays Ruby documentation generated with Yard . Noting that GitHub hosts your web pages and repositories if you name your repo as yourname.github.com and provide an index.html, he and fellow troublemaker Jeff Rafter came up with the righteous hack of creating the user and repo of http://docs.github.com and hosting the documentation for the thousands of projects hosted at github, fashioning their Yard template to closely duplicate the GitHub interface. For all practical purposes, they added a new feature to GitHub. The GitHub owners were… disturbed. But we hope they’ll come around, as this is a pretty elegant solution.

Nick Quaranto took the podium again to show off the use of Metric-Fu at ThoughtBot for their public projects. Metric-Fu is a rake task that automates other metrics tools (like Flog and Flay) to generate a number of interesting statistics that will point out excessive churn or suspicious smells in a project. Nick showed off the Sinatra front end to the package. This could be another very interesting set of pages on any repository offering software, although Nick noted that it would be resource-intensive, as the test runs and coverage processing can be pretty extensive.

Nick Plante announced a possibility of getting a special speaker in June, although the meeting would need to be on an alternate night. All present agreed that shouldn’t be a problem. Stay tuned for the announcement.

An excellent meeting, well worth the cost of admission. And that’s not even counting the free pizza! Thanks to Nick Plante for organizing the meeting, to Brian, Tim and the two Nicks for their presentations, RMC Research for the great facilities, and all for attending and participating!

Notes from NH Ruby presentation, 30-April-2009

Fourteen attendees made it to the NH Ruby / Rails group meeting on Thursday, April 30th. We met on the 5th Thursday of the month, unlike our regular third Thursday (note that the next meeting is on May 21st, our regular night) at RMC Research in Portsmouth, thanks to host Tim Golden.

We did the usual round of introductions. NH Ruby attracts a great mix of people: beginners, experts, professionals, hobbyists, computer people, engineers. We had two presentations — Russ Jones on state machines, and Nick Quaranto on Git — as well as pizza provided by organizer Nick Plante and announcements and discussions from all.

Russ Jones is an independent contractor (as “codeofficer“) and has been working in Rails for some time. His presentation was on state machines. Russ has presented before, speaking on Design Patterns in Portland for the Maine Ruby User Group. Russ admits he was a more of a skript kiddie in PHP, getting code to work, but is taking a more serious engineering angle to his work on Ruby. See Russ’s slides here. We reviewed the definition of state machine from wikipedia, formal and correct, but Russ prefers a simpler one: a machine serves as a container for states, and supports the events and transitions between states. Typically implemented as the supporting structure for a single attribute of an object, ex: states could be “draft,” “reviewed,” “approved,” published,” “destroyed.” Attributes are most often a string. Events are often exposed as methods and have “guards” that could be used to validate and/or nullify an event, log it, or trigger afterwards. Two most common implementations are State Machine and Acts As State Machine — the first is a Ruby plugin, the second originally Rails code, migrated into a gem. Russ showed us an example code of a class “Light” that has a state machine to store “intensity” and an event “switch.” Showed another example from the State Machine docs of an auto transmission.

Russ switched to Safari and TextMate at this point, and showed us a hand-coded CMS used for publishing items to the web. The Admin module has the ability to change the state (submitted, reviewed, approved, published, rejected, spam) of submitted articles. Digging into the code, he shows us he was using two Listable and Statusable mixins as separate modules as his primary posting entities – Jobs, Events, Classifieds, etc. — share these behaviors, but not all their attributes. State Machine also includes a link into graphviz that generates diagrams of state transitions, great for documentation. His final example was a command-line driven simulation of the states of his motorcyle, from off to idle to 1st, 2nd, 3rd, crash and repair states! An excellent presentation with clear examples!

Nick Quaranto is in a 5-year Software Engineering program at RIT and is interning this semester at Boston-based Thoughtbot. He blogs at http://litanyagainstfear.com and can be found on twitter and github as qrush. Nick’s slides can be viewed and download at drop.io/gitstarted. While Nick’s presentation was all-slides, it wasn’t fluff: he packed a lot of heavy concepts and pushed through a lot of material pretty quickly and clearly. I think Nick made a fair assumption that most of the people in the room should have the basic concepts of source code control down, and dove right into the material. So, we got a brief introduction to the basics followed by some intensive work on forking, branches and rebasing. I found this to be a very useful presentation and took lots of great notes for future reference. Also, note there is a “Learn More” slide near the end of Nick’s presentation with a couple of very useful links.

Thanks to Russ and Nick for great presentations, to (the other) Nick for organizing and publicizing the meeting, to Tim and RMC Research for hosting and to all for attending and participating. Next meeting is scheduled for May 21st, same location, topic TBA. Hope to see you there!

Notes from DLSLUG, 2-April-2009: Nifties!

“Nifties!” are the name for the Dartmouth-Lake Sunapee Linux User Group meeting nights when a featured speaker can’t be found: the Users of the Group make short presentations to each other, hopefully eliciting the “Nifty!” response.

I spoke on my work with Nick Plante and Brian Turnbull starting a business to host a coworking site in Portsmouth, NH with several of the folks there before the meeting started. We had some insightful discussions on the terminology of commercial space leasing, and the intricacies and politics of finding the right spot to start a business.

Rich Brown of Dartware talked about Dojo, the javascript library, and a book he borrowed from the DLSLUG library. (see below for more)

Lloyd Kvam presented his book report on the Google Apps books. Google Apps allows a small business or group to buy a domain, register it with Google Apps. We shared experiences of setting up domains in Google Apps.

Then we realized the meeting was actually next door in L02 rather than L01, not the first time we’ve gotten the wrong room, so we moved over and caught the end of a presentation. Then Bill McGonigle showed how ejabberd was set up with Red Hat – family user accounts (Pluggable Authentication Module – PAM) to which he contributed some code.

Richard Brittain (http://www.dartmouth.edu/~richard) showed a ksh script to kill a subprocess after a specified timout and another script that would check a path (checkpath.ksh) and remove all the cruft that builds up as software is added and removed, machines appear and disappear, etc.

Rich Brown of Dartware presented his Dojo report again. Rich needed a simple web page that would let his clients enter in several key pieces of information in a form and from that data generate a configuration file in a specific format. Eventually, he realized a prebuilt library of JavaScript could do a better job, he worked with Dojo and realized he needed a reference. He borrowed the Dojo book from the DLSLUG library. While there were a few frustrations, overall he was pleased with the content of the book, it’s organization, clean examples and good indexing. The book didn’t have a good description of how the CDN supplied JS libraries can be downloaded over the web quicker and in the correct forms and versions; he ran into a race condition that took a while to debug. The Dojo book covers 1.1 while he was working with 1.2, may even be up to 1.3 by now, always a problem with letting the ink dry.

Parker (I didn’t catch his last name) posted a Madebyparker.com blog entry that was spurred on by trying to make a copy of document, but the machine was eating dollars, so scanned to his email address and sent it to himself: nine pdfs in nine pages. The Dartmouth facilities wisely try to minimize the waste of paper with something called “GreenPrint” but the implementation leaves something to be desired, especially for folks running Linux. He searched around and found a command line to concatenate the documents together into one PDF for faster printing and management.

Ten folks made it to the meeting, and I have no doubt everyone learned something; a great result!

Notes from NH Ruby/Rails Group, 19-February-2009: Josh Nichols, Jeweler, Brian Turnbull, Rails 2.3

The New Hampshire Ruby / Rails group met as usual at the RMC Research offices in Portsmouth. Thirteen people attended the meeting, a suspicious number of them from Maine. We started, as we often do, with a round of introductions.

Josh Nichols presented RubyGems and You. A former Java developer, started working with Ruby about two years ago, got a “real” Ruby job about 6 months ago, laid off 2 months ago, currently “employment independent.” Josh presented an excellent overview of how gems work, how they fit into the logic of Rails apps, how they are distinguished from plugins, and how gems can be created. He went on to talk about the two primary repositories, RubyForge and GitHub, and talked about the benifits and liabilities of each. This was all pretty much background for his presentation of Jeweler, a set of scripts that can generate the framework needed to build a gem, with support for pushing it directly up onto GitHub, automating the bumping of version numbers (patch, minor and major versions). Josh made a very clear presentation of the skeletal files that were created and touched on issues with RSpec testing, rake scripts, how to tie in library paths, vendor-izing your gems. Whew! A great amount of material covered quickly and well. Thanks, Josh!

Brian Turnbull did a presentation on the new features of Rails 2.3: Engines, nested transactions, nested forms, nested attributes, dynamic and default scope, other changes (multiple conditions for callbacks, HTTP digest authentication, lazy loaded sessions, localized views, and more!)

Brian then did a short presentation on Rails Metal. Metal runs on top of Rack, and is a tool you turn to when the full Rails stack is too complex or too slow. There was some interesting discussion on how Metal can fit into the calling stack, short-circuiting calls that didn’t need the full Rails process.

Demo version: http://github.com/bturnbull/bturnbull-metal-demo

You can view their slides via SlideShare and also view a WebEx video of the event (see the post’s comments) at http://nhruby.org/2009/2/20/ruby-gems-jeweler-and-a-rails-2-3-preview

Thanks to Josh for the trip up from Boston and the great presentation. Thanks to Brian for two cool presentations. Thanks to Tim Golden and our hosts at RMC Research for the great facilities and for broadcasting the presentation via WebEx this month. Thanks to Nick for herding the cats and ordering the pizza and making the announcements and giving away a couple of cool O’Reilly books. Thanks to all for attending and participating!

Next month: Ted Roche presents an introduction to Cascading Style Sheets, Nick Plante presents Sinatra. Hope to see you there!

Notes from CentraLUG, 2-Feb-2009: Open Source Business Models

Fourteen people attended the February meeting of the Central New Hampshire Linux User Group, a chapter of the Greater New Hampshire Linux User Group. We held our meeting at the usual place and time: the first Monday of the month at the New Hampshire Technical Institute Library, Room 146. Formal meeting starts at 7 PM. Gathering and networking often starts a half-hour earlier.

A few of us met at Panera Bread in Concord before the meeting for dinner and geek talk. We’ll try to make this a regular thing, if people want to.

Before the main meeting, maddog showed off a video he had created, inspired by some recent demonstrations of Open Source software he had seen. Using nothing buy Open Source software, including Inkscape and Kino. maddog emphasized that he’s not an experienced cinematographer, nor had he much experience with the other packages, but that making the video was simple and straight-forward. And the results quite amusing. Look forward to a future post with a link to the video!

We were fortunate to have a variety of attendees to discuss the topic of “Open Source Business Models.” After a brief introduction of what the LUG was about and where to learn more, I opened the floor to the attendees for discussions, and discuss they did!

We talked about the Brazilian music scene, Microsoft EULAs, the difference between Free Software and Open Source software, some great Open Source success stories, like the Project.Net software. There were questions on the fine points of licensing, comments on the openness of the Java Development Kit and runtimes, and much good discussion.

At the end of the evening, two lucky attendees got to pick from the assortment of books we’d been provided by generous publishers. Using the formula of:

(14*rand()).to_int

in interactive ruby and counting off around the room (I started with zero and we went clockwise around the room, a surprisingly difficult process with cats). Mark and Bill each won a book, congratulations! The next CentraLUG meeting will be the 2nd of March. Stay tuned for an announcement of details. Thanks all for attending and vigorously participating. Thanks to Bill for bringing the projector, though we didn’t need it.

Notes from October Python SIG: Unit testing and Sphinx

An even dozen (or maybe an odd dozen…) folks attended the October Python Special Interest Group meeting, held as usual on the fourth Thursday of the month at the Amoskeag Business Incubator.

It was a busy and exciting meeting. Vigorous conversations filled the first half hour, as we welcomed a few new members, a few members not seen in a long time, caught up on news and what’s new in the Python world, and made a round of introductions.

Kent S. Johnson presented a new episode of Kent’s Korner, talking about the unit testing facilities available in Python. Python has a couple of options, including a xUnit-clone version and a more Python system in nose. We got into a great discussion on the philosophy of unit-tests, the test-first-fail-code-test cycle, test-driven development, and so forth. It was quite enlightening.

Arc Riley made the second presentation on the Sphinx documentation generator for Python. Arc talked about the history of Python documentation, with docstrings and EPyDoc and ReStructuredText (not to be confused with ReST, Representational State Transfer!). Sphinx seems to be a popular project name these days, as I heard about a different project by the same codename both at the RubySIG and maintainer Patrick Galbraith’s presentation at MonadLUG).

Arc provided us with the slides to his presentation, available on the gnhlug site here.

Links and notes from this meeting and past meetings can be found at Shawn O’Shea’s blog at http://eth0.net/ — thanks, Shawn!

NOTE that the next meeting of PySIG will take place on Wednesday December 17th at the Amoskeag Business Incubator across the hall from our usual meeting room. Hope to see you there!

Thanks to Arc and Kent for great presentations, to Bill and Alex for organizing and running the meetings, to Janet for the incredible cookies, to the Amoskeag Business Incubator for the great facilities, and to all who attended and participated.

Fedora 10 “Cambridge” ships!

Last Wednesday, just in time to give thanks, the five-year-old Fedora Project released their 10th version, code-named Cambridge. Fedora 10 has all the latest goodies: a very improved wireless networking tool, far better Java support, and a slew of features they list here. I was very impressed with the new version upgrade features: I was able to download a single “pre-upgrade” package and run it to convert my Fedora 9 installation on my ThinkPad T61 to a Fedora 10. Over at the Linux Format website, Andy Hudson reviews the new release and concludes, “If you’ve not tried Fedora, or have moved away from it in the past then you should definitely take a look…”

Jump on the bandwagon and check out the new Fedora 10 here

Voices That Matter, Professional Ruby Conference 08

Warning: Draft nonsense, needs spell-check, grammar and thought completion.

Voices That Matter, Professional Ruby Conference 08, Sheraton Boston, November 17-20, 2008. Beautiful facilities, good good. This is a brand-new conference, version 1.0, and Obie Fernandez was the lead at designing the technical content and format, rather radical schedule: 3-30 minute sessions with 10 minute breaks, long break, 2-30 minute sessions, lunch, 5-30 minute sessions. This means the sessions are tight: experts brain-dumping for 30 minutes

Pre-Conference Sessions

AM, Pat Maddox, RSpec and Behavior-Driven Development: excellent overview of BDD, leaped into RSpec with an expectation that users were familiar with Ruby and TDD, which might not be appropriate for a crowd at a pre-conference. Excellent use of a pre-cooked set of examples (coding a blackjack app) with the tests already written so devs only need to fill in code one test at a time to satisfy the requirements, “Red, Green, Refactor” Worthwhile session. Around two dozen attendees.

PM, Hal Fulton, Ruby Basics. Co-Author of “The Ruby Way” an excellent introduction to the language for folks not familiar with it. A few less attendees, as there was a parallel session by Russ Olsen, “Fluent in Ruby” Hal knows his stuff, was comfortable and receptive to questions. We did some ad-hoc coding. He had an excellent, and again, simple, example that let us concentrate on the code and not get stuck in the business problem: reading a table of text into a set of records, manipulating and sorting them. An incremental set of examples introduced a couple new challenges to each example, and then a couple of new ways to use Ruby, new commands or techniques, to solve those problems. Very clear. A very helpful session for getting comfortable with Ruby.

Day One: attendees 80
Keynote: Obie Fernandez: (http://blog.obiefernandez.com/) war stories of success at Hash Rocket. Pair programming with pairs of keyboards and mice. 14 people total. Keep small (14, boutique). No interviews (week work on site), Guest Star program. References: Agile Manifesto, 37 Signal’s “Get Real,” Rails Rumble 2007. Small Releases often. “Working software over comprehensive documentation ” from Agile Manifesto. “Visual Design First:” vs. Jakob Neilson recent blog complaining that agile was a threat to usability. Obie’s Orject mgmt: concepts and requirements, initial design, Phase one implementation (2-3 weeks), user acceptance, interation, release.

Stoires are Units of work, “storycarding” (SCRUM) estimate level of effort in points system, 1 -4 points (max a day or two), 15- 25 points per week for a team of 2-4 developers, summarize stories,

Master Services Agreement: general contract: billings, liabilities, copyright, trademarks ownership – this has to do with what?

Pivotal Tracker: free. tracks backlog and current iteration.

Standup meetings. for smaller projects. “Pivotal” standup for larger groups: what did you do yesterday? What did you do today? What…

Ben Koski, NYT Riding the Rails case study… bkoski@nytimes.com
Election feeds. AP supplied 153 text files, colon-separated, clomposite-key difficult to parse, used LOAD DATA INFILE, INSERT – REPLACE, survived onslaught by page aching, activeController page integration to generate all possible pages, they “baked it out” and lobbed files via ftp to the actual NYT web servers.

End game analysis: strengths: rapid start, tweak-friendly, activeRecord SQL customizations, web code works on command line, self-contained deploys. Weaknesses: rails vs. nytimes,com infrastructure (SUN), Solution: host on EC2! (eight instances!) , deployments, admin interfaces (vs. Django!),

Thomas Enebo, Sun Microsystems
You don’t have to be a Java programmer to use JRuby: It’s just Ruby! (maybe a tm!). Very, very compatible with 1.8.6, using Rubinius, continueing integration. Fixed 1500+ bugs last year. JRuby 1.1.5 released two weeks ago. improved caching, better performance. Downsides: native-threaded, arguably not a bug but a feature. No native ‘C’ extensions, started with porting popular libraries ported to native Java. No continuations (does anyone use them?) Foreign Function Inteface (FFI) portable across implementations, unlike extensions, most extensions just wrap a library. Started in Rubinius, then joint API discussions, supported in 1.1.4. Example. JRuby 1.8 bigger libraries done. M17N – multinationalizations. Why Java???!!!?!?! Tuned over a decade, generational, super-optimization, native on every platform. native threads, tools, libraries. java is Everwhere, Less political resistance (“JRuby is just another Jar file”), wider database suspport, Java-style deployment, bundle into WAR file, or Glassfish Gem – entire app server in a 4 Mb gem, Ruby-style deployment to GF Application server: gem install glassfish, glassfish . {Lame text” for an example: thread-safe JRuby on Glassfish v2

Mongrel, Matt Pelletier Partner/CTO EastMedia, web-mobile development shop, NYC, funded Mongrel dev for OpenID. Wrote Mongrel book. Zed Shaw, SCGI railsrunner, limited support, webrick slow. Translation (cgi) slow. Full HTTP server, play well with others. Design Goals: Security: Most security holes are due to human oversight, kludgy hand-written parses, gaping holes left in conditionals, HTTP spec does not limit sizes. Resources: site, mailing list, book. Using Mongrel: gem install. Use monit to monitor processes, restart/start new mongresls. How many? Serve static content from web server not mongrel.

Coby Randquist, The many facets of Ruby at YellowPages.com, now “AT&T Interactive”
Partner in Confreaks.com, founding member of LA Rubyl
Lots of small teams. 3-5 people plus functional manager for “socialization” can be a challenge to get things through the pipleline. Teams: HTML/CSS, development, sys admin, sys architecture, UI – user interaction,

Architecture 8415 LOC, 20 servers per data senter, 16 mongresl per server. almost no active record, All static content via CDN. Service tier: ~10kLOC, 8 servers, 30 mongresl/server, memcached running on each server, ruby wrapper to their FAST search engine, Oracle client for communication with Oracle clusters — user registration and personalization. Future changes: from rails to Merb. New code they are open sourcing:

“waves” – resource-oriented open source framework,
funtors – patterned-based dispatch for Ruby,
kablame – easily summarize who has done how much work on your code base,
crufty – find unused code,
hoshi – a library for creating real first-class htmlxml views, a DSL for creating HTML rather than Yet Another Template language www.debu.gs , live-console: a truby gem for providing irb over channels other than stdio
Waves uses bacon as its testing framework
They (R&D) are working on a ton of stuff: bacon for testing, rack handler for jetty, developing branded iPhone apps:
Speak 4 It – directory
Need 2 Pee – geo-location when you gotta go. No, really.
For sale at the iPhone App store. Hope you can pay in a hurry.

Lunch – Consulting table

Nick Plante, Demystifying Ruby Plugins, http://blog.zerosum.org/2008/11/18/demystifying-rails-plugin-development
Bravo to Nick for posting his slides on his website just before presenting! Nick squeezed a lot of information into the very small half-hour he was given: why write a plugin, what’s involved, how to do it, a case study, tools to use to do it, how to publish it, how to package a plugin as a gem (I didn’t know you could do that!) and where to find the tools to do it! Whew!

Ezra Zygmuntowicz, Four years of Ruby Development
Ezra runs the venerable and respected EngineYard shop and talked about the ten configurations of Rails-serving servers he’s wrestled with over the past four years with the pros and cons of each one. The recommendation du jour, with the caveat that the race is still on, is Mongrel for ruby dynamic content, nGinX for static content, but YMMV. The Ezra talked about using an AMQP service using RabbitMQ to create Nanites, a self-organizing set of Ruby applets. Rack is running over Nanite. Ezra announced “EYAAS” – Engine Yard As A Service, “Clouds are too low level for average humans” – use a dashboard to describe your application, what engines, plugins, gems and underlying OS services it needs. The EYAAS stores a JSON config file that can be used to fill in their set of recipes they use to generate S3 and AWS resources. Now, you no longer log in and make one-time changes to a server that get lost if the server is lost, but rather re-configure the recipe to upgrade components, etc. Very, very cool way to automate deployment.

Matt Jankowski , thoughtbot, Nature Network “Agile in the Enterprise”
Boston-based, 10 devs, coupla business people, distributed: NYC, Philly, etc.
Nature Network, publishers of the famous “Nature” journal
Nature Network, social networking for scientists, somewhat more formal than Facebook
Team: 28 people who worked for at least a month over two years
What is Enterprise? Dictionary Definition. Also, a bunch of meetings, weird spec documents, continuous re-organizations. Bureaucracy and internal politics, people who “just” want a job. Compared the impedence mismatch between the enterprise society and the RAD, cool, XP, scrumming agile Rubyists. Funny. Images hysterical.

Shane Harvie, Refactoring Domains in Ruby and Rails
Inheritance v. Delegation; Is Inheritance an “Is-a” relation
Ruby doesn’t allow you to “unmix” an included module, so if you started with delegration by mixing in a module, you’re stuck if then try to subclass the original object and don’t want the mixed in behavior.
Slide fonts are too small. Bummer. On the bright side, it lets me focus on what the speaker is saying and not get lost in the weeds o fthe code…

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.