Archive for 2008

    JBoss DNA, Hello.

    December 31, 2008 7:16 PM

    I suprised I didn’t come across this earlier. JBoss has a released a new federated repository system: DNA. http://www.jboss.org/dna I’ve caught up with the getting started document and the reference guide, and I quite like what I see. First things first, DNA is itself not a JCR implementation (yet). Rather, it unifies one or more repositories and provides a single point of access via the JCR API. The repositories themselves may be JCR compliant, but do not have to be. DNA comes with a variety of connectors such as the JCR, JDBC, and SVN connectors.

    posted by Shane Johnson

    Better Discovery Through Visualization

    December 30, 2008 4:39 AM

    Paul Lamere has posted a demo of a new 3D interface that he’s been working on for exploring and discoverying new music. Be sure to click through and watch the YouTube video to behold some very impressive animations. Paul also notes that recommendations from Project Aura are on the way.

    posted by Sten Anderson

    Groovy is like Gravy, except that it has the “Groove” in it

    December 24, 2008 6:53 PM

    My five year old daughter, Meredith, recently asked me what I was working on. “I’m just working on some Groovy stuff”, I responded. She then announced: “Groovy is like Gravy, except that it has the ‘Groove’ in it”.

    posted by Sten Anderson

    Tutorial: Jackrabbit OCM & Spring Modules JCR

    December 20, 2008 3:15 AM

    Introduction Here is a brief tutorial on how to setup and object content mapping with Jackrabbit (1.5) and Spring. First things first, download this zip and import the source into your project. As mentioned in this post support for Jackrabbit OCM in Spring still hasn’t found a home. Thus you have to download the zip from the JIRA.

    posted by Shane Johnson

    Griffon: Grails-for-Swing

    December 19, 2008 8:29 PM

    What do you get your Swing developers with Grails Envy this holiday season? Consider getting them Griffon: the Grails-for-Swing framework. Griffon brings the Grails “convention over configuration” to the embattled Swing space. Among many other things Griffon takes all of the terribleness out of Java deployment. With but one command (and no coding) I can create a simple scaffolded Swing application deployed via webstart, applet, and as a standalone app. Note that’s all three: I don’t even need to choose my deployment method.

    posted by Sten Anderson

    Spring, JAX-RS, Freemarker, & MVC

    December 16, 2008 5:57 AM

    I’ve realized that JAX-RS can be used to build a web applications based on the MVC pattern just like any other framework (Wicket, Stripes, etc). Typically I use JAX-RS to build services that return XML and/or JSON, but there is no reason I can’t return HTML as well. I feel that the hierarchal nature of RESTful services makes them perfect for delivering website pages too. The only thing that was missing for me was an HTML provider. I’m used to using the JAXB and JSON providers, and I didn’t see a built in one for rendering HTML. So, I decided to build a custom JAX-RS Freemarker provider.

    posted by Shane Johnson

    The Map vs. the Terrain (or DSLs as Documentation)

    December 12, 2008 5:43 AM

    In the late David Foster Wallace’s Infinite Jest, several of the main characters participate in a grand scale “Scorched Earth” style turn-based artillery game on a set of tennis courts. The object for each player was to lob tennis balls across court to opposing player’s targets where the balls represent some sort of ballistic warhead complete with a damage radius.

    posted by Sten Anderson

    HOWTO: Running Weblogic Server 9.2 on Mac OS X

    December 11, 2008 4:43 PM

    Being the Apple-lovin Mac user that I am, I prefer to run everything that I can natively on a Mac, as it is always faster and usually has a smaller memory footprint than running it in a Windows VM. This is espeically critical for software development as being able to work efficiently is import to finishing on time and not getting frustrated. To this end I have quested for the ability to run Weblogic 9.2 on the Mac and have it integrated with Eclipse WTP. In my search, I found many tidbits that helped me along the way, but not a full tutorial on how to do it.

    posted by Matt Campbell

    JavaFX 1.0 to be Released Today (includes Bonus Op Ed)

    December 4, 2008 2:25 PM

    The maiden voyage of JavaFX is scheduled to begin today. There have been, what seems to me, a lot of nay-saying and grumbling on the Internet — a place usually known for its welcoming of new ideas with open minds and hearts — regarding the projected success (or failure) of JavaFX.

    posted by Sten Anderson

    Java is Dead. Long Live Java.

    December 2, 2008 3:04 AM

    If conferences like JavaOne are a High School Pep Rally, then “No Fluff, Just Stuff” is skipping out on the rally, and smoking in the parking lot with the Cool Kids. While at the J1 keynote Rich Green envisions “Java on all the screens of your life”, at NFJS, Stuart Halloway declares without ceremony that “Java is dead”.

    posted by Sten Anderson

    State of Swing

    November 29, 2008 5:00 AM

    Last week during my JavaFX talk, a lot of good questions and comments about Swing came up. Hot off of a Swing project, I thought that it might be useful to compile some of my thoughts on the subject. So herein lie some common Swing sentiments that I feel are out there and my thoughts on them:

    posted by Sten Anderson

    NFJS Retrospective

    November 26, 2008 4:08 AM

    Here are some of the quick observations I noted during the “No Fluff, Just Stuff” conference this weekend: If you don’t own a Macbook Pro you are a caveman If you still work primarily in Java then you’re not even recognizable as a bipedal humanoid.

    posted by Sten Anderson

    Ubuntu, OpenSolaris, or PC-BSD

    November 25, 2008 8:32 PM

    Its that time again. Every so often I feel the need to try out a new OS. For the last year I have been running Hardy Heron on my trusty ThinkPad T61p. It was my first ThinkPad, and now I’m thinking it won’t be my last. After all, they have quad core ThinkPads now. Although, I’ve seen more and more colleagues becoming infected and turning in to Mac zombies. I wonder how long I can avoid infection.

    posted by Shane Johnson

    NFJS 2008 Wrap Up

    November 25, 2008 2:27 PM

    NFJS 2008 is in the bag. This years conference was pretty good overall. The sessions that are standing out for me more than others are Neal Ford’s “Test Driven Design” and his “Design Patterns in Dynamic Languages”. Both gave great tips on how to use dynamic languages to their fullest potential and just because you can code something one way in Java (e.g. maybe follow a design pattern such as the Strategy Pattern) does not mean you should code it in the same way in JRuby or Groovy since you often do not need to go to the same extent in adding more structure to your OO design as you would if you were using a dynamic language. Maybe in a future post I can elaborate more on that and give some examples.

    posted by Bill Gloff

    Brain Surgeons or Band Mates?

    November 25, 2008 4:49 AM

    As several of my colleagues have noted, a bunch of us attended the “No Fluff, Just Stuff” symposium this weekend in Chicago. It was absolutely a great experience, and I walked away with a multitude of thoughts that I will no doubt blog about in painstaking detail over the coming weeks.  But for now, here’s a quickie:

    posted by Sten Anderson

    JavaFX 1.0 Next Week

    November 24, 2008 5:33 PM

    I already mentioned in a previous post that the JavaFX 1.0 SDK is coming out December 2nd, but Jim Weaver puts it much better than I did.  I gave a talk on JavaFX last week, and one of the questions was (something to the effect of) “how can we start using JavaFX in real projects?”.  Jim answers this much better than I did in this “call to arms”:

    posted by Sten Anderson

    No Fluff Just Stuff 2008

    November 21, 2008 5:02 PM

    It’s the weekend before Thanksgiving so you know what that means? NFJS is back in town. This year will be my third straight year in going and we’ll also have about ten of us from CITYTECH attending. It should be a fun weekend geeking out and hopefully learning some new and cool things. Last year’s conference really opened my eyes about Groovy and JRuby so I wonder what this year will bring.

    posted by Bill Gloff

    Announcing the Chicago Groovy User Group

    November 20, 2008 11:13 PM

    Us consultants here at CITYTECH having been getting more and more into Groovy and Grails lately and the number of projects are growing. All of us here are also excited about the news that G2One was acquired by SpringSource as it will help us show that Groovy/Grails is a bonifide langauge and web framework that can be taken seriously in the enterprise.

    posted by Bill Gloff

    Refactoring with Spring - Spring Security

    November 20, 2008 2:13 PM

    I have been doing a lot of thinking about Spring lately, and given that Rod is back in my good graces, I wanted to do a few posts on ways spring has made my life easier. In this first post, I’m going to talk about Spring Security, specifically using it to bring a consistent security model to a legacy web app with “home grown” security.

    posted by Matt Campbell

    Motorola Enterprise Mobility Partnership

    November 20, 2008 4:53 AM

    CityTech was approved as a Motorola Enterprise Mobility Partner today.  We are excited about having this partnership in place as it will enable us to include Motorola's vast line of mobile devices as a key part of the mobile solutions we develop for our clients.  If you have any questions regarding the partnership or want to talk mobility, drop me a line!

    posted by Matt Van Bergen

    Kurzweil Interview

    November 19, 2008 3:52 PM

    Silicon.com is running an interview with technology innovator, Ray Kurzweil. I thoroughly enjoyed Kurzweil’s books The Age of Spiritual Machines and The Singularity is Near in which he draws out the curve of technology from the start of human history through the present day, and into the future.

    posted by Sten Anderson

    Alfresco 3.0 Blog Publishing Feature (it works)

    November 14, 2008 7:56 PM

    I inadvertently posted an infamous "Test" blog post earlier today and was notified by a few of my blog readers!  Funny....I guess that new Alfresco 3.0 multi-channel blog publishing feature works!  I was demoing it for a customer this morning and forgot that I did that.

    posted by Matt Van Bergen

    JC-Rest & Enunciate

    November 13, 2008 5:44 AM

    Introduction A couple of weeks ago one of our clients asked me to prepare some documentation on the CQ/JCR RESTful services I had created for them. I had previously came across this post on TSS about the latest release of enunciate. Unfortunately, I quickly forgot. Then Bill reminded me about it a couple days ago. He is working on a REST/Flex project and he too came across it. Its all coming together now.

    posted by Shane Johnson

    3D Gaming Memory Lane

    November 13, 2008 4:36 AM

    In a recent post, Jeff Atwood (of Coding Horror fame) muses about his Graphics Card addiction. It got me thinking about my own affinity for graphics cards long gone (mine is not an addiction since I can stop anytime I want to — I just don’t want to).

    posted by Sten Anderson

    JavaFX Physics Demo

    November 12, 2008 2:15 AM

    In yet another fun JavaFX experiment, I hooked into the Phys2d physics library and created a little demo. This demo shows eggs falling down some alternating ramps at regular intervals. It is pictured below in action:

    posted by Sten Anderson

    JBoss Seam support in latest IntelliJ release

    November 10, 2008 5:59 PM

    IntelliJ IDEA v8 now has Seam support out of the box. For a list of capabilities included see: http://www.jetbrains.com/idea/features/newfeatures.html They seem to cover everything you would expect in an IDE in terms of Seam-specific functionality.  I was happy/suprised to see the visual jPDL pageflow support.  First thing I want to do is to see if this also supports the jPDL process definitions as well.  I suspect it does, since the only difference is some schema naming, but will report back once I verify this.

    posted by Jeff Brown

    JavaFX 1.0 Release Date: December 2…?

    November 10, 2008 5:14 PM

    In an oddly subdued announcement on the Ain’t Your Dad’s Java podcast, it was revealed that JavaFX 1.0 will be released in about three weeks on December 2nd. Here’s a fun fact: If you look up the AYDJ podcast on iTunes, half of the episodes are listed as explicit.  JavaFX: now 30% more vulgar than Flex!

    posted by Sten Anderson

    JavaFX to Swing: A Help or Hinderance

    November 7, 2008 6:43 PM

    Frank Sommers has written an insightful post exploring the idea that JavaFX is actually hurting a more mature client-side Java by pulling development effort away from Swing. In some ways it seems that JavaFX is Sun’s “Big RIA Experiment”. If it pays off, it could bring new blood into client-side Java and ultimately drive more investment and interest in Swing’s direction.

    posted by Sten Anderson

    Reaction to the Spring Source Maintenance Policy

    November 6, 2008 3:17 PM

    I love Spring Framework and I use it in almost every java application I write, big or small. However, my mirth over spring was greatly dampened when they announced their new maintenance policy a few weeks ago. I was horrified that they would stop maintenance on the current community version of spring after 3 months! As a consultant, this was going to have the potential to spell the end of my use of spring in many of my client projects as I doubt I was going to get them to shell out the cash for support from another vendor. Plus in most cases, spring doesn’t provide direct visible benefit to my clients. The benefit of using spring is enablement of testable code through dependency injection and not have to reinvent the wheel on all that boiler plate code for JNDI, JMS, Hibernate, JDBC, Web Services, the list goes on and on.

    posted by Matt Campbell

    Alfresco Share in the Enterprise

    October 31, 2008 6:20 PM

    Alfresco 3.0 Enterprise was released this week.  If you have been holding off previewing the new functionality while still in the Labs edition, you are in for a treat.   The thing that will catch your eye immediately is the new Share application that is included in Alfresco.

    posted by Jeff Brown

    A Treat for Halloween - Performance Improvements in Alfresco Task Management

    October 31, 2008 4:00 PM

    I wanted to share an Alfresco customization that greatly increased the usability and performance when dealing with the workflow tasks.  First some background and then I will get into the solution.   On a recent project, we had the task of designing workflows to manage the client’s contract approval process.  We implemented these with several custom Advanced Workflows within Alfresco using the bundled JBoss jBPM tool.   It was the nature of the business that there were several parallel paths resulting in “lots” of active tasks at a given time.

    posted by Jeff Brown

    A Java Developer’s Take on Flash

    October 31, 2008 2:45 PM

    Kevin Glass over at Coke and Code has been documenting his experiences working with Flash to write 2D games. Why should you care? Kevin is a Java Gaming advocate, and the author of the appropriately named 2D Java gaming library, Slick.  Kevin has been creating Java games for years, and I know of no other one person who has been so persistent with his free time in this space. In fact, he is so good at pumping out 2D games that I wonder if maybe his domain name refers to the drug, and not the beverage.

    posted by Sten Anderson

    Day Communique (CQ), Amazon S3, & Mule - Together, at last.

    October 30, 2008 2:46 PM

    This week I integrated CQ with Amazon S3 via the JCR observation API and Mule. First, the business need. The client was making extensive use of the CQ media library, and that is just fine. As media library assets are requested, they are cached on the web server(s). The issue at hand is file size and bandwidth. The client wanted to push the larger files to S3 to save on bandwidth, they also wanted to continue using the CQ authoring interface to manage media assets. Absolutely nothing wrong with that.

    posted by Shane Johnson

    SnappRadio FX Source Code

    October 23, 2008 6:12 PM

    Here’s the JavaFX source code for SnappRadio FX. JavaFX code is pretty readable, so you shouldn’t have much trouble understanding what’s going on even if you’re not familar with the syntax.  Main.fx is a good place to start if you want to trace through. As always, with all of my FX code, it likely does not conform to Best Practices, and since it was a learning exercise, any number of conflicting ideas are embedded within. Having said all that, here’s a quick highlight of some language features that someone with a Java background might do a double take on.

    posted by Sten Anderson

    CMIS Specification (Highlights)

    October 23, 2008 4:32 PM

    Introduction I read part I of the specification the other day. This part covers the services and the data model. This is just a brief summary of my notes. I suspect I’ll be reading over and over the next few days, so I plan to make updates to this post. Anyways, here are my notes…

    posted by Shane Johnson

    More Fun with JavaFX: SnappRadio FX

    October 21, 2008 2:28 AM

    A while back Paul Lamere wrote a compelling music visualization experiment called SnappRadio. From the SnappRadio website: “The Sun Labs Snapp Radio is a mashup of Radio Paradise, last.fm  and Flickr. When you listen to music from Radio Paradise or last.fm, Snapp Radio will collect images from Flickr that are related to the music you are listening to and display them as a slide show.”

    posted by Sten Anderson

    JC-Rest: JCR Browser - Updated

    October 17, 2008 2:17 PM

    I’ve updated JC-Rest to include a  few new services and have updated a few others. In addition to be able to return properties for a node, the nodes services can now return attributes (is locked, is checked out, etc) too. I’ve also added a few services for creating nodes, properties, and what not. Finally, I added a service to return the repository attributes.

    posted by Shane Johnson

    Groovy Java SE Project Postmortem

    October 17, 2008 2:18 AM

    I recently finished up a 10 month project for the City of Chicago’s budget office. Below is a transcript of the project postmortem interview with me as conducted by my 4 year old daughter, Meredith.

    posted by Sten Anderson

    Alfresco Labs Sample Dashlets

    October 14, 2008 3:15 PM

    Alfresco 3 And Surf Like many others in the Enterprise Content Management community, I am looking forward to the upcoming release of Alfresco 3.  One of the key components of this release is the Alfresco Surf platform.  If you are unfamiliar with Surf, Shane Johnson wrote an excellent post which provides an overview and analysis of the platform.

    posted by John Kraus

    Web Content Management: Tips & Advice

    October 13, 2008 8:05 PM

    I can’t begin to stress how important it is to get it right the first time around. Once you begin building an web content managed site, you don’t have the privilege of refactoring. Here are a few things that I find important when architecting a web content managed site.

    posted by Shane Johnson

    Leaking Memory? Try Netbeans 6.5 (Beta)

    October 13, 2008 3:06 AM

    For the past ten months I’ve been working on a Java desktop application for Chicago’s budget office that essentially loads up the city’s seven billion dollar budget and format it into a nice 600+ page public document. Multiple copies of these 600 page “budget book drafts” can exist at once, and be loaded into the application at will.

    posted by Sten Anderson

    JavaFX Breakout (Project Nile) Webstart Link

    October 10, 2008 5:10 AM

    By request, I’ve posted a Java Web Start enabled version of the JavaFX Illustrator Breakout app described in the previous post. The app requires at least Java 6 to run (and possibly even 1.6u10, but I’m not positive on that — but hey, Java 6u10 is out of beta, so why not grab it anyway?)

    posted by Sten Anderson

    JC-Rest: RESTful JCR Services & Repository Browser

    October 9, 2008 8:57 PM

    I’m happy to announce the initial release of JC-Rest. This is an application that provides a set of RESTful services for accessing content in a JCR repository. These services can return XML, JSON, ATOM, or even HTML via custom FreeMarker templates.

    posted by Shane Johnson

    Breaking out with JavaFX Redux: An Exploration of Project Nile

    October 8, 2008 1:10 AM

    In a previous post on JavaFX, we explored some of the 2D animation and drawing features of the language by implementing a “Breakout” style playtest. In this post we now look at the integration with Adobe Photoshop and Illustrator (dubbed Project Nile) using the same banal playtest.

    posted by Sten Anderson

    Content Modeling VS. Relational Modeling

    October 2, 2008 8:36 PM

    I just finished a WCM project for a client using Day Software’s Communique. This project was relatively small, but large enough to get the full design experience which has sparked a lot of thought about the differences between Entity-Relationship modeling (such as with a traditional RDBMS) and Content modeling (such as with JCR or a WCMS such as Communique).

    posted by Matt Campbell

    Ubiquity Firefox Extension

    October 1, 2008 7:44 PM

    Stumbled across the Ubiquity Firefox Extension and was so impressed with it that I figured I ought to write a quick blog entry about it. What it does is allow the user to quicky and easily interact with the web by issuing commands to perform a myriad of useful tasks, such as performing on-the-fly Wikipedia searches, adding Google maps to an email, and translating words or phrases simply by highlighting them. These are just a few of the many feature Ubiquity has to offer. There is also a great feature where a developer can write his own commands, so the limitations of this extension are boundless. I highly recommend checking this extension out as I am sure you won’t be disappointed.

    posted by Jeff Palmer

    The Last Java Puzzler

    October 1, 2008 2:49 AM

    The Java Posse recorded their latest podcast from the JVM Language Summit. One of the surprising pieces of news, not at all related to the summit, was that Java Heavyweight, Neal Gafter, in what has become in some ways, the ultimate Java Puzzler, has left Google to work for Microsoft.

    posted by Sten Anderson

    Alfresco Surf: I like it.

    September 30, 2008 2:36 AM

    Alfresco Surf I spent a couple days last week evaluating the Alfresco Surf framework. It is one part web framework, and one part site construction framework. I think that there is a difference here. I think that web frameworks such as Wicket and Stripes are more about page rendering and not so much about site construction. Typically, site construction is a feature provided by web content management (WCM) systems such as Day Communique (CQ). What Alfresco was able to do was abstract the site construction framework away from the WCM system itself. As a result it can be used to build applications outside of Alfresco. As a side note, Alfresco’s next generation WCM system is built on top of the Surf framework.

    posted by Shane Johnson

    Content Management Interopability Services (CMIS)

    September 28, 2008 7:22 PM

    OverviewIf your passion is Enterprise Content Management (ECM), you probably have heard Content Management Interoperability Services (CMIS) will soon be released to OASIS as a standard content service interface.  I am happy to see such a standard emerge from some of the largest players of the ECM market including Documentum, IBM FileNet, OpenText, Oracle, SAP and both of our partners, Alfresco and Microsoft.

    posted by Matt Van Bergen

    Hungry Fathers Block Party

    September 26, 2008 2:14 AM

    If you’re like me than you enjoy listening to the up and coming Folk-Rock band Hungry Fathers.  If you are me, then you play Lead Guitar for Hungry Fathers! Either way, you might be interested to know that Hungry Fathers is playing at the North Park University Homecoming Block Party this Saturday, September 27th.  The block party is at the corner of Kedzie and Carmen, and we go on at noon.  Over 4,000 people are expected, and you too could contribute to that statistic.

    posted by Sten Anderson

    ISMIR 2008

    September 24, 2008 1:25 AM

    Music Information Retrieval Research Pioneer and Honorary CityTech Friend, Paul Lamere, has been at ISMIR (The International Conferences on Music Information Retrieval and Related Activities) this past week and is aiming to set the record for most blog posts in the shortest amount of time.

    posted by Sten Anderson

    WindyCity Rails Conference

    September 22, 2008 4:21 PM

    Attended the WindyCity Rails Conference this past weekend (September 20th). Overall a decent meeting. One highlight of the meeting was the QA session with David Heinemeir Hansson, the creator of Ruby on Rails. It was an open forum where the participants of the conference were allowed to ask David whatever questions they wanted. Some interesting questions were asked and it was great to hear David’s responses to all of them. One question that I found particularly interesting was in regards to performance in Rails. According to David, developers should focus on optimizing HTTP before all else (even code). He recommended using the YSlow Firefox plugin tool to do this.

    posted by Jeff Palmer

    JCR Search: SQL or XPath?

    September 16, 2008 9:28 PM

    So, I’ve been working on a RESTful application to expose content in CRX added by authors in CQ to other applications. I’ve been using the SQL syntax. I suppose this is because my background includes data architecture and modeling. Yes, I have a black belt SQL Kung Fu. Now we are considering using the XPath syntax instead. I noticed that the JCR specification suggests that database backed repositories are limited in the number of efficient XPath queries they can support. The key word there for me was ‘efficient’. It also notes that, for database backed repositories, XPath queries are translated to SQL queries. So that got me thinking. Should I continue to use the SQL syntax and database backed repositories, or not? Actually, for maintenance purposes, I’ve already suggested that we move to the Tar persistence manager. I suppose I’ll switch to the XPath syntax then.

    posted by Shane Johnson

    Grails / Rails Development

    September 12, 2008 3:27 PM

    I had the opportunity to write a Grails application for the City of Chicago recently (it’s actually going live tonight) and boy, to quote the Grails catchphrase “Develop with pleasure”, what a pleasure it was. From creating custom taglibs to utilizing some of the great plugins available to Grails, it really made working on the project, dare I say, fun! And fast. Although it’s impossible to compare how long the app would have taken had I written it in another framework, I’d hazard to guess that I saved about 25% by going the Grails route. It almost felt like the framework was working with me, as opposed to recent development I did using Struts 2, where it often felt like the framework was not always on my side.

    posted by Jeff Palmer

    Critique: CQ, CRX, & the JCR API

    September 10, 2008 5:50 PM

    I’ve been working with CQ for the last few years. I’ve been working directly with JCR API for the last several months. Finally, I decided to read the JCR specification. I was surprised (well maybe not too much) to see that CQ discards quite a few JCR features in favor of implementing them within the application logic. Personally, I’m not too happy about that. If a feature is supported by the repository, why reinvent the wheel in your application?

    posted by Shane Johnson

    The iPhone Platform for a Java Developer?

    September 5, 2008 3:11 PM

    I am a Java developer.  I’ve been a Java developer since before the 1.0 release of the SDK back in 1995.  I used NetBeans since it was called Forte for Java and have been dedicated to Eclipse since the 3.0 release.  Java is the primary reason that, since 2000, I’ve been able to spend 90% of my time in a Linux environment.From a phone perspective, I’ve been a Verizon customer since 1997.  I started using the Kyocera 7135 smartphone in 2002.  I then upgraded to the Treo 650 in 2004, and most recently to the Treo 700w in 2006.  All of those phones have fantastic features, and also significant short-comings.  None of them fit all of my needs for a smartphone.You know the story of the iPhone.  It’s elegant.  The UI is in a class of its own.  The MultiTouch interface is revolutionary.  High-speed Internet, 2MB camera, a video iPod, PDA features, and now a GPS unit make the iPhone - “The phone to have.”  It does have it’s drawbacks, mainly the lack of cut-and-paste and the poor notes support detailed here.Could a phone be worth taking such a big leap of faith?  The requirements to develop for the iPhone start with an Intel based Macintosh running Leopard.  Since you can’t run Leopard in a VM, there is a substantial start-up cost - a minimum of $500 for a Mac Mini.  Additionally, iPhone development is done with Objective C.  Lastly, in order to use an iPhone, you need to be on AT&T.  I have nothing against AT&T, Macs nor learning Objective C, but that is a lot to invest just for the priviledge to get started.The most important piece of the puzzle is the AppStore.  The AppStore is a blessing and a curse as detailed here.  But with six million original iPhones and six million iPhone 3Gs, there are twelve million potential users.  This doesn’t include the iPod touches that also can use the AppStore.  Software can be deployed without the AppStore using an AdHoc method.  This would allow a developer to control the deployment of the software, which would be perfect for business looking to develop in-house applications for the iPhone.The deciding factor for me was thinking in terms of ones and zeroes.  In the AppStore, all software is given an equal opportunity.  If a piece of software is sold on the AppStore to 1% of the iPhone users at $5.00, after Apple takes their 30%, the developer would take home $420,000.  That’s a good reason to take the leap of faith!On July 11th, after five hours of waiting in line, I walked out with two 16GB iPhone 3Gs.  I love the phone - my wife hates it, but that’s a story for another post.  About a week later, I ran off to Best Buy, picked up a MacBook, and then signed up for the Apple iPhone Developer Program.  I’m ready to begin my journey of transforming from a Linux / Java world to a Macintosh /  iPhone - Objective C world!  Over the course of my posts I’ll discuss the challenges of learning the Mac, Objective C and iPhone development.  I’ll also address the differences between Objective C and Java, the differences between the iPhone and the other smartphones I’ve used, and the differences between the Mac and Linux.  Lastly, I will compare the functionality offered by the OpenSDK to the functionality available in the official iPhone SDK.  All of this will be done while trying to answer my ultimate question:  Can the iPhone fit all of my needs?

    posted by Jeff Schwartz

    Day CRX JNDI Lookup from a JBoss Seam App

    August 29, 2008 4:34 PM

    I just wanted to write up a quick note about an issue I recently had regarding looking up a JNDI resource from another Seam webapp in JBoss 4.2. I installed Day CRX as a war into a development JBoss server and followed all the directions that were given from Day’s documentation including changing the Java2ClassLoadingCompliance property to true in the /server/default/deploy/jbossweb-tomcat55.sar/META-INF/jboss-service.xml configuration file. According to Day “this is required to enable JNDI lookups of the CRX repository between webapps. The default for this attribute is false.”

    posted by Bill Gloff

    Breaking Out with JavaFX

    August 25, 2008 1:51 AM

    For the first in a series of posts exploring the JavaFX (Script) language, I decided to write a simple clone of the classic game Break-Out. This little play test looks at the following aspects of the language:

    posted by Sten Anderson

    JavaFX: The Best Thing to Happen to the Java Platform, or the Best Thing Ever?

    August 15, 2008 2:38 AM

    The JavaFX preview SDK was released not long ago, and it boasts some major changes since the early access release. JavaFX is Sun’s RIA platform juggernaut, set to compete with the likes of Adobe Flex and MS Silverlight and may even have a shot at dethroning OpenLaszlo.

    posted by Sten Anderson

    Pie Master

    August 5, 2008 1:49 AM

    My wife and I have been playing Lord of the Rings Online for about seven months now. Lotro is an MMORPG (Massively Multiplayer Online Role Playing Game), which is a sub-genre of online game where the world is persistent and can generally accommodate thousands of players at once. Players create a character in the game based on one of the races of Middle Earth. The basic goal is to improve your character by gaining experience via completing quests and killing things. The MMO element means that you have the option of teaming up with other players to augment the experience.

    posted by Sten Anderson

    JavaOne: A Retrospective

    July 30, 2008 2:27 AM

    JavaOne is an experiment in Social Behaviorism as much as it is a Technology Conference.  The experiment this year seemed to be what to do with 10,000 geeks, nerds, and dorks in the 30 to 40 minutes between sessions. Answer: make them wait in line.

    posted by Sten Anderson

    SpringSource, JBoss and the Modular Application Server

    July 25, 2008 6:50 AM

    I read Rod Johnson’s post on Oracle raising the price of Weblogic a few weeks ago and have been thinking a lot about his recent comments about the SpringSource Application Platform and his predictions for the future of JEE.  The impression I have gotten is that Rod thinks the JEE Application Server is dying.  Perhaps I am naive in disagreeing, but I just don’t see it.  I would agree that the Spring + Hibernate + Tomcat + Web Framework of the Month stack that is very popular meets the need in many cases, but there are instances where a full container is going to fit the bill much better.

    posted by Matt Campbell

    Web Content Management - Architectural Approaches

    July 23, 2008 4:36 PM

    I’m often asked what is the best way to go about building a WCM enabled application. I’ve learned over the past few years that there is actually a large number of options here. I’m not just talking about products, but rather architectural approaches.

    posted by Shane Johnson

    JavaOne Sessions Now Available

    July 18, 2008 2:59 AM

    Sun has recently released the media from the 2008 JavaOne sessions on the Sun Developer Network site.  Using your (free) SDN login you can listen to many of the sessions as well as read the transcription and view the Power Point presentation.  Here are some of the sessions that I found noteworthy back when I attended the conference in May:

    posted by Sten Anderson

    Game Over, Man!

    June 24, 2008 2:25 AM

    I recently went to my local GameStop in an attempt to purchase the game: Zach & Wiki for the Wii to play with my 4 year old daughter.  I enjoy going to GameStop despite it’s name which puts two words together that conjure up memories of all the times my original Nintendo crashed on me.  They might as well be named “GameLockUp”, or “GameFreeze”.

    posted by Sten Anderson

    Groovy Builders: A Pair Programming Experience

    June 18, 2008 2:12 AM

    So I’ve been meaning to write up a post on my experience with Groovy’s Builder support.  Rather than actually do this though, I thought it would be more insightful to enclose the transcript from my latest Pair Programming session, which revolved around writing a custom Groovy Builder and integrating it into our application.

    posted by Sten Anderson

    Grails and TeamCity

    June 10, 2008 6:15 PM

    Got the opportunity last week to setup TeamCity for a Grails app I am working on. I was able to get it rolling (thanks in large part to two of my coworkers, Sten and Matt V), but it took a lot longer than I expected it would take. Although not an overly complicated process, my efforts were seriously hampered by the lack of online documentation and lack of support from JetBrains (the company who makes TeamCity). As a matter of fact, I was emailing someone from TeamCity support to get some answers to what I would consider some pretty basic configuration issues I was facing, and his response was: “We can’t solve all the problems in the world, unfortunately, as our resources are limited.” I suppose this shouldn’t be too surprising for a product that’s free, but still quite frustrating nonetheless.

    posted by Jeff Palmer

    Flex, JCR OCM (Spring), & CQ5

    June 10, 2008 4:12 AM

    InfoQ posted another article that caught my interest today. In short, it is a case study on the NASDAQ Market Replay application. It is built using Adobe AIR/Flex and Amazon S3. This happens to be very similar to the direction I’ve been wanting to take. I wanted to bring myself up to speed with Flex and I was currently working with a Day Communique (CQ) web site. So, I decided to build a small Flex front end to this web site. In this case, I did choose to add a few new selectors to existing templates and back them up with Servlets to expose the content as XML. I didn’t go with anything fancy here. It was just plain XML over HTTP. While I discussed using a separate Spring/JCR based application to do this for low level integration previously, I do think this is a fine approach if you just want to extend your web front end. I like Flex because of its native XML support. It is simply top notch. However, in this case my content was retrieved from CQ as opposed to S3. As a side note, I am currently working on a project that will use the Spring/JCR approach with Mule to copy content from the CQ media library to Amazon S3. To top it off, we’ll use a custom LinkChecker (com.day.cq.delivery.linkchecker) to rewrite the URLs that point to media library assets now in S3.

    posted by Shane Johnson

    Groovy Pretending

    June 9, 2008 12:09 AM

    A Humorous Setup groovy source file: Uh, hi compiler, I need to invoke a method on an object — the thing is, I’m not totally sure that the object has this method. groovyc: Relax, man.  No worries, I’ll just go ahead and generate some byte code for you.

    posted by Sten Anderson

    CRX, Spring, JCR API, & JAX-RS

    June 5, 2008 9:58 PM

    I have known for some time that the Spring Modules project has support for JCR integration. As it so happens, InfoQ has a nice introductory article on this very module. I have recommended to clients that future integration with CQ should revolve around direct communication with the repository itself. Well, I finally came across an opportunity to practice what I preach.

    posted by Shane Johnson

    Google Reject

    June 5, 2008 5:24 AM

    A while back I scored an in-person interview with Google, Inc.  I prepared as best I could for it beforehand (by watching the “Interviewing at Google” video).  I was intimidated and nervous for sure; here was the company that had transformed not only the landscape of the internet, but also the global economy.

    posted by Sten Anderson

    Groovy Without Grails

    June 4, 2008 4:44 AM

    me: So I’ve integrated Groovy quite nicely into my Java project. coworker: It must be a Grails project. me:  Nope!  It’s a Swing desktop application. coworker: Oh sure, makes sense, you’re probably using the excellent Groovy SwingBuilder.

    posted by Sten Anderson

    On Cloud Nine with Nimbus

    June 2, 2008 2:22 AM

     Here’s a screen shot of the Swing application that I’m currently working on: It has a nice potpourri of the older established Swing and the younger, hipper, SwingX components.  You’ve got your JTrees, JTables, JTabbedPanes, a JXEditorPane, and even a JProgressBar chugging away indeterminately in the lower-right corner.  Thanks to the”system” Look & Feel, it will fool most users into thinking that it’s a native Windows XP application.

    posted by Sten Anderson

    New Chicago area Rails conference..

    June 1, 2008 4:24 AM

    Chicago’s local Rails User Group (Chicago Ruby) is putting together a one day mini conference called WindyCityRails on Saturday September 20, 2008 from 8am - 4pm. Entry fee is pretty cheap at $99 (beakfast, lunch and snacks also included) and looks like it will be well worth it. If you’re in or around Chicago and into Rails, sign up here.

    posted by Bill Gloff

    WCM: Truth be Told - Part 1

    May 2, 2008 5:21 AM

    I have spent the last couple of years working with WCM enabled applications. I have worked with both open source and commercial products. However, I have noticed that a successful implementation requires a slightly different mindset.

    posted by Shane Johnson

    Scheduled Downtime With Hyperic HQ

    April 25, 2008 7:41 PM

    As any user of the excellent open source software Hyperic HQ knows, there are many great features in Hyperic HQ. However, there are also a few short comings. One of these deficiencies in the software is it’s lack of a way to turn off alerts for scheduled downtime.

    posted by Jeff Schwartz

    TSSJS / Day JCR Cup 2008

    March 30, 2008 6:37 PM

    TSSJS I returned from TSSJS this weekend, and it was quite an experience. In addition to speaking, I also attended some great sessions. I was particularly impressed with John Davies presentation ‘Extreme Transaction Processing’. Not only did I enjoy his session, but it rekindled my interest in GigaSpaces. I also enjoyed David Nuescheler’s presentation ‘Kickstarting JCR’. I have been working with Day Communique for a few years now (and as an extension CRX), but I always felt that a simpler approach was missing. Well, this new CRX/Sling application might be exactly what I was looking for. While some clients may require a full featured web content management system, I believe that not all will. Some may suffice with a rather lightweight application.

    posted by Shane Johnson

    Social Networking Mashups

    March 23, 2008 4:24 AM

    I posted my first blog post on November 10th, 2006. The title of the blog post was Web 2.0 and it was a result of me attending the Portals & Collaboration conference in Boston, MA. It is interesting to go back and read this post. I gave a summary of what I learned to be Web 2.0 along with some thoughts on how Web 2.0 might help enterprises and traditional web applications. Well, here we are...silo social networking sites such as MySpace, FaceBook, etc are not enough anymore. I am not saying that MySpace and Facebook are going anywhere as there is definitely a place for them. However, I see users wanting more from the applications they use often.

    posted by Matt Van Bergen

    Day Communique - ClassLoaders, ClassCastExceptions, & Properties Files

    March 7, 2008 8:05 PM

    Intro A little while back we encountered two distinct issues that just so happened to be symptoms of the same problem. One was that we were getting ClassCastExceptions when trying to cast beans pulled from the session in JSP scriptlets. The other was that our properties files were not being found. It turns out that there is actually a quick fix for this problem. So, we’ll look at the symptoms, define the problem, and provide the solution.

    posted by Shane Johnson

    North American Alfresco Community Conference (Chicago)

    February 20, 2008 11:14 PM

    The Chicago weather definitely tried to challenge the attendance at the inaugural Alfresco Regional Meetup last week. Despite the snow and cold, roughly 45 people showed up. I thought this was pretty good considering the weather and that it was the first Chicago event for Alfresco. Here is a quick list of highlights taken from the event: The meeting was kicked off by Michael Uzquiano (Alfresco) giving an in-person "Alfresco in an Hour" presentation. Ian Howells (Alfresco CMO) presented the latest findings from the Open Source Barometer - a survey using opt-in data provided by Alfresco community members. Matria Healthcare and CityTech (Jeff Brown) talked about the use of Alfresco in Matria's next generation touch system. TSGRP talked about a social networking proof of concept which uses Alfresco to store content related to a user's network. Michael Uzquiano (Alfresco) showed a demo of Alfresco's website framework application. The demo was very impressive. The product walked the user through a series of questions related to the new website, then created a drag and drop based site for managing the content.  The framework passes JSON between the Alfresco Web Script tier (REST based services) and the web front-end for rendering and interacting with content. There was talk about whether this framework will be available via the Alfresco Forge or possibly even being rolled into the core Alfresco product. Either way, we can't wait to get our hands on it as it has been a long time coming.After the presentations were over, Alfresco sponsored a cocktail hour where some of the attendees stuck around, drank a couple beers and chatted about technology. A few of the CityTech guys (Jeff Schwartz, Jeff Palmer and Tom Kelly) ripped out their laptops and setup shop on the cocktail tables to show a couple more real-life examples of Alfresco centric applications. One of the applications the guys demoed is a contract management application we developed using Alfresco to manage a highly complex contract approval workflow (over 50 steps!) and related documents for a large municipality. The other demo showed how Hyperic (and open source enterprise application monitoring system) could be used to monitor the health of Alfresco through the use of Hyperic monitoring plugins. On a side note, it is amazing how the open source application eco-system is growing. There is great value in bringing the top tier open source applications such as Alfresco, Hyperic, Mule and JBoss together to provide enterprise caliber solutions at a fraction of the cost.

    posted by Matt Van Bergen

    Upcoming Posts

    February 18, 2008 7:27 PM

    I have a few drafts in progress for upcoming posts. Here is a preview of what is to come. Alfresco - Custom Regex Metadata Extractor Alfresco - Custom Association Extractor Alfresco - Custom XSL Transformer

    posted by Shane Johnson

    Day Communique - Alternate to Request Filters

    February 18, 2008 7:17 PM

    For those of you who work with CQ, you will know that you aren’t building and deploying your own WAR. Instead, you can only add artifacts (classes, JARs, etc) to the repository. Continuing with that notion, you aren’t supposed to modify the author/publish WAR files at all. This means you can’t, for example, add a servlet filter via the web.xml file. However, I find the use of filters to be indispensable, especially for things like single sign on. There is a CQ alternative though. (more…)

    posted by Shane Johnson

    Presenting at Alfresco Chicago MeetUp on Feb. 12th

    February 8, 2008 5:35 PM

    The Alfresco Community Meetup is a chance to learn about Alfresco and talk to your peers about how they are using Alfresco in their business space.    CityTech will be teaming with Matria Healthcare to present a use case of how Alfresco is being used to solve their business challenges.

    posted by Jeff Brown

    Grails 1.0 Released

    February 5, 2008 2:59 PM

    Sporting a new design for their website, the Grails team today announced that Grails 1.0 has been officially released. A lot of excitement is building up around Groovy and its counterpart web framework Grails these days and I see why as its fun to use and you become way more productive as a developer. Grails takes a lot of cues from Ruby on Rails but also gives the ability to leverage your existing Java knowledge and JEE environment.

    posted by Bill Gloff

    Alfresco Advanced Workflow and task due dates.

    February 4, 2008 3:03 PM

    I recently developed a workflow where the requirements called to dynamically assign task due dates relative to the task creation date. For example, a particular task was required to automatically have a due date assigned that is 3 business days from the date the task is created.

    posted by Jeff Brown

    FlexCamp Chicago

    January 19, 2008 11:30 AM

    Yesterday I attended FlexCamp Chicago. It’s a one day mini conference on Adobe Flex. Most of the speakers were from Digital Primates. They’re the authors of the book “Adobe Flex 2: Training from the Source“.

    posted by Bill Gloff

    Coming soon…

    January 17, 2008 6:08 AM

    Well, I suppose I need to start participating in the whole blog scene now. I am pleased to say that I was invited to speak at this year’s TheServerSide Java Symposium. It is a wonderful opportunity and I’m looking forward to it with great enthusiasm. While I plan to share some insights on my presentation soon, you can view the abstract here. I have a few drafts prepared on topics revolving around Alfresco and Day Communique, and I will be publishing them over the next week or so.

    posted by Shane Johnson

    CityTech to Speak at 2008 TheServerSide Java Symposium

    January 12, 2008 7:17 PM

    Our very own Shane Johnson has been asked to present at the 2008 TheServerSide Java Symposium in Las Vegas on Friday, March 28. Shane's session will address the emergence of web content management and portal integrations specifically discussing his experience integrating Day's Communiqué WCM and BEA's WebLogic Portal. He will share his hands-on experience in web content management and portal integration by using a case study as the basis of the presentation.

    posted by Matt Van Bergen
Top