Brian's Waste of Time

Thu, 08 Jan 2004

JBoss and Guerilla Marketing: Richard Saunders

Anyone remember that beautiful late 80's, early 90's term "Guerilla Marketing"? JBoss Group LLC does, I think. This is purely conjecture, but I would be willing to bet a BEA license on it ;-)

Recently a new blogger calling himself "Richard Saunders" appeared. He is presented as a bad stereotype of the archetypical VB developer:

"As I mentioned, I'm but a mediocre programmer. I'm now the bottom of the barrel from what I gather, I'm a mediocre "corporate" programmer. ... Until now, I did not seek to be a very good developer. It was mostly an ends. I was always a tinkerer and folks told me that I should work in technology. Originally, I tried to be an engineer, but having no aptitude for math or impractical theories, I quickly decided to move into computers."

I thought when I first read his entry that he was a skilled troll -- even the title of the first entry was a good troll, "As it turns out, Hani is an idiot" (which is prompty apologized for). In the same way that you have to watch a train wreck unfold I wound up reading the whole epic post, and the comments that followed. I then wrote it off as a slashdotter's lark.

He (or she, I won't discount that it may be Ms. Fleury writing it) is very good with titles though, so I got roped in again recently by an interestingly titled article on javablogs. It seems that in the last couple of weeks Mr. Saunders has gone from VB L0s3r to "the best of the best" because he discovered JBoss and reads blogs. Wow!

It gets better though, as our intrepid Mr. Saunders is in trouble for daring to speak the truth! Oh no, peril! Stay tuned 'til next week to see what our brave hero does!

Whoever is writing this is having a lot of fun with it, and is a pretty good story teller. It sounds like a JBoss advertisement pure and simple, but it is entertaining in the same way that reality TV can be entertaining, or maybe professional wrestling is a better example, as there is apparently a script. The JBoss group is infamous for creating fictional fans on TheServerSide forums. They know how to get that grassroots thing going! So now an intrepid JBosser may be writing a fictional blog about fame and riches that come from using JBoss and reading blogs. Power to them.

I don't know if this is funny, crass, smart, or a little heavy handed. It has obviously hooked some smart people in who continue to post advice to Mr. Saunders, but I think that many people believe it is a (possibly entertaining) infomercial. I bet we will see a lot more of this in the future as well. The internet is famous for blurring reality and fancy, after all. The marketing potential of fluid identity and believability by getting the jargon right is huge.

If, by chance, Mr. Saunders is for real he is in the wrong line of work -- despite what your friends tell you, you belong in reality TV! If you are serious about your issues at work, and it isn't a marketing move by JBoss, you have my sympathies -- it could be a Dilbert book. If it is a JBoss advert -- good idea, I think.

3 writebacks [/tech] permanent link

Apache Finally has a .NET Project: Log4Net

With the creation of the Logging project at Apache we finally have a .NET based project!

Pretty cool stuff. I know that various .Net bloggers have been clambering for a ".Net Apache" periodically and various people have repeatedly commented "just approach Apache about hosting the project." Now that there is at least one there, hopefully others will get the idea that Apache != Java.

5 writebacks [/src] permanent link

Support for Mocking Classes as well as Interfaces

MockObjects have a great dyanamic proxy based mock object implementation available, but it is limited to mocking interfaces up. A coworker needed (well, wanted) to dynamically mock up a class instead of an interface so I tossed together support in intercepts for mocking arbitrary objects. If you want to mock a class it requires an instance of that class, as Java doesn't allow you to instantiate subclasses without being able to instantiate the super class, but it guarantees that no methods will be invoked on the object it is given.

Also fixed a pretty major bug where interceptors could be invoked out of order if objects were wrapped, and interceptors added, in a specific way. I fixed it via changing a map to a list of tuples. Sometimes Java's static typing instead of dynamic typing really bugs me.

Posted new snapshots as this involved a fix to the first bug found!

7 writebacks [/src/java/commons-intercept] permanent link