LiveBlogging BarCampRDU 2007
10AM: Brad Crittenden is talking about distributed version control, focus is on an overview of Bazaar the big selling
point is ease of merging.
bzr: bzr+ssh works, much like svn+ssh, w/HTTP option for public repositories. You can start your own private branches, and if you have permissions, you can ‘push’ back to the trunk. Common commands: ignore status log whoami init add branch pull merge push diff commit blame bundle gannotate pops up GTK+ window to let you annotate (there’s a pluggable arch)
Same session, (Brenton LeanHardt) is going to argue that you should only use a distributed VCS for a multideveloper project, on the grounds that you have more flexibility of working your VCS into your workflow rather than the other way around. SVN requires you to remember a magic number to merge (yes, yes it does). This stops people from committing their changes.
Q. How do you take the cacophony of private branches and work out a coherent release?
A. It boils down as you go up the network of trust; small groups of developers can tolerate failing tests, crazy experiments, etc., but as team leads ship code upwards to testers and release team, each subsequent level trusts that the process and people at the previous level will get it working (there’s still a centralized line of development). So roughly, IIUC, you localize the cacophony.
Somebody in the audience mentioned “Streamed Lines” a paper on managing multiple lines of development in version control systems.
11AM: OpenMoko (Wally Ritchie) and iPhone (you don’t really need a link do you?) (Wayne Sutton) development; OpenMoko is a hardware spec + a BIOS + (Linux) OS for a range of GSM phones that are not on the market; openmoko.org is the open source side of the project. Wally estimates 6mos. to a usable product. Prototypes available now have GPS, bluetooth, production should have wifi and VGA (4x resolution of Apple’s product). Drawbacks: it’s hard to push out updates, it’s still early days and they’re not sure where they want to put the focus (consumer phone or geek device?); it will probably tend toward the consumer side.Main upshot: if the platform succeeds, it will separate hardware from software; manufacturers will ship phones with OSS base, and others will add the software stack that runs on the base.
12AM: caterer is late, soo …Clinton R. Nixon: Test Driven Development. Show of hands; most folks are using xUnit or similar.Non-xUnit: TJ Stankus mentions AutoTest (continuously runs Ruby-specific) (available in gem: zentest). Testing webapps: Selenium; watir can simulate clicks in the browser, but only supports IE. Also windmill. Using tests for documentation: e.g. name test case thisShouldThat; also see RSpec.
1pm-2:30: LUNCH
2:30PM: Jason Rudolph talking about Grails ; RoR-inspired Groovy web development “convention over configuration”,
“sensible defaults, opinionated software”; Groovy because http://www.jasonrudolph.com/downloads/presentations/Getting_Started_with_Grails.pdf ts integration with
Java is two-way (extend Java classes in Groovy and vice-versa). 1.0 in 2007.
Hibernate, Spring, Quartz are all integrated; everything is very Rails-like,
routing tables, mapping of URIs to controller classes and methods. Changes
don’t require explicit recompiles in most cases, including i18n files (!)
Also, dynamic generation of DAO-style methods (
Customer.findByState('NC') )
Greg DeKoenigsberg showed off the OLPC; interesting facts are that it’s not a “hundred dollar laptop,” and that its most expensive component is the keyboard, because it had to be developed for the project while every other component is off-the-shelf.
4:30PM: Jason Rudolph is leading a session for folks to share Mac
productivity tips. [what follows is mostly for my memory, it's pretty
telegraphic, sorry] Quicksilver. Command-H (hide window); use a script to
“clean” your desktop (drop down to one app quickly). TextMate SVN integration
(Ctrl-Shift-A). VirtueDesktops for multiple desktops (which won’t be needed in
Leopard). Sleep with command-option-eject. Pathfinder instead of Finder, e.g.
instant-on terminal in currently selected directory. Growl (notification
framework). iTerm to replace terminal (also should be improved in Leopard).
TextExpander (cross-app abbreviations); can also pull contents of clipboard as
parameter to the expansion macro.
Posted: August 4th, 2007 under BarCampRDU, nerdination.
Write a comment
You need to login to post comments!