July 2008
1 post
Maven 2 Release Plugin SNAFU
Me: Maven 2 needs a “I know you have a dryRun=true option and I used it, but release:prepare still fucked up, and i’ld like to to revert all the versions back to snapshot versions so I can try again, please” command.
Fuseboy: “mvn -ikyhadrtoaiuibrpsfuailtratvbtsvsictap”
November 2007
45 posts
Sun Worries Google Android could Fragment Java →
It’s a reasonable concern, I guess, but practically speaking, Java on the mobile is already pretty fragmented. Something consistent that everyone uses could be significant.
Toronto: Second-Highest Attendance for FogBugz →
Once again, Toronto is shown to be a good choice for software demos, and software. Second only to London in terms of attendance.
Gigaspaces for Free →
This is a nice touch.
Python Concurrency →
Wow, I didn’t know that Python had a Global interpreter lock (GIL), which effectively makes it single-threaded, and that this isn’t currently planned for change, despite the pervasive multicore future that people see ahead.
HideAPod →
Not sure if it’s just amusing, or actually real, but: protect your iPod or iPhone from theft by making it look like a Zune.
I think that by definition there will always be more average programmers.
– Ola Bini, responding to the idea that there are more bad and average programmers than good programmers
Werewolf
My evening last night was pre-allocated so I didn’t get a chance to attend the Werewolf game; now that I’ve read a little bit about it, it sounds like it would have been fun, I wish I’d had some time free to check it out.
Rails Panel Attendance
I’ve been hanging out in the Architectures you Always Wanted to Know About track all day, but i’ve popped upstairs to see the When is Rails an Appropriate Choice session.
The track host says this the the most traffic this track has seen all day. Considering there are thirty people in the room, massively lower than the architectural track, that’s a little disconcerting.
I...
What Methods Belong on an Entity →
Gavin’s got an interesting, and seemingly reasonable rule-of-thumb here to help decide if a method belongs on a domain class.
Getting Hired at QCon
It’s probably a sign of the technology market rather than QCon specifically, but almost all the vendors presenting (or even exhibiting) are hiring, so if you want a new job, come to the QCon conference (or probably many other similar technical conferences) and chat up the vendors. It’s a good place to form a one-on-one relationship with a real technical employee of a vendor.
Of...
LinkedIn 'Penetration'
Dan Pritchett, host of the “Architectures you always wanted to know about” track, asked how many people in the Linked-In: Lessons learned and growth and scalability session were on LinkedIn.
Although that group is admittedly self-selected, the percentage of hands that went up was quite high — well over half. There’s enough people in the room that I can’t really...
We have 16,000 application servers divided into 220 pools. One pool does...
– Randy Shoup, describing eBay’s architecture
Getting Started with Grails
Jason Rudolph did a small set of blitz’d slides then went straight into code emonstrations - a great way to get a good sense of something like Grails or Rails, which demo well.
It’s interesting to see the parallels and the differences between Grails and Rails, since I’ve mostly had experience with the latter:
Validation constraints are based on the attribute rather than the...
We don’t guarantee at any given point that the highest price we showed you...
– Dan Pritchett (eBay)
ACID vs. BASE
An example of BASE on Ebay: An item listed will show up in different data centers at different times, so users conducting searches in different parts of the globe will see different items, depending on what’s made it to the data centre. This falls in with ‘approximate answers are ok’, and dovetails nicely with the idea proposed yesterday that BASE may not be applicable to all...
Expensive, Unnecessary Messaging Features
Dan is arguing that some features in messaging systems are expensive, and can be handled in other ways.
Once-only delivery is pretty expensive in the messaging tier, and can be handled by making your application response to events idempotent. eBay saw significant reduction in load with this approach.
Ordered delivery is also expensive, and he argues that it’s better not to rely on the...
Fallacies of Distributed Computing →
Dan recommends keeping the Fallacies of Distributed Computing in Mind.
The problem with active-passive, is that you’ve been making changes to the...
– Dan Pritchett (eBay architect)
This is an irregular noun: I am an expert, you are specialists in system...
– James Noble, amusingly reducing a quote from 1968
I think domain specific languages are a disaster waiting to happen.
– Erik Meijer
Building a new subset Java platform [with things like AWT and Corba excised]...
– Josh Bloch (edited for conciseness)
Java is in its middle age, and we should allow it to age gracefully. I...
– Josh Bloch, on the Future of Java (minor editing for conciseness)
FTP is still in common use in application integration … it’s kinda...
– Cameron Purdy
I built my own dependency injection framework because Spring was too heavy...
– Cameron Purdy, describing ‘re-inventing the wheel’
Cameron Purdy: Entertaining Speaker
Cameron Purdy has what many technical speakers lack: a certain charm, an ease with public speaking and humor that make any topic entertaining. I’d gotten that impression from audio-and-slide presentations I’d watched before, but it’s definitely true in person.
I’d probably rather hear Cameron Purdy tak about something I’m mildly interested in than many of the other...
Since I like pie better than pudding, this was a pleasant surprise. But there...
– Eric Evans
Models: Useful for a Purpose, not "Realistic"
Eric Evans, of Domain Driven Design fame, talking about Strategic Design, used some real historical maps as a way to illustrate models. He started with an older (16th-century?) chinese map, with China in the centre, very large, and “everything else” relegated to the edges. He argued that this didn’t represent the totality of their knowledge, but reflected an isolationist...
TestNG is a perfect project for Test-Driven Development, but I found that only...
– Cedric Beust (paraphrased somewhat, but I imagine he’d agree this was the gist)
TestNG Revitalized JUnit
I’m in Designing for Testability; Alexandru Popescu and Cedric Beust talking about TestNG feature they like, and Designing for Testability.
TestNG has been great, IMO, for the world of testing in Java. It introduced a ream of features whose value has been recognized by many (and shamelessly copied by JUnit 4). Frankly, JUnit had stagnated, and it’s TestNG that deserves the credit...
Reading Too Much
Something I’m discovering is that there’s a disadvantage with respect to reading as much as I do: many of the talks that I’m attending are covering information I’ve already read somewhere.
I imagine this is less of a problem for most of the attendees, because I’m imagining that most of them don’t read the same volume of software development articles and feeds,...
1 tag
How many people here have an application with four nodes? Forty nodes? An...
– Ari Zilka (Terracotta)
Mijita Cocina Mexicana
I walked down to the Ferry Terminal to go to Mijita for supper. I had taco de pescado, quesadilla mijita and a margarita. My hands smell pleasingly like fresh tortillas.
While I was in the Ferry building, I took a quick walk around — there’s an artisanal cheese shop, a bakery, and several other interesting places. I brought a sour batard back to the hotel for late-nite snacks that...
City Views from the Westin
If you’re staying at the Westin and you have a good view of the city, particularly if it’s not North (where my view is), and don’t mind letting some random guy into your room to shoot some photographs out the window, drop me a line. :)
Martin Fowler and Neal Ford on Open Classes
Martin Fowler just suggested that Open Classes (wherein you can add methods to classes you don’t control) are much less worrisome in the context of an application than they are in a framework.
That is, if you’re building an application, and you want to add some methods to java.lang.String you’re the final user of those additions, and you can resolve any conflicts you come...
1 tag
Apple to PC Laptop Ratio
Looks like about 3 Macs to 8 PCs in the DSL sessions, or ~25%.
DSLs are like Pornography: Hard to define, but I know it when I see it.
– Neal Ford
In San Francisco
Here I am on the 30th floor of the Westin San Francisco Market Street - ready for four days of QCon attendance and one day of quickly absorbing a bit of the city before I have to head back.
I like the rolling hilliness of San Francisco, although I haven’t yet seen the kind of steep hills featured in movies, like the hills on which car chases were conducted for Steve McQueen in Bullet.
@License Annotation →
I was just considering this the other day; interesting to see someone else suggest it. License management seems like an important SCM task in this day and age.
We’ve done a cool $50 million of R&D on the Apple Human Interface. We...
– AskTog via DF
Apache Incubates Buildr →
It’s nice to see Buildr making some ground. I haven’t yet tried it, but I do like build systems with an actual programming language at its base, something neither Maven nor Ant have going for it. (And, no, I don’t think XML counts).