WidgetWeb 1.0.51 Released

Sites will be updated the night of Saturday, November 11th through BitEvolution AutoUpdate. Manual updates can be downloaded at http://www.widgetweb.com/download.

Changes include:

  • Upgraded WYSIWYG editor to FCKEditor. This offers several enhancements including additional font control.
  • Improved IE6 support including mouseover support for flyout menus.
  • Tested in IE7.
  • Improvements in browser caching support. Should be noticeably faster page loads after initial load.
  • Reduced size of JS file downloads - Should improve initial page load times.
Developer changes:
  • Removed integration with OpenLaszlo - Important to developers.
  • Initial integration with Restlets - Important to developers.
  • Upgraded to Groovy JSR 06 - Important to developers.
  • Upgraded OSCache - Import to developers.
  • Upgraded to Yahoo! User Interface library version 11.4 - Important to developers.
  • Removed Markdown support - Important to developers.
  • Removed Clickstream support - Important to developers.
By nyven on Nov 12 '06

WidgetWeb 1.0.40 Released

Sites will be updated the night of Friday, June 30th through BitEvolution AutoUpdate. Manual updates can be downloaded at http://www.widgetweb.com/download

Changed include:

  • Page, Space, and Site controls are now in an overlay controlled by a tab at the top of the screen. This simplies the page widgets.
  • Updated to BitEvolution 1.2.0 (important to developers).
  • Fixed issue when uploading/deleting files in the Public directory.
  • Removed Login and Register links from page.
  • New login url at /login.
  • All top-level URLs that are specific to the WidgetWeb framework (e.g. /service, /content, /action) are now prepended with the bang character (e.g. /!service, /!content, /!action). This reduces potential conflicts with page names.
  • User pages are now accessible at /~ (e.g. /~nyven). This is a simplification of the previous url (e.g. /person/nyven) and reduces potential conflicts with page names.
By nyven on Jun 30 '06

WidgetWeb 1.0.34 Released

Many interesting changes in this release including:

  • New user interfaces for editing widgets.
  • Drag and Drop move for widgets.
  • New YouTube widget contributed by Eric Wahlstrom.
  • Fixed memory leak with user management.
  • Added ability to delete users.
  • Introduced the Yahoo User Interface library.
  • Added ability to sort menu by reorganizing order of pages.
  • Simplified WYSIWYG toolbar.
  • Added "lightbox" effect for logging in and user dialogs.
By nyven on Jun 12 '06

WidgetWeb 1.0.14 Released

Changelist:
  • Enhancement - Added new design called Plain 1.0 based on design by James Koster.
  • Enhancement - Drop-down menus now readded to Prozac Afternoon design.
  • Change - Images in Picture Gallery are now displayed in alphabetical order.
  • Change - Interfaces for Widgets changed and finalized (important to developers).
  • Change - Upgraded to OpenLaszlo 3.2 (important to developers).
  • Change - Upgraded to BitEvolution 1.1.4 (important to developers).
By Ron Lancaster on Mar 27 '06

WidgetWeb 1.0.4 Released

  • Enhancement - New One Column Layout
  • Enhancement - Added Prozac Afternoon as stylesheet for one and two column layouts.
  • Enhancement - Added Andreas 07 as stylesheet for two and three column layouts.
  • Enhancement - Added TinyMCE rich text editor.
  • Enhancement - Enabled Gzip compression and Client Cache Controls.
  • Change - Menus now are more intuitive. If spaces are enabled, then they show up as intertitle headers between unordered lists of children pages. This makes it much easier to control the styling of the menu.
  • Change - The Local Menu was removed. It was too confusing when jumping between one level of the site an other.
  • Change - Removed "Set Colors" action on themes. Colors were not well implemented in light of new themes.
  • Change - Upgraded to Open Laszlo 3.2cr1. Technical change relevant to developers.
By Ron Lancaster on Mar 03 '06

WidgetWeb Beta 10 Released

It is available at http://www.widgetweb.com.

Released Oct 14th

Changelist:

  • Change - Merge Site, Space, Theme, Page actions into single action menu.
  • Change - (Important to Developers) Moved hidden attribute from Space model to Space object.
  • Enhancement - Add creation listeners. These are commands that can be executed immediately after a widget is created.
  • Enhancement - Extensive redesign of themes/layouts. Introduce concept of themes to ease customization of sites. For an overview of how to change themes, see Themes Layouts.
  • Bug Fix - Encoding issues resolved. Will now support any language as input to Widgets.
  • Bug Fix - Numerous bug fixes including improvements to the user interface and continued improvement of handing in Internet Explorer.
By Ron Lancaster on Oct 21, '05

Nintendo Revolution Controller

http://cube.ign.com/articles/651/651275p2.html

I GET IT! And I love it! This controller is incredible. I can only hope that Nintendo can rally the FPS hoard from the PC world. I can only hope that game developers get it too.

By Ron Lancaster on September 16th, 2005

Code Convention for Null Arguments

One of the coding conventions followed by our development team is to check for null arguments (as a precondition) and to throw an IllegalArgumentException if this is violated.

For example: if (null == startDate) throw new IllegalArgumentException("Null: startDate");

This example illustrates a few conventions:

  • The use of IllegalArgumentException instead of assert (Java 1.4 assertion). We believe these checks are not conditional, i.e. testing vs. production.
  • IllegalArgumentException is used instead of NullPointerException since it more accurately describes the violation.
  • The check for null is highlighted by placing null first.
  • The check is all on one line allowing grouping of similar checks.
  • The message is simply Null: <variable name>. This is quick to type, but still helpful during debugging. Itis fine to be terse since these types of checks are never expected to escape to the user.
By Ron Lancaster on August 30th, 2005

Biggest Business Technical Driver of 2005

Okay, so I'll play prognosticator for a minute. My prediction: In 3 years, we will look back on Google Talk as being the biggest driver of business and technical change for 2005.

Here's what I mean. Google is the first(1) large, high profile company to embrace XMPP(2), an open source chat protocol. Additionally, they've publicly stated that they plan to get all other major chat protocols to become interoperable with XMPP.

My prediction (in detail): They are going to be successful in winning large numbers of new users to chat as well as winning a large number of current chat users (from AIM, MSN, Yahoo) to XMPP a.k.a. Google Talk. Additionally, they're going to get AIM and Yahoo users to be able to chat easily to Google Talk users (and the rest of the open source XMPP community).

As a consequence of this interoperability, we will finally have an open source, extensible chat protocol upon which to build our applications. Quickly we will see several smart applications of this protocol, much of it invisible to us. For example, presence built into web applications and desktop applications, server to server communication using XMPP, etc.

Additionally, businesses will realize they can run their own servers to secure communication. This will mean that many businesses will adopt XMPP as their choice for chat. Hopefully, the enlightened companies won?t create islands, but will successfully secure intranet communication while allow extranet communication.

So, what is the Holy Grail? Ubiquity. Chat interoperability between mobile devices, applications, Internet sites, etc. Presence technologies will be mundane, but everywhere.

Sidebar:

  1. Apple has XMPP(Jabber) support. But they haven't created the buzz I'm expecting Google to create.
  2. XMPP is an open source, XML based communication protocol. Jabber is kind of an open source umbrella for products and services using XMPP. Jabber created XMPP, then spun it off as a separate technology.
By Ron Lancaster on August 29th, 2005

CSS Text Sizing

I found this article on text sizing useful. It links to over 250 browser shots of text under various conditions.

By Ron Lancaster on July 24th, 2005

Java Proxy

It would be nice to have a library that allowed html requests to be served by a workstation that is behind NAT. http://www.me.lv/jp/manual.html looks like it's the right idea, but there is not code to download. It doesn't really look legit...

Anyone know of a library that does this? If so, please email me (see the email on the left).

By Ron Lancaster on July 24th, 2005

WidgetWeb Beta 7 Released

WidgetWeb Beta 7 has been released to the general public. It is available at http://www.widgetweb.com.

By Ron Lancaster on June 28th, 2005

CSSQuery

I've had the pleasure to use Dean Edward's CSS Query lately and am very impressed. It is one of those rare libraries that marries a simple concept with good/perfect implementation. CSS Query allows you to query the DOM using css selectors. As a developer, this allows me to leverage (and grow) my knowledge of CSS while reducing my dependency on custom code to query the DOM. Thank you Dean Edwards!

By Ron Lancaster on June 25th, 2005

WidgetWeb Beta 6 Released

WidgetWeb Beta 6 has been released to the general public. It is available at http://www.widgetweb.com.

By Ron Lancaster on May 30th, 2005

McLean Lancaster Born

My second child, a 7lb 13oz baby boy was born today, May 25, 2005. He is 21" long. Mother and baby are doing great!

By Ron Lancaster on May 25th, 2005

Things to Check Out

Idea Tip

The Code Fragment mode in IDEA is awesome. I recently had a collection that I was sorting, and wanted to print out the collection both before and after. To accomplish this:

  • I evaluated the collection,
  • switched to code fragment mode,
  • wrote a fragment of code that iterated over the collection
  • and printed the results to System.out.

Nice!

By Ron Lancaster on May 5th, 2005

WidgetWeb Beta 5 Released

WidgetWeb Beta 5 has been released to the general public. It is available at http://www.widgetweb.com.

By Ron Lancaster on April 8, 2005

Promotion to 4th Gup

I was promoted tonight to 4th Gup in the Soo Bahk Do martial art. Cynthia was promoted to 7th Gup. For perspective, our art has 10 promotions before black belt with each getting progressively harder and with a longer wait in between. 4th Gup means there are 4 more tests until Black Belt.

By Ron Lancaster on April 5, 2005

The Perfect Shave

Wow, looks like I need to get a double-edged safety razor. http://www.msnbc.msn.com/id/6886845/

By Ron Lancaster on April 4, 2005

Sin City

Saw Sin City last night. Wow! What a fantastic movie! I guess it doesn't topple the first viewing of the Matrix for me, but it comes close. I loved the dark theme, the great actors, and the feeling that this really was a graphic novel on the big screen.

By Ron Lancaster on April 3, 2005

Hacking Tomcat Webdav Servlet

I've wanted Webdav support in WidgetWeb for awhile now. Up to this point, I've been stymied by the complexity of Slide (even the Construction Kit seemed like work - why isn't there a drop-in jar to start with?). I knew about the Tomcat servlet, but WidgetWeb works in both a hosted and standalone environment. Additionally, I wanted the authentication to be integrated with WidgetWeb. This ruled out the standalone servlet. So, hacking begins.

I didn't want to include the full tomcat distribution as a set of jars for WidgetWeb. But, thanks to the permissive Apache license, I was able to take the pieces I wanted. I left the classes in tact (no changes to source including to packages). Through some trial and error I was able to identify all the necessary classes. Hurdle one crossed.

The next issue I ran into was that the location the servlet was looking by default was the "root" of the webapp. The servlet deals with Resources from javax.naming (JNDI). I do not know much about JNDI, but on a hunch I searched for a directory based naming context. Tomcat comes through again with FileDirContext. I copied this over and created a subclass of WebdavServlet. In this subclass, I overrode the getResources() method to return the FileDirContext with a search scope of the Public directory for WidgetWeb. Hurdle two crossed.

Finally, I needed integration with WidgetWeb's authentication. It appears that the webdav protocol has few ways to authenticate. WidgetWeb uses form-based authentication. But, webdav is looking for basic authentication. A quick search of the web produced a Basic Authentication routine from http://www.alemoi.com/dev/httpaccess/. This appears to be in the public domain (please correct me if I'm wrong!). A few quick changes to integrate with WidgetWeb and voila! webdav access.

So, once again, thanks to the combined efforts of open source developers I was able to solve critical issues in a very short period of time.

By Ron Lancaster on March 27, 2005

WidgetWeb Beta 5 Nearing Release

Beta 5 of WidgetWeb is nearing release. I expect it to be released this weekend or early next week. See the Releases page on WidgetWeb for details about Beta 5.

By Ron Lancaster on March 23, 2005

Quote

"In the interest of fairness and equality, all shall be punished." Thoughts on bureaucracy by Ron Lancaster.

By Ron Lancaster on March 17, 2005

Nephew!

My sister had a son today!
Vitals:

  • Ethan Daniel Lowell
  • 8lbs 1oz
  • 20"
  • Born 12:36 PM
By Ron on March 14, 2005

English Genius

This site has a 40 question test for determining your ability to use words that are commonly misused. http://www.okcupid.com/tests/take?testid=14457200288064322170

My result (woohoo!):

English Genius You scored 100% Beginner, 93% Intermediate, 93% Advanced, and 88% Expert!

See here for full results and results from my friends. http://www.firelord.net/render/firelord/englishtestresults

By Ron Lancaster on March 04, 2005

Sport Karate Open Tournament

Well, last night I competed in my first open tournament. I competed in the 30-39 bracket in both forms and sparring. I did well enough placing 3rd in forms, but I know I could have done better had I managed my time better and had a better understanding of the rules. Next time. =)

By Ron Lancaster on February 14, 2004

Uberman

Recently learned about the Uberman sleep schedule: http://www.kuro5hin.org/story/2002/4/15/103358/720 - Anything to reduce my sleep need! =)

By Anonymous on Unknown

Beto UML Tool

I believe this is the first commercial UML tool designed specifically for IDEA. It looks promising. More information here: http://www.betosoftware.com/teresa/index.html

By Anonymous on Unknown

HeapAnalyzer

From the IBM website: HeapAnalyzer allows the finding of a possible JavaTM heap leak area through its heuristic search engine and analysis of the Java heap dump in Java applications.

http://www.alphaworks.ibm.com/tech/heapanalyzer?open&S_TACT=104AHW61&S_CMP=GR&ca=dgr-jw26awheapanalyzer

By Ron Lancaster on Unknown

Tarchitects and Marketects

http://www.artima.com/intv/marketect.html

I know this article is old. Marketect is currently being used as an office joke so it seemed appropriate to post a link.

By Anonymous on Unknown

DB4O Open Source

http://freshmeat.net/projects/db4o/?branch_id=1733&release_id=178607

DB4O is now open source under the GPL. Very cool.

By Anonymous on Unknown

Dear Diary

Not much to report today, beyond the usual. That woman three down in the line waiting for the bus gave me That Look again. I'm more certain than ever that she is an agent of the Evil One. They are all around me, but sometimes the din of the voices is so loud I can't concentrate and I don't notice them. But I'm SURE of her.

As I walked past the newstand downtown, I could feel all the eyes in the pictures on the magazine covers following me. I really must speak to the proprietor. If only he didn't look so much like a ferret. It unnerves me.

More later, after I've had my tonic and given all the eggs a half-turn.

By Anonymous on Unknown