Monday, March 31, 2008
Podcast with Wayne Beaton
Saturday, March 22, 2008
EclipseCon 2008
I guess I should just get it out of the way and point out that I was only able to attend EclipseCon because I was the winner of one of the annual Eclipse Community Awards (specifically, "Most Prolific Newcomer Evangelist") and the foundation was very generous in their help. Specifically, I have to thank Wayne Beaton, Ian Skerrett, and Lynn Gayowski for their encouragement and help - thankyouthankyouthankyou!As for the award, not only did I get a spiffy personalized acrylic trophy thingy, but a totally tricked out "cell phone," an E90 donated by Nokia - its really more of a mini-computer than a phone, very similar in function to an iPhone. Now I just have to read the 90-page User Guide and figure out what US carrier it works with. In any case, I was totally surprised and blown away by the quality of the prize.
As for the conference itself, I have to say that the highlight was just meeting, face-to-face, so many people with whom I've corresponded, cooperated, and collaborated over the past 5 years. It is great to finally put faces to names like Wayne, Ian, Ed Merks, Tom Schindl, Walter Harely, Denis Roy (thank goodness he introduced himself 'cause I would certainly planted my foot well into my mouth if I had called him "Dennis") and so many more that I can't recall. For me the people aspect was definitely the most interesting part of the whole week.
As for technical content, I was impressed by the long talk on Mylyn, a project that I had been aware of and moderately curious about before; but after seeing it live and presented by its charismatic and passionate creator Mik Kersten, I'm determined to give it some dedicated time and share it with my teammates at Skyway Software.
Speaking of Skyway, I spent considerable time hanging out at the booth and I think our product launch was well-received. Most people seemed impressed with the modeling GUI (I heard words like "slick," "easy-to-use," and "wow") which, admittedly, I am glad to hear because that has been the focus of my work there. But I think we also heard some good feedback about potential directions to take the runtime portion; hopefully the community thing will take off and we'll soon see some contributions in those areas.
The p2 effort is making good progress and looks well on its way to solving the problems with the old Update Manager (and much more).
I was also educated about the profiling tools that are part of the TPTP project. The presenters were clearly not 100% comfortable speaking English in front of a large audience, but the tools look quite robust and complete, certainly capable of competing with their commercial competitors. I will be profiling the Afriterra catalog (and probably Skyway Perspectives, too) in the near future.
Replay Solutions's product also looks very interesting, but as of now it is only for JEE applications so my current (paying) work can't really find much use for it.
I'll close with something that won't surprise those who have spent any amount of time talking to me or reading this blog, a critical statement about the future direction that The Powers That Be apparently have set for one of my chosen technologies. I attended the Eclipse 4 (e4) talk and am confused and somewhat dismayed by the overwhelming focus on bringing the Eclipse platform (specifically, its UI) to the web. Because the details are vague (intentionally, because as with everything else at Eclipse, the real story will be determined by "the community"), I'm having a hard time verbalizing my thoughts; suffice it to say, just in the area of SWT and Platform UI, I'd rather see the growing mound of bugs and feature requests be more addressed instead of spending scarce resources on a completely new "platform." I understand and appreciate the need for architecture cleanup and evolution, but I can't help but wonder how much say "the community" will really have in this, seeing as nearly 100% of the committers are employed by the big member companies. Jesper asks some good questions and raises some good points in this blog post. I'm keeping my mind open, but with a healthy does of skepticism - after all, the last thing that Eclipse needs is a bunch of yes-men all nodding along with the ideas of a very small number of vocal, powerful committers and member companies.
All in all, the week was very enjoyable. Jazmine and Little-j traveled with me and we had some wonderful family tourist days before and after the conference. I'll post photos later this week when my body recovers from the time-zone-difference whiplash...
Tuesday, January 29, 2008
Ugress direct-to-consumer store goes live
One of my favorite musical artists of the past few years, Ugress, has just released his latest album and made it available via direct sales from the independent label web site. The prices are very reasonable (£0.49 per song or about £5.39 for the entire album). The best part is, he has also made available all of his past albums, B-sides, and EPs, too. Not that I need to buy much of it - Ugress has been offering much of the music for free download for years.
I can't tell you how glad I am to see an rise in artists offering a direct channel to their customers; and the fact that this is one of my favorites is just icing on the cake.
Ugress is a bit difficult to categorize and describe. Superficially, the music can be described as electronica, but that doesn't really do it justice. I've seen him dubbed "mad scientist musical mastermind" but probably a more useful description is this:
- "Ugress dives into a groovy, spooky and cinematic landscape of weird samples, loops and sounds. Strong rythms carries soundscapes and melodies forth. The sources of sampling include easy listening records of the 60ies, unknown and well known classic funktracks of the 70ies, computer games, television commercials and the oldest aswell as latest sci-fi b-movie. The compelling groove of a breakbeat (or two, or three) is, of course, always present."
Tuesday, August 7, 2007
More Videos of Julian
These are still pretty old - I'm working on the newer ones...
Wednesday, June 6, 2007
The Borg that is YouTube
We're starting to take a lot of video of Julian, so I'm succumbing to the Borg that is YouTube. Why not, it is a free way to distribute these huge video files to family and friends.
Here is the first one I've uploaded as an experiment (it is very low quality and over 6 months old):
Monday, May 14, 2007
Micro$oft pulls a SCO move
Let's listen in on a high-level strategy meeting on location in Redmond, WA, USA....
SteveB: "OK, we are getting creamed by all this damned high-quality open-source free software."
BillG: "Why don't we give another try a making at better product, Steve?"
SteveB: "Huh? What does that mean? Bill, you're so out of touch with my company...
So anyway, we're turning to you, our attorneys, to solve the problem for us. What have you got?"
AttorneyA: "Well, sir, we could try to bomb their offices with smelt-flavored pudding. That would slow them down from making and marketing the good software."
SteveB: "No, that won't work you idiot - they don't have offices."
AttorneyB: "How about sending them all free copies of Windows Vista and asking real nice to stop making us look bad?"
Tech VP: "That won't work either - nobody can afford the hardware to actually run Vista with any useful features enabled. Except our development team, that is."
SteveB: "C'mon numbskulls! If you don't come up with a strategy, you're all fired!"
AttorneyC: "Um, Mr. B, sir? I have an idea. What about we 'pull a SCO' on the world and launch a FUD campaign. We could use the empty threat of litigation for 'stealing'
SteveB: "Hmm, that just might work. Yes,... I like it! Let's see now, how many 'violations'
AttorneyA: "I don't think it really matters, sir.
Tech VP: "We can write software to generate a random number to use for the campaign. I'll get our offshore team working on that right away, sir!"
SteveB: "How long will it take, Mr. TechVP?"
TechVP:
SteveB: "OK, well we'd better get some funding for that effort. I'll talk to SalesVP about forcing another enterprise-wide upgrade on Mega-Customer. No, better yet, I'll just have him use the auto-disabling feature of Vista to force all the grandmothers to buy the new Office version.
And thus the FUD campagin begins and the ever-so-predictable reactions...
Friday, April 27, 2007
Java Closures
Brian Goetz recently posted an article on IBM DeveloperWorks about closures in Java. It is a well-written description of both the theory behind closures and the two proposals that are currently being considered for including them in Java.
I applaud the article, but as for the issue, I don't really like either proposal very much. BGGA is just more of the increasing complexity of syntax that, IMNSHO, is going to kill Java. On the other hand CICE does not appear to go far enough in simplifying the syntax. It seems that what is keeping the syntax so ugly is the damn static typing, having to declare the types of all your variables; if we could get away from that we'd have lots simpler syntax options (and we'd not be in Java anymore :-)
I guess I'll root for CICE, since it is fairly obvious that one of thee two is going to be The One. However, I was delighted to see this at the end of the article, since it is precisely what I have been harping on for so long in relation to the Parameterized Types decision:
"The issue being debated is not whether closures are a good idea -- because they clearly are -- but whether the benefits of retrofitting the Java language with closures are worth the costs."
That quote notwithstanding, does anyone really believe this proposal won't be railroaded through now that the camel's nose is under the tent?
Wednesday, February 7, 2007
Get off iTunes' back!
Steve Jobs has written an open letter to the critics who bemoan the DRM system of iTunes, and I have to say he is spot on with his reasoning and presentation. It is non-confrontational and follows a clear line of thought, detailing the history ("How did we get here?") as well as what possible future courses he sees. I've seen lots of people with apparently nothing better to do than criticize Apple for the DRM, completely ignoring these facts:
- Without agreeing to strong DRM Apple would never have gotten the record lables (the real bad guys in this situation) to license their music to be sold online. In other words, the alternative was to have no commercial, legal solution to meet the market demand.
- Under iTunes' system the consumer is given a lot more freedom to do things with the music than the labels originally demanded. In other words, Apple did a pretty good job of negotiating to slant the power more towards consumers than the labels would like. For example,it is trivial to burn DRMed music to a CD and then rip it back again, if you really want un-protected files from your music, and only the most audiophile of listeners can hear the quality difference.
- The only alternatives are either illegal and, even by my own liberal view of rights ownership, immoral, or just as proprietary as iTunes. Sony and Micro$oft, the only significant competitors, have the same restrictions as iTunes.
The critics, for the most part, conveniently avoid these facts, none of which are disputable. They just want something to complain about.
I am by no means a "Mac person" (don't own one and have barely ever used one), but I applaud Jobs' response for its level-headedness, honesty, and direct approach. I am really tired of hearing those who just want to gripe and want the world without paying for it criticizing the company and system that has revolutionized the music industry. The digital distribution revolution is even more important than the CD "revolution" was, because it is not just a better quality package of the same old model - this is completely new and empowers consumers in ways that were only possible via illegal and immoral behavior before. We have Apple to thank for sparking that and for remaining aggressive and the market leader. As Jobs' letter says, people and governments should spend their energies trying to change the archaic, stone-age attitudes of the record labels who insist on treating their customers as criminals while not slowing down the real criminals at all.
Saturday, December 16, 2006
Funny Quote
"The day Microsoft makes something that doesn't suck is probably the day they start making vacuum cleaners." -Ernst Jan Plugge
[found here - a useful page in its own right]
Friday, December 15, 2006
Why not Casual Monday?
So I'm in the second week of working at yet another new job. It is a pretty good sized company (though nothing like the behemoth that was HSBC), and as is the norm they observe a "business casual" dress policy, including "casual Fridays " where jeans are acceptable. It got me thinking this morning as I donned my most comfortable denim: why is it always Friday that companies (the ones that are still enslaved by the idea that dressing in khaki's and golf shirts 4 days out of the week somehow makes people better workers) designate for "casual" attire? Why not Mondays?
I mean, it is already the sad state of the typical American worker mentality that so many see Friday as a kind of Elysian Field , a reward for surviving the rigors of the work-week. I find that "work for the weekend" attitude very revealing and pretty pathetic; it says a lot about the typical worker's attitude towards his job, satisfaction with his work, and the typical company's treatment of employees, that so many people are so focused on the nearing reprieve (Friday) instead of on what they can accomplish during the week. So when I see Friday accentuated as a partial release of our workplace burdens (in the form of a relaxed dress policy), I can't help but think it is just reinforcing the "work for the weekend" attitude: "I can't wait until the weekend so much that getting to wear casual clothes on Friday is a big deal."
Thus, I wonder why companies don't use the carrot of Designated Casual Dress to entice workers to look forward to Monday or even Wednesday. Who among us does not regularly loathe Mondays, dreading the return to the drudgery of the work week? Alternatively, how far would Casual Wednesday go towards wiping out the thought of Wednesday as Hump Day ? If employers offered Casual Monday (or Wednesday), would that not make those otherwise barely tolerable days that much more palatable?
Imagine waking up on Monday morning and being able to slip into those old comfy jeans and tee-shirt. Doesn't that make Monday at least a little better? Wouldn't that help fend off those draining attacks of Mondayitis ? I think it would.
Saturday, November 18, 2006
Reaction to Sun's open source release of Java
It's been inevitable for quite a while now, and this week Sun finally officially announced the open-source plan for Java. Let me take this opportunity to log my personal reaction to this "long time coming" news:
Yaaaaaaaawwwwwn
As far as I saw, the only people who complained about Java not being "open" were the frothing-at-the-mouth FOSS zealots (OK, I'm going to get some flames for that word choice - but I have a soft spot for the overly-dramatic, so it will stay).
Let's be honest: the critical parts of Java, the libraries and reference implementations and compatibility test kits, have been source-available from the beginning. I just don't see a lot of people caring that the JVM and compiler are open now.
Actually, now that I think about it, I take back the yawn. I am very interested, because I'm now concerned that Sun does not have enough influence any more to keep Java from fracturing. We have to hope that the community can restrain itself to keep that from happening - but I would not bet on that. Maybe some other big players like IBM will be able to police the renegades who want this or that little thing and, when they can't convince the rest of the community, go off and create MyJava.
The last thing Java needs right now is to become the next Linux, where binaries aren't compatible and users of one distro can barely find standard file locations on other distros.
Sunday, October 8, 2006
Julian at 4 months old
Julian is 4 and 1/2 months now, and September was quite a busy month for him.
There were road trips:
- to Miami to see his Abuela and Abuelo and meet the Miami chapter of the Official Julian Fan Club
- to Sanibel to celebrate his great-grandpa's 80th birthday. It was Grandpa's birthday, but Julian kind of stole the show - so many great-aunts and great-uncles and second-cousins, so little time!
He also had his first adventures into the swimming pool. He was skeptical at first but seemed to enjoy it after a while.
Last night he spent his first night away from Mom and Dad - Poppy and Nonni (Jerry and Marilynn) had babysitting duties for the night. We were lonely and wondered how he'd handle himself, but the report came back great.
There's lots of new pictures from September at http://www.rizzoweb.com/photos/Julian (including the road trips to Miami and Sanibel).
We have also uploaded all his photos to Walgreens web site so you can order prints and pick them up at any Walgreens store: click here to see them . You will have to create a free account at the Walgreens website in order to see them and order prints. Email us if you have any trouble.
Enjoy,
Eric and Jazmine
Tuesday, September 5, 2006
Update on Julian at 3+ months old
http://www.rizzoweb.com/photos/Julian
He is growing so fast you won't recognize him. Last week he was 15.5 pounds and over 25 inches long - 90th percentile on the growth charts for his age!
Julian will be 15 weeks old this week. He has started rolling over on his own, and really interacts with people around him - smiling, cooing, laughing. Last week he started sleeping almost completely through the night (a big relief for his parents :-)
This week we started him at a babysitter during the days - it is hard for us to leave him but this is a big step for him. Pray for us!
Sunday, July 2, 2006
The Truth About Infants
Anyway, lots of people tell expecting parents how much babys like to eat, sleep, and poop. That's pretty much all they do.
But the thing that nobody actually pointed out was this important truth: In addition to eating lots of breast milk and formula, infants gobble up huge chunks of time, taking it up in surprisingly large gulps, until your entire day has been devoured by this little 11-pound time-eating machine.
This seldom-expressed truth is probably the most surprising thing about having Julian for us thus far - I'm sure there will be others, but right now it seems like every day it is 3:30pm by the time we blink, and then it is 10:30 at night before we take a breath. God help us... :-)
Friday, May 26, 2006
I Have Arrived!
Click here to see more pictures of my exquisite handsomeness
I came aboard Thursday May 25 at 8:25am, carrying 8 pounds 9 ounces and 20 inches of adorable little ears, chins, arms bottom and toes.
I'm a little busy learning to forage for food and figuring out this whole night and day thing, so this is all I can write for now. I'll dictate some more notes later for Daddy to type.
Adios,
Julian
Saturday, May 20, 2006
Signs of things to come
There's a lot of laundry, and this baby isn't even here yet!
Friday, March 31, 2006
The Spectrum of "Web Services"
Victor Grazi wrote:
"Our company is interested in exposing some of our server java api as web services. 2 years ago that would have probably meant introducing an ejb framework and wrapping those as web services. I would be interested in hearing other approaches. Any ideas?"The first question to ask is whether you're interested in going down the WS-* path or the "Web 2.0" path. In other words, are you interested in being WS-Heavy or WS-Lite? (see http://weblog.infoworld.com/udell/2005/09/21.html and the links from that page).
Mica's Hotels.com architecture sounds like it lives towards the WS-Lite/Web 2.0 end of that spectrum, while SOAP, UDDI, WS-I, etc. would put you more towards the WS-Heavy end.
Once you understand that distinction and determine which end you need/want to live near, then you can decide on the technologies to implement those choices.
Saturday, February 18, 2006
So THIS is what the world looks like before 7:00am
Anyway, I was rewarded for my efforts at this un-Godly hour - the air was so cold (about 26 or 27 degrees, which is pretty darn cold here on Florida's west coast) that steam floated gently up from the pond behind our house. It was as if the fish and turtles and gators were mimicking children who exhale in just the right way to see their breaths on a cold day.
With the sun rising on the eastern horizon behind the pond and the icy grass crunching beneath my feet, I had one of those moments where I marvel at God's awesome artistic hand.
Friday, September 9, 2005
EJBFactory
In a recent mailing list discussion I mentioned a utility class called EJBFactory that I've used in the past. It encapsulates most of the ugly boilerplate and error-handling code that an EJB client usually must include in order to obtain references to EJBs. I offered to publish a version of the code, so here it is:
http://www.rizzoweb.com/java/EJBFactory.java
It is not complete; for one thing, as the class comment says, it does not do narrow() ing of the remote references it gets. But that should be easy enough to add, and the more robust, complete version of this idea is in code owned by a previous employer of mine.
Hopefully someone will find this interesting and useful as a starting point for implementing whatever their EJB client code needs. I welcome any feedback about improving it.
Tuesday, September 6, 2005
Private Abuse
I was recently searching for a way to dynamically get an instance of a java.lang.Class that represents a primitive type (basically, I needed a dynamic form of what you get when you reference something like java.lang.Boolean.TYPE). I never did find an acceptable way to do it (please email me if you know of one), but someone brought to my attention that there is a method, java.lang.Class.getPrimitiveClass(String) that appears to do exactly what I need. Great! No - the method is private, so I have no chance of ever using it.
This gets to one of my biggest peeves about the state of the Java programming art - the abuse of private, which I see as one of the biggest hurdles to reuse and extension.
A typical response to this position is that "private has a definite use and can often times be preferred as once you make something public then so it must remain for ever," but I take issue with those points.
First of all, they're forgetting about protected scope, which is much more friendly than private and provides the same level of "protection" (the notion of protection in coding is a tricky concept , as I'll get to later) in most cases.
Beyond that, I don't buy the argument about once something is public you can't change it. Very few of us are writing the kinds of code that is set in stone - refactoring is usually an option. Deprecation is your friend, too.
Actually, if you are writing some kind of code that must be set in stone, all the more reason to use protected instead of private. Because in that kind of situation (rare as it may be) you should be striving for more flexibility, not less. Private scope can only add flexibility for code in the same class; on the other hand, for increased flexibility of all other code (the clients/callers and extenders), protected and public provide much more flexibility. When you use private, you are essentially assuming that you know exactly every way in which the code might be used or extended, which is, IMO, rather short-sighted and brash.
The kind of attitude that thinks that way (must make things private because I might want to change them one day or because I know this would never be needed outside of this class) is what Martin Fowler refers to as a Directing attitude (as opposed to Enabling) and I find Directing attitude to usually be counter-productive an frustrating to work with.
Finally, I'll say this: making methods private is often justified by saying "this is implementation specific and could 'break' the code if used externally." But again I find that a bogus argument - if I subclass a class and call or override its protected methods and it does not behave how I thought (so long as it adheres to the documentation or other contract), it is not necessarily the original class author's fault. I would certainly expect testing to happen, which would uncover any false assumptions or mis-use of inherited code. Again, Directing vs. Enabling - I prefer that I'm given as many tools as possible rather than being stuck with the limited set that
some original programmer thought I would need.
OK, one more "finally": Smalltalk, probably the most pure of widespread OO languages, gets by just fine without private methods at all. I've never heard of anyone coming upon a situation where they just NEEDED them and where marking them as "intended to be" private
didn't suffice. Here is an excellent article on the subject
If you read nothing else I've written in this diatribe, read at least that and the Martin Fowler article. They are written by far more effective writers than I, and it shows.
Sorry for ranting - it's late and I was bored. Seriously, I've spent 10+ years thinking about this topic on and off, and my position is very firmly set after all that time.

