Neward on Persistence.
Great stuff on Ted Neward's weblog today on object first, relational first, procedural first, and hierarchical first approaches to persistence - all from his upcoming book Effective Enterprise Java. I'm printing them out now and cancelling all appointments this morning ;-)
WROX sale is complete.
Wiley has purchased 35 or so of the WROX titles and APress has purchased the rest. So there is still some small hope that Apress will help Professional JSP 2.0 to see the light of day (so don't post those chapters just yet Matt ;-).
The virtue (and vanity) of an open source stack.
Roller sits on a big fat stack of software including Struts, Velocity, Hibernate (or Castor), Servlet Container, Database, and etc. When we encounter a problem, it is often deep down in the stack. Since the stack is open source, we can get the code, fix the bug, and even ship the patched jar, if we so desire. This is what Lance just did. He found that Roller had problems on HSQL-DB due to Castor's limited support of the SQL LIMIT keyword, he fixed it, and submitted a patch to the Castor folks. Now, as the guardian of the Roller Hibernate implementation, I guess I need to do the same thing for Hibernate.
Mike is stirring up the Struts fans again.
Cannot load JDBC driver class 'null'
As Jon Lipsky found, Tomcat DBCP configuration is the thorn in the side of Roller. Everybody seems to have problems with it. I need to do some research to figure out that Cannot load JDBC driver class 'null' means, because several users have been running into the same problem. Since Hibernate provides it's own connection pooling, configured by a simple properties file, perhaps we should drop DBCP from the standard Roller/Tomcat setup. Either way, I should add the alternate Hibernate configuration to the Wiki.
Ken Hygh's talk at the RTP-WUG.
I went to the RTP Websphere Users Group meeting last night to see IBM consultant Ken Hygh talk about best practices for Java web application development. Ken works in the IBM Websphere Enablement Group and he is a co-author of Performance Analysis for Java Websites. His slides were titled Websphere Best Practices, but the talk was generic J2EE goodness that could be applied to any Java app server. The slides should be available on the RTP-WUG web site at some point.
Ken gave us the same talk that he gives to Websphere app server customers who are about to begin development on web application projects. I'm sure this was familiar ground for most of the RTP-WUG members as most WUG members are probably Java developers, but it was very interesting to hear how Ken lays it out for IBM customers. Ken really knows how to explain the issues well and he is about as down-to-earth practical and pragmatic as you can get. I was a little surprised to hear him down-play EJB and Web Services as much as he did. Attending a talk in the heart of Websphere-land I expected a little hype, but Ken is not about hype. He did not rule these technologies out, but he pointed out that they are often not the right choices. If Ken was guilty of hyping anything, it was XP. He really pushed unit testing hard and talked about JUnit and JUnit related testing tools such as HTTPUnit, Cactus, etc. He also recommended that everybody run right out and purchase a copy of Martin Fowler's Refactoring.
Ken walked through the development of an example web application, showing how to roll your own controller Servlet and simple Model 2 architecture. In the end, he had something that looked like Struts or Webwork. For the back-end, he recommended using the Data Access Object (DAO) pattern - even if you are using EJB. He said that he always recommends using DAO because it enforces modularity which makes testing and refactoring easier and because you never know when you might need to switch persistence technologies (as we recently did in Roller).
All in all, excellent talk. IBM customers are getting great advice from Ken.
The software I love is ugly, greedy, and antisocial.
The great emerging technologies gurus have deemed Wikis to be ugly and RSS readers to be anti-social and greedy (I hope her talk was more interesting than the slides). I guess you can't move forward without burning the bridges behind you. Whatever, I love Wikis and RSS readers. I guess I can understand why some shallow person might be turned off by the uglyness of Wikis (no matter how much CSS is applied), but how can Meg say that RSS readers were not designed for weblogs? Weblogs are the very reason for the existence of RSS readers. UPDATE: there is some additional discussion of the Wikis are ugly topic on Joi Ito's site.
Those poor hapless VB programmers.
Techies and Modelers, Ted Neward: And on the flip side, we have your average Visual Basic programmer, who probably couldn't even tell you how many bytes one of their objects/classes/whatever consumed, and probably didn't care much, either. Their job was to come in, write a program, and leave, and they did--over and over again (many times, reweriting the same application because "nobody ever thought of that particular feature, it'll be easier to do it over again")
Mike Devlin, General Manager IBM Rational: "How do you help a VB [Visual Basic]-type developer or somebody that's just developing HTML Web pages or who thinks of themselves more as a creative artist?" Devlin asked. "How do you help them contribute in a software project? [...] One of the problems with these VB-type solutions is you can quickly produce a bunch of spaghetti code that's unmaintainable and hard to evolve if you're not careful"What can be done to help these poor folks? Sounds like Ted and IBM may agree: turn them into modelers.
An interesting one to watch.
eWeek published an interesting series of articles today on the ongoing integration of Rational Software Corp. into IBM. Rational Digs Up Gems describes how Rational's Grady Booch is working to identify IBM Research projects to be productized, such as hyperdimensional programming (AOP). Rational's Devlin Eyes Tight IBM Ties discusses bringing Model Driven Architecture to the Visual Basic-type programmers of the world. Rational, IBM Model a New World analyzes the merger's impact on the enterprise software and dev-tools markets.
FoneBlog demo server.
UPDATE: Doh! Russell has blogged about Newbay a couple of times before and I missed it. See his posts:Wow! I'm in the News and Camera Phone Blogs.
Driving SMS/MMS revenue with Roller.
Newbay Software: Providing a phone Blogging value added service to your customers will open up several significant revenue streams, increasing ARPU dramatically for the target group. Messaging revenue, especially media messaging (MMS), will see the greatest increase, however there will also be growth in SMS and data usage. Monthly subscriptions, increased camera phone sales and additional revenue options (below) make FoneBlog a solid revenue generator.
Take a close look at some of the weblog themes they provide and you can see that their FoneBlog software is based on Roller. Very cool! Newbay is a privately funded company, formed in November 2002 in Dublin, Ireland. They have already earned press coverage in ZDNet-UK, BBC, Wireless Newsfactor, and Silicon Republic.
Roller 0.9.7.1 Released.
Roller 0.9.7.1 (a <a href= "http://opensource.atlassian.com/projects/roller/IssueNavigator.jspa?view=&tempMax=1000&decorator=printable&start=0&fixfor=10040&mode=hide&reset=true&pid=10000"> bug fix release) is now <a href= "http://sourceforge.net/project/showfiles.php?group_id=47722&release_id=153808"> available.
the Voodoo Science blog.
Bob Park:WN therefore recommends replacing the polygraph with a coin toss. If a little collateral damage is not a problem, coins will catch fully half of all spies, a vast improvement over the polygraph, which has never caught even one. Moreover, coins are notoriously difficult to train, making them impervious to countermeasures.My parents came over for dinner last night and my dad pointed out that Bob Park, author of Voodoo Science, has what is essentially a blog (but no RSS feed) hosted by the American Physical Society.
Mozilla Midas support in Roller.
I added support for the Mozilla <a href= "http://www.mozilla.org/editor/midas-spec.html">Midas HTML editor control to Roller, but I've found Midas to be pretty flaky. It has crashed Mozilla on me several times today (I'm running Mozilla 1.3). I think it is a little too unstable for general use, so I probably will not add it as an option to the Roller Website:Setting page. Here is a screenshot, just to prove that it was actually working at one point:
<img src= "http://www.rollerweblogger.org/resources/roller/editor-midas-screenshot.png">
I had to do a little work to adapt the <a href= "http://www.mozilla.org/editor/midasdemo/">Midas demo page for use in Roller, but nothing major. Even when Midas is working, it is far from perfect. It does not support XHTML and the HTML that it generates is not very pretty.
I got your brain.
Alex(6) was busy working along side of me on what he calls a "craft" and making quite a mess of construction paper and cardboard all over my desk. I looked over at him and we had this little exchange of words:
Alex: Dad, I know what you're thinkin'. Me: how do you know that Alex? Alex: 'cause I got your brain inside my brain Dad.
Poor kid.
Hibernate twice as fast as Castor?
I did some stress testing of Roller 0.9.7 last night with JMeter and used it as an opportunity to compare throughput of Roller with Castor vs. Roller with Hibernate. I put a summary of the results on the WIKI. Any suggestions for improvement on this test or comments on the limitations of this test are welcome.
Part of the reason I was testing was that Matt has been having severe problems with out-of-memory exceptions. After running those tests, I let JMeter run the test plan all night long (Loop Count: Forever) and enountered no out-of-memory problems. I guess I need to get closer to Matt's config if I want to duplicate the memory problems he is encountering.Roller 0.9.7.1.
Nerve-wracking, inflexible, and unintuitive.
via Scott Rosenberg: David Pollard did an interesting <a href= "http://blogs.salon.com/0002007/2003/04/11.html#a168">survey on Radio UserLand usage among the bloggers at Salon.com. Reading the responses for the question "what do you like/dislike about the existing Salon/Radio features?", one gets the impression that using Radio is not a very pleasant experience. The words cumbersome, nerve-wracking, inflexible, and unintuitive are used to describe the software and the words pathetic, sporatic, and impersonal are used to describe the support. One respondent: "ask other bloggers, not Userland, when you need technical help." Hmmm... didn't Dave Winer say open source software makers were the ones who did not care about users? Sounds like us open source guys are not alone ;-)
But seriously folks, I bet that many of those complaints also apply to Blogger, Movable Type, and, of course, Roller (OK, I have no idea about Movable Type). Blogging software makes web publishing a lot easier for non-geeks than it was with tools like FrontPage, but we've still got a ways to go.
The responses for "what additional functionality is needed in Salon/Radio?" are interesting as well. Better get on it UserLand, Dave Pollard just did your market research for you. Good ideas for Roller too.RSS fixins'
<a href= "http://www.tbray.org/ongoing/When/200x/2003/04/22/RSS-Problems">Tim Bray, RSS Needs Fixing: Because, boys and girls, RSS is no longer a science experiment, it's becoming an important part of the infrastructure, which means that a lot of programmmers are going to get the assignment of generating and parsing it, and they need better instructions.
XML co-inventor Tim Bray comments on the problems with RSS and uses language so foul that not even <a href= "http://cyber.law.harvard.edu/blogs/static/crimson1/fuckbrained.gif">Dave Winer can handle it (Dave deleted his post about it, but forgot to delete his illustration). Tim has a lot to say and you should <a href= "http://www.tbray.org/ongoing/When/200x/2003/04/22/RSS-Problems">read it yourself if you care about RSS, but the two problems he complains about are that entity-encoded HTML is allowed and that relative URI references are not allowed. Tim also mentions the informality of the RSS spec. I agree with all of his points and especially the one about the spec. We need a real, formal spec, managed by a standards body, something like the one that Mark Nottingham recently wrote up. I'm not sure why Mark's spec got such a luke-warm reception.
Tim's article, in part, was responsible for sending Sam Ruby's fingers into furious blogging mode. Basically, Sam agrees with Tim on both of his points, suggests adding a namespace to RSS, and mentions bringing IETF in as an RSS standardization body. Sam wrote up a bunch of excellent posts on RSS, much better than the post you are reading right now. Check them out:
Back to work.
Today I go back to work after week of furlough (happy happy, joy joy).
Here are some photos from my week off:
« Previous page | Main | Next page »