Now, my inner code-monkey is already saying those eternal words, “yeah, but software is different, yaman-headed dog.” How could an outsider ever parachute in a “fix up” and API? All the in-house coders and architects surely know better!
Now, pining myself down, in the WebLogic/JEE/Spring case in particular, I’d want to bring in an outside API designer to work on the usability of an API: to make it pretty. That aspect has always been a hard one to deliver to on, and I’d posit that frameworks like Spring and Hibernate were successful because they were usable compared to what others provided, in addition to being open source, having community momentum, and being free.
So, then: is there a place in software design for the API usability consultant? Wouldn’t you like to get the Spring minds to come “fix up” your hoary APIs?
Side-note: check out the excellent, third definition of “hoary,” “tedious from familiarity; stale”…that sounds like every coders feel for The Code after a few releases, and the source of good project managers worst nightmares: “we gotta get Rails in there! (It’s so cool!)”