Wednesday, July 14, 2010

Microsoft Office Has one Cool Feature

I know that Microsoft Outlook has many pundits. I'm one of them. But that mail client has one thing going for it. When I type "doe snot" when I really meant "does not" -- Outlook would catch the typo and put the "s" where it belonged. Mind you, I don't think this is a redeeming feature.

Wednesday, April 21, 2010

Eclipse Search in Debug View

Well, I was debugging Glassfish via a remote connection and needed to find a particular thread to pause. Of course I was looking for the http worker threads. Scanning that long list of threads is just to painful. So I thought, "Can I search this?" I hit F5, and low-n-behold a search window comes up listing the threads. I type "*HttpWorkerThread", select one, and am returned to the Debug view with the same thread selected.

Thank you Eclipse. Thank you for just working -- the way software should.

Thursday, January 28, 2010

The Downside of Touch Screen Devices

The downside of touch devices is that my autonomic response is evolving to interact with every gadgets screen. I just tried swiping my finger across the screen of my 5G iPod.

I'll be glad when the family budget allows me to upgrade all of the iPods and my wife's phone to a touch screen. Maybe by then Citizen watch will have a touchscreen to replace those buttons on the side of my current model. I'm sure you can think of something that needs a touch screen. It might be interesting to play with one of those new iPads. Every time I've used a touch screen computer in the past I found it lacking the precision I desire. The precision that I'm used to from a mouse.

Tuesday, October 6, 2009

Continuous Integration

I've worked in environments with continuous integration for nine years. I introduced the concept at 2 of the 4 companies I worked at over that time. Hopefully everyone developing in an environment supported by continuous integration already takes build pass/fail seriously. If not, I suggest a moment of personal reflection upon your projects continuous integration server. I suggest that everyone might look at the health across multiple projects and multiple builds to assess how well they are doing to keep the projects green. What is your rough estimate of build success on the builds that your commits triggered? In Team City, find the “My Changes” tab at the top. Expand all three (at least I have three) sections. In CruiseControl, hmmm? I'm not sure anymore.

I am not trying to incite any sort of competition over who can reach 100% triggered build success. I only suggest that we might think about our personal goals. We might challenge ourselves to never cause a build failure. To aspire to 100% success is wrong. There are going to be a few "oops". There are going to be some environment problems.

Project management should always be looking at the percentage of failed builds. Also looking at the volume of commits and the size of commits. Particularly just prior to a release. Continuous integration is a great tool like any other -- the value derived is based on how it is used.

Wednesday, September 30, 2009

Mixing JSP 2.0 with GWT

I've just overcome a pesky litle problem between JSP 2.0 and GWT. I have my JSPs in xml format: <jsp:root ...>. You are likely aware that this is a bit aggressive about removing whitespace from the resulting html. This includes the transformation of empty body tags into bodyless tags. Ergo this
<div id="footer"></div>
becomes this
<div id="footer"/>

Now that second one was confusing firefox on my linux workstation. Likely on your platform as well. This is just like the old days when we fought with <script src="thefile.js" /> tags to make sure they keep their separate closing tag.

The solution is just to drop a comment into the previously empty body
<div id="footer"><![CDATA[<!-- -->]]></div>

Thank you Ramon, for pointing me down the path. It's been a long time away from servlet code. It should not have taken me as long as it did to remember this problem.

Sunday, September 6, 2009

Android Book Mobile (1 week later)

It's been a great first week for ABM on the market. Over 1,400 downloads and still carrying a 4 star rating! Here is a screen shot of the Android Market -- Developer Console. It shows all the applications you have published with their current stats.

One statistic that would be great if I knew how often people are using it. If I had my own server-side to the application I could gather that statistic myself. But alas, the data being stored at books.google.com, and the reviews coming from goodreads.com, I don't know how much they are using it. I fully expect someone will tell me their phone ran out of memory trying to load their full library.

Saturday, August 29, 2009

Android Book Mobile

I entered my Android application into the Android Developer Challenge II. You can read more about what "Book Mobile" does and my thoughts behind the name over at the product website.
  • I've integrated the Google book api into Android.
  • I use the GoodReads api to get reviews for books.
  • I integrated with zxing for barcode scanning to read ISBNs.
  • Because of this missing feature in Android I had to draft my own login dialog for users to enter their google account credentials.
Now for the frustrating part. How they setup the registration/entry process to the ADC means if I want my application available on the market, I have to repackage. This means changing the AndroidManifest.xml and refactoring all the code to have a new package structure. That doesn't seem so bad, right?