Mena's photos.
Andy: it's not a bug, it's a feature.
I had to laugh when I saw the post on Matt Croydon's site, especially since it was my fault. The basic problem here is that Roller weblog entries are run through Velocity before they are displayed. I added this feature so that user's could use Roller macros within weblog posts to do things like displaying images. Now I'm thinking that Velocity is overkill. Velocity is perfect for the Roller page templates, but for the weblog posts themselves? Lance's "hotwords" idea is probably more appropriate.
Using JFace and SWT in stand-alone mode.
<a href= "http://www-106.ibm.com/developerworks/library/os-ecgui1/?ca=dnt-43"> A. O. Van Emmenis: "Even outside the Eclipse Workbench, JFace's pluggable design still allows you to develop sophisticated GUIs with surprisingly little code."
Persistent differences between the .Net and Java worlds.
Stuart Halloway: "Those few differences that will continue to matter are those of programmer culture."
Snow in N.C.!
We have about 3 inches of snow here in Raleigh and the white stuff is still coming down. Schools are closed, kids are happy, and I'm not going on the roads today. The universities in the are open except for N.C. State where students are still sleeping off hangovers from the the "We beat Dook" parties last night.
Blogging Into Thin Air
Frank Boosman: At some point, chance will result in the intersection of a great journalist, a dramatic event, and mobile blogging. When that happens, blogging's prominence in popular culture will skyrocket.
Velocity sucks, no, wait, I mean it rocks.
Lance has resolved his Velocity difficulties and is well on the way to providing a full set of Velocimacros for Roller. This will make it much easier for Roller administrators and users to customize Roller. It will also bring Roller in line with Velocity best practices.
Swing PLAF for GNOME
Via Wes Felter's Hack the Planet:
The latest GNOME summary includes a note from Sun that they've finally written a Swing PLAF that looks like Gtk+, to be included in Java 1.5.
Reporter in our midst.
The RTP Bloggers lunch today was enjoyable and pretty thought provoking. Three new faces appeared at the table: Frank Boosman, Jay Thrash, and a reporter named Karen Mann from the Raleigh News and Observer. As Bruce Loebrich said (and see Bruce's post for full list of the attendees), the reporter kept us focused on blogging. So we discussed questions like: where is blogging going in the next five years, how will blogging effect the mainstream media (see Katy Loebrich's story on that topic), how do you reconcile bloglife with worklife, can a newspaper run successful weblog, and what is the difference between blogging and journalism.
I'm not going to try to recount all of the conversations because I did not hear them all (and I'm too lazy). As Rafe Colburn observed, our group is getting a sort of large and unweildy. I'm glad Andy Oliver was at the other end of the table because I think he spent the whole time raggin' on Roller ;-)
I was fortunate to sit across from the new guys, Jay Thrash and Frank Boosman. Frank was eager to answer the reporters questions about the future of blogging. Frank believes that blogging, or more accurately moblogging, will become pervasive. Blog entries will be shorter, often just pictures, or video snippets. Sony Blogman, right Joi? Frank also believes that, within five years, a talented author will blog some major event and the whole world will tune in... think Into Thin Air except written real-time by a moblogger. I'm not sure if those ideas are all Frank's or not, but I'm subscribing to Frank for more stuff like that. I'll also be watching Jay's brand new blog, with a name like javahead.org how can he go wrong?
Cohesion and ridiculously easy group forming.
Check out (Yosemite?) Sam's <a href= "http://www.intertwingly.net/stories/2003/01/17/cohesion.html">new essay:
Sam Ruby: This document describes some of the currently popular techniques used to promote collaboration and group forming via weblogs. If you are not familiar with the concepts of weblogs, RSS, HTML, and referers, it might be helpful to review these concepts as described in <a href= "http://www.intertwingly.net/stories/2002/03/13/manufacturedSerendipity.html">Manufactured Serendipity.
The Roller project now has a Wiki.
A Wiki and the beginnings of a FAQ. Currently, only Roller committers can edit pages. FYI: we are using JSPWiki.
Separating the linkbacks from the feedbacks.
I still owe you a write-up of the Roller linkback implementation. I'll get around to that when I get around to finishing it. I'm way too busy with other things to work on linkbacks right now, but I have been giving it some thought.
The linkback feedback problem is a bit of a challenge. I think the only way around it is to use RSS autodiscovery to find the referer's RSS feed and then parse the referer's page title, excerpt, and permalink - as suggested by Sam Ruby. Since some refering weblogs and websites don't have RSS autodiscovery or even RSS feeds, some additional care is required. Here is my plan:
When a request comes in for a specific day or a specific weblog entry, Roller will parse the refering page.- If the refering page contains an RSS autodiscovery link tag and the RSS feed includes a reference, then Roller will store the referer info gleaned from the RSS feed as a linkback and will set the display flag to true. The linkback will be immediately displayed on the Roller weblog page (assuming the page template includes the linkback macros, of course).
- If the refering page does not contain an RSS autodiscovery link, but the referer info can be parsed from the page's HTML, then Roller will store the referer as a linkback, but will set the display flag to false. The linkback will be invisible to all except the weblog's author. The author must take action (e.g. clicking a 'show' button) to make it visible to his or her readers.
Jason picks WebWork.
Jason Carreira convinced his company to go with Webwork over Struts. From the Webwork mailing list:
Jason Carreira: Well, it really came down to usability issues. We looked at things like having to have separate FormBeans tied to the Actions 1-1 (because you have to cast to the expected FormBean subclass). Also, we looked at some sample code for Struts and Webwork (we looked at code for Chiki, a Wiki implemented with Struts, and Jira. Thanks Mike for having clean code!). It was very apparent that you had to do a lot of busy work to initialize things and do the setup that the framework should have done for you in Struts, whereas in Webwork, it was pretty much all business code. Command driven actions were also a big hit, as our lead architect came from a Next background, and apparently they did code like that all the time. In general, I think it was just a general feeling that Webwork was better abstracted and architected than Struts.One interesting point: Jason used Struts' popularity against Struts by arguing that Webwork's smaller user and developer base would make it easier for his company to lobby for and submit changes and improvements.
Java news roundup.
A bunch of interesting Java related news items appeared on InfoWorld (and eWeek) over the past day or so.
- Sun readying J2EE 1.4 for a February 2003 release which will include SOAP, WSDL. Sun also "presented a laundry list of technology and promotional efforts" including:
- Sun intends to cooperate more with open source developers and will boost Linux support, but still has no plans to open source Java itself.
- Sun won't support IBM's Eclipse IDE project, but will back Oracle's recently submitted JSR-198 specification for pluggable Java IDE. I guess they think this will prevent a total eclipse.
- Sun will work to simplify the Swing APIs (what JSR is that?) and the Java language via JSR 175. JSR-175 is a new Java specification for adding meta-data to Java classes.
- Judge gives Microsoft 120 days to ship Java. This has been widely reported in the Java blogosphere. Microsoft's lawyer says "This is very, very messy, very, very complicated."
- Sun posts $2 billion loss, slight profit. "Price competition has also been brutal in high-end computers." The article concerns financial matters, so, of course, there is no mention of Java. eWeek reports on this as well and adds that Sun is planning 11% layoffs during 2003.
- SAP's new release of <a href= "http://www.infoworld.com/articles/hn/xml/03/01/16/030116hnsapnetweaver.xml">mySAP will support both Java and Dot-Net. The article does not describe how this will be done, but it does seem to indicate that Java and J2EE are the heart of mySAP and that Dot-Net support will be done via Web Services. eWeek also reported this story.
Roller TODOs.
Matt has put together a nice Roller 0.9.7 TODO list for himself. Cool stuff. The "remember me" feature sounds especially useful. Apart from finishing-up the linkback feature, the main thing I would like to do is to fix comments. I would like to eliminate the pop-up comment window and instead allow users to specify a template for displaying comments. I would like to make it possible for Roller users to have a comment page like the one on Sam Ruby's site: comments, linkbacks, pingbacks, and trackbacks are displayed in chronological order and are grouped by day. You can view comments per item, or you can view recent comments on all items.
Also, for FreeRoller, we need to move RollerConfig into the database so that Roller can run accross multiple background worker servers and fix the performance problems with the index.jsp page. The caching works great on index.jsp, but refreshing the cache is still painfully slow.
Wow, that's a lot of work...
I blame Carlos!
Apparently, Carlos Perez's notorious 101 reasons why Java is better than Dot-Net posts have the Java-based FreeRoller server crawling along on the floor, coughing up teeth, and begging for mercy. The main page does not seem to be working properly anymore and weblog pages are rendering very slowly. Maybe FreeRoller has reached the limit of what one instance of Tomcat can handle, even with page caching, database connection pooling, etc. I wonder if Roller.Net would do any better.
Linkback feedback loopback.
Sam Ruby and Mark Pilgrim, who both have weblogs with automatic linkback implementations, both linked to my Introducing Automatic Linkbacks in Roller post the other day. This created a linkback feedback loop. Luckily, I anticipated that some linkbacks would have to be hidden and I added controls to the Roller UI to allow weblog authors to pick which linkbacks are to be shown and which are to be hidden. Using those controls I've been able to hide the results of the feedback loop, but I would like a more automatic solution.
Oh yeah... that *is* better.
Who needs an HTML parsing linkback extractor, just grab the refering site's RSS feed and XML parse out the goodies. Very cool! Why didn't I think of that! Sam Ruby explains how to do it. What about sites that don't have an RSS feed and don't indicate it's presence via a link tag? They don't deserve a linkback!
Update: I was kidding, of course. Some of my favorite blogs do not have RSS Autodisovery. I agree with Bruce's earlier post, a linkback implementation should use a combination of HTML extraction and RSS parsing to get the refering post's permalink and excerpt.
The only solid argument for using WebWork over Struts?
One of the appealing things about Webwork is that Webwork actions are not tied to the web (i.e. the Servlet API) in the way that Struts actions are. You can use Webwork as a generic action framework, implement your business APIs as actions, and then re-use those APIs behind any UI technology: web, Swing, AWT, command-line, etc. You've probably heard WebWork advocates tout this genericity as a major advantage of Webwork over Struts. According to Anders Hovmoeller, writing to the WebWork mailing list, it is the key advantage of WebWork over Struts:
Anders Hovmoeller In my opinion, the only really solid argument for using WW over say Struts is that we are not locked up in a certain environment. I firmly believe that the core parts of XW can easily avoid being tied up to servlets, as WW does now.But this is opinion is not shared by all WebWorkers. Rickard Oberg, the original architect of Webwork (who recently resigned from his position as architect of the project), does not see it that way. This is from a Jan 13, 2003 post on the Webwork mailing list:
Rickard Oberg That WebWork turned out to be a generic command pattern was more of an accident then by design. Because of this genericity WebWork is not optimally designed for doing web work. Some of the "plumbing" needs to be done by actions themselves, instead of having it be done by the framework. I want to make WebWork/XWork *better* suited for the web, because that is what *I* *need*. I want to get more for less. I don't give a damn about making it work well in Swing. If it does, then whaddyaknow, cool. If it doesn't, shit happens. If there's ever a point where I need to decide between "keeping genericity, or making it work better for the web", the latter is a given.If you are considering using Webwork instead of Struts for your webapp, you might want to follow along on the Webwork mailing list to see where it is heading. Is it continuing along the generic "XWork" framework path or will it turn and become even more web-friendly?
Tweaks needed.
The Automatic Linkbacks feature still needs some work. In addition to title and excerpt, I need to extract a permalink for the refering entry. I also need to add a linkback editor so that linkback URLs, titles, and excerpts may be edited. Right now, linkbacks can be shown or hidden via the Roller Editor UI but that's all - other edits require SQL.
« Previous page | Main | Next page »