I just returned from CTIA’s Fall 2009 conference in San Diego, CA. The event has a focus on several key area of interest for me: technology, wireless/mobile platforms, and during this conference health care. Given all that I decided to make the trak out to San Siego and check out the conference. It was a great trip for a number of reasons and I learned some surprising things.

Logistics were fairly simple – I was going regular coach and staying in a Courtyard Marriott just outside the Gaslamp district (the “old” section of San Diego).  I flew US Airways out there and United back. I sure liked the seats on the US Airways plane – an Airbus A320 plane – better than United. On both flights I had the option of shelling out $7 for a crummy sandwich.

I highly recommend staying at the hotel I used, the Courtyard Marriott on Broadway. It is a great location: walking distance to both the Gaslamp District and the Padres stadium – and of course the convention center. Since it is just outside the historic center you get a break on the rates, but the building itself is a very old building – a bank in fact and this gives it some character.

So this isn’t a travel site so now to the conference. It was a bit smaller than I expected, but there were some interesting things. I’ll summarize these quickly in a bullet list:

  • When in San Diego go to the Yard House – it is on Broadway and has many many beers on tap – 175 of them. Yum
  • Samsung (“Moment”) and Motorola (Cliq) showed off next generation Android phones – very impressive. The most impressive thing to me was the Bluetooth functions. As with iPhone I thought Bluetooth was not in for the OS. Sorry iPhone lovers – I’ll give iPhone 1/2 support for bluetooth…enough to do well er nothing much for me. It remains to be seen what the support really is on these phones (SPP, OBEX?) . I did successfully pair a phone with my b-berry and I have pinged people at both companies to get more details.
  • Wipjam: Sound kinky but this session was the best of the conference I think. A twist on a panel session, the talks here were billed as the “unpanel” talks (“anti-panel” {reminds me of anti-matter} would be better). Any talk that starts with serious threats to de-tie people works for me, but I think it did fall a bit short of the “developer” focus at this conference since there were a lot of upper execs that might have been coders a while back but obviously are no longer.
  • Smart Grids: Ok – has nothing to do with me, but it was really interesting to hear about the developments in the energy and power control industry.
  • Mobile Sorcery: These guys make a C/C++ mobile application development and porting platform. They’ve gone open-source. Looks interesting – I met the head of the company. A pretty funny guy with some good insights on mobile development. I think you write a base in c/C++ and then the tools will port out to different platforms like J2ME, Symbian, Android, etc.
  • The keynotes were ok, but I’m not much for all that kind of stuff. The most interesting was actually the FCC chairman giving a bunch of stats on mobile use.  I didn’t get all the stats, but the one I remember is that every day 4.5 billion SMS messages are sent in the US. That’s just amazing.
  • Eclipse Pulsar is getting better so this is something to keep an eye on. I met the head of that project and talked to him for a bit.
  • There were some sessions on healthcare applications and requirements, but really if you are in that space then they were pretty boring and “no duh” kind of stuff. The last event – the “fund fest” – awarded a project developing an M2M glucometer as the best commercial idea. Hmmm….their business model will be to make money on the strips…ummm….and the guy running the project was the White House appointee to write the White House official report on healthcare and how to fix it. I guess he missed the whole shift away from strips to A1C testing.

I’m sure I’ll find some more things that were cool at the event and add them in here, but that’s what I can get down quickly on paper. Sorry I didn’t take too many pics. Overall a good conference, but I guess I prefer more developer focused conferences where there is coding. Another bummer was the limited WiFI support…kind of stupid for a conference about wireless to not have wireless everywhere.

Kudos to the Courtyard Marriott (530 Broadway). I have to say the staff is really friendly and had great tips on restaurants. I don’t think I’ve ever thought that about any hotel I’ve stayed at really. Sometimes they are nice – but these guys were great.

What guy wouldn’t jump and run to the store when their wife asks if it would be ok to have home theater seating in their living room? Cupholders, black leather, reclining seats, and no pillows! Well I guess I’m one of those guys :-)

So off we went to the La-Z-Boy store and sure enough they had some really great – albeit expensive stuff – but what the lazy1heck this is going to be football heaven. The product is the La-Z-Boy Matinee Home Theater seating.  So we ordered the stuff and 2 months later it arrived. Fantastic! The pieces arrived in good shape and right when they said they would arrive. Pretty nice; a great buying experience.

Things were great for a couple of weeks but then I started to notice problems. The wedge pieces have armrests – makes sense – so that when you recline there is somewhere to put your elbow. What I noticed was that the place where you put your elbow was starting to push in. Fearing some kind of defect I immediately called La-Z-Boy and demanded a replacement. They agreed and ordered replacement units:  no charge and no question!

Of course it would take another 4-6 weeks to get the units. So we waited…sure enough the stuff arrived and a technician replaced them. One curious thing was that the guy had to rip the cup trays out (with a screwdriver) and glue them into the new units lazy2himself. The guy luckily had a tube of epoxy glue in the van, but he had no way to clamp the trays in. I had to pile paint cans and dumb-bells up on them to hold them down tight while the glue dried overnight. Well – problem resolved I hoped.

La-Z-Boy wanted to leave the old pieces here for me to throw away – strange but ok.. I wanted to see why this problem happened anyway – was it bad assembly or something worse. Was it a defect in my pieces or was it a design defect?

I did a little dissecting project and what I found was really amazing. The area in question is the wedge piece armrest. See the pic below for the exact location.

lazy3

In my basement I flipped the unit upside down and cut through the felt on the bottom. Straight off I was a bit shocked. The piece is plywood and some bracing. The flat back of the unit is made out of shirt cardboard. I could not see the top because there was a plywood brace across the top. Naturally I was thinking that was the actual top, but I could not see any signs of damlazy5age or movement. Then I decided to cut through the leather on top.  What I found just amazed me. The top of the piece is also made out of shirt cardboard – right where your elbow goes. So you have the leather, a thin piece of foam, and then crappy cardboard. There is nothing but air supporting that cardboard.

Here’s a detail shot of the cardboard to give you a sense of how cheap this stuff really is:

lazy6That’s just amazing to see I think. One of these pieces is about $1200 USD so by no means is this a low-end piece of furniture. You can see in this pic that the cardboard comes up the back side and wraps across the place where your arm would rest. Any pressure at all and this will start to sag in – a no brainer. This is a serious design flaw. It is so bad that it cannot have been made by accident. Any slight testing in the shop would show that this is not going to work and given La-Z-Boy’s “expertise” in recliner systems this can only be a cost vs. quality gamble that people will not notice until warranties run out.

I’ve gone back and google’d the web and not found too many people mentioning this problem so either I’m the only idiot to buy this junk or other people have not had the furniture long enough to develop the problem.I thought I would at least write this post to give a shout out to people considering this furniture. If you considering this furniture just go into the store, recline, and lean on your elbow and you will feel the cave in starting.

I’m going to give a call into La-Z-Boy and see if I can get my money back. I think this is a design flaw that should either be corrected or I should get my money back. I’ll follow up with their response.

I’ve been using Alfresco for quite some time as a document management and “collaboration” platform. Alfresco works with documents as one would expect, but as a collaboration tool it lacks many of the things we would like to have. We are looking to bring in things like blogging, wiki-ish functions, and more functions that expose what other people are working on and contributing to the repository. We would also like to have some way to see things happening in other places – for example commits to our SVN repos. Let’s see what’s new in the 3.2 community release.

Read the rest of this entry »

us_soccerI’ve played soccer all my life (yes the sport is very popular in America!). The US national team beat the #1 team in the world tonight. A huge win over Spain in the Confederations Cup.I almost knocked over the dinner table jumping up  when the report came over the news.

Here’s the best link: http://soccernet.espn.go.com/report?id=270153&cc=5901

That’s just fantastic! Great job guys! Spain is a great side; they haven’t been scored on in like 17 games and has won 35 straight. I didn’t even watch the game – didn’t even record it.

I sure hope it gets re-broadcast. The final is this weekend in South Africa.

I’ve used VMWare on and off ever since it first came out. Both the server and workstations products revolutionized the data center and brought huge power to a developer. These days I’m back into more pure software development so a desktop virtualization product that I can use to have multiple OS configurations for running servers, databases, or experimental tool configurations is a must have. My base OS is Win XP Pro running on an IBM ThinkPad T61p.

I’ve had the latest version of VMWare’s free Server product running on my laptop, but I’ve had it. I use my laptop as a…well a laptop and it seems that VMWare Server is not capable of playing nicely and EMC seems rather uninterested in fixing it. What’s the issue? If you take a laptop in and out of standby every 10th time (an average estimate) you will get the glorious BSOD. I’ve poked around the internet and forums and stuff without coming up with a solution. Even a complete disable of the VMWare services did not stop this issue. Before you say “Hey Beren you idiot it must be something else.”; I uninstalled the product and not a single BSOD since in about 4 weeks.

No BSODs == good

No VMs == bad Read the rest of this entry »

My son Dior and I started Shotokan “hard-style”  karate last fall. If you are not familiar with the martial arts, Shotokan is the traditional form of Karate developed on the isalnd of Okinawa and popularized by Gichin Funakoshi. There are many places to read about what IMG_1459_smthis style of Karate is so I’m not going to go into it, but I will say is that it emphasizes strength, speed, and power. The idea is take the opponent down in a single blow. It also emphasizes a code of ethics of non-violence and respect.

I’m very proud of our advancement to the next belts; blue for me and yellow for Dior. I’ve been in sports at many levels all the way thru college and semi-pro stuff. Karate is hard stuff – physically demanding.

It is a very difficult test to pass and in the world of Shotokan I know our Sensei is one of the best and most respected in the Eastern USA. Having never done martial arts before, I’ve found this to be a very fun and challenging activity. Highly recommended, but it is a real commitment.

We are going for black belts! We’ll see how it goes. Right now I’m going to go soak my feet.

All of us that are in a global setting – or even a national setting here in the wide-open USA – are using some kind of near real time messaging stuff…like instant messaging or SMS.I’m going to generally call any near real time messaging tool “IM” so bear with me. I think they are all cool – but there’s a backwash effect too.

There’s no question that IM can be cool…it can be fast…and it can keep poeple together, but there’s a dark side to IM. You know what I’m talking about. You’ve been the protagonist and you’ve probably been the antagonist too. Have you been up late nights banging on the keyboard? Are you trying to code extra fast just to become a faster typer? Are you getting out of your chair and punching things in reaction to that rapid “bing….bing…bing”. Are you practicing those tight quips and short phrases? If so – then hey take a deep breath!

What I’ve noticed in my 5+ years using IM tools is that they can be very good when working with someone you know and trust, but with people that you do not know as well they can have an unexpected impact: anger…really deep anger. Why? Should this be a surprise? Not really.

If you walked into a room of people and pointed out someone you don’t know that well and stared barking out statements in short phrased statements with not a lot of context and not a lot of opportunity for the victim to think wouldn’t that piss you off? Of course! Add in the additional issue that the neophyte probably can’t type as fast and doesn’t know all the little graffiti tricks…and you’ll have one very irritated colleague. That’s what can happen with IM.

So overall is IM a good thing? Yeah I think so – but just remember who you are “bing-ing” at. Take a deep breath if you are getting upset.  Relax. Think about the person at the other end…especially if they are not a veteran IM’er.

Any comments? Thoughts?

PS: I write this mostly for myself…now I have a good place to go and remind myself about how to not behave :-)

All programmers have their set of tools that keep them happy and moving ahead. I work with a lot of technologies: PHP, Java SE, Java ME, Drupal, Oracle, J2EE, .NET, and a few others. I get lots of questions from friends and colleagues about what tools I’m using. Over time I’ve put together a decent toolbox of goto tools that I keep around. Here’s my Top 10 tools and what I’m doing with them:

  • Eclipse: Even if you are not a Java programmer, Eclipse is a must have. The plugin/RCP concept of Eclipse is a winner. Programming plugins for just about any language are available in Eclipse and usually are free. Besides Java I use Aptana for PHP and Python, and I also use the C++ plugins from time to time. Eclipse isn’t always good – for example you can get hassles with updating and there are better stand-alone programming tools (a great example is IntelliJ IDEA), but as a flexible and adaptable tool you have to give this project some real credit.
  • Virtual CloneDrive: It seems like I’m constantly downloading ISO files for various reasons. Virtual CloneDrive is a free and reliable tool for mounting ISO files on your Windows machine. This tool works great, is small and compact, and best of all is free.
  • Skype: you’re always either running a team or working with a team. I’ve used a lot of IM clients, but no client has all the features that Skype has: audio, video, chat, group versions of all of those things, saved history for chat, and free. Runs on all major OS’s as well. I guess gTalk is a close runner up here.
  • Altova UModel: UML has never really achieved its hype, but I like class diagrams and sequence diagrams. If you are looking for a tool that can work with both Java and .NET and can both create code and reverse engineer diagrams from code then this is a good basic tool. This tool easily reverse engineers Java code to UML class models. There are tools with more features, but it is hard to find a better price/feature ratio.
  • PuTTy: A must have package for copying files and securly logging into remote servers. no so much on Windows, but everywhere else this is a must have. Nearly every hosting provider for PHP and Python systems will require the use of this tool for something.
  • ImgBurn: I’m always downloading stuff and giving it to other people. It would be great to not have to burn up (ha ha no pun intended) plastic on disks, but the reality is that you have to. ImgBurn is a great (free!) program to quickly create CD’s and DVD’s. Hands down better than the crap that is probably installed on your machine by the manufacturer (in my case the “RecordNow package…which usually means “RecordEventually if the sun, moon, venus ,and saturn align.).
  • Tortoise/SVN: Subversion as a code management system is fantastic and tortiose add Windows desktop integration. A great fit, free, reliable, and supported. Both are a great combination.
  • Firefox+Plugins (Firebug, Fireshot, DOMInspector): Ok we all know Firefox is a browser, but with the right plugins it becomes an indispensable tool for a developer debugging issues in a web site. I listed a few of my favorite plugins, but there are probably a lot more that I use when the occasion requires. I didn’t hyperlink these – its pretty easy to figure out if you know Firefox…
  • Adobe Photoshop CS4: No doubt this is a big ticket item and there are some decent free/open source pacakges out there, but in my mind this is one tool to chuck some money at if you have the $$$ to spare. This is espeically true for the programmer. Most of us are graphically challenged so we need all the help we can get :-)
  • Notepad++: This is a new one for me, but this is really a gem. Notepad on steroids with a plugin model. That’s great. For me the ability to add in a hexadecimal editor that can display the hex, allow you to edit it, and also show you the ASCII equivalent. That’s priceless if you need to look at byte[] ’s coming off sensors and/or debug issues with binary files. Cool – and free.

I kept this pretty focused on utility programs. If I missed something leave a comment.

It has been a little over one year since I picked up my Turbo X. A pretty decent set of timing that Saab have all but announced the purchase of their company by Swedish super-car designer and producer Koenigsegg (say that one 5 times fast! I’m going with K-Saab). As a Saab fan this is pretty much the best case for what could happen to Saab. Getting picked up by a design focused Sewdish firm – wow. Imagine the cars that could be made.  All the Saab fans out there must really be happy. I know I am.

As I said this is 1 full year withbday1 my car. With 20,000 miles on her I’m a very happy owner. No mechanical issues, smooth riding, and decent mileage for a car of this type. Now if only PENN-DOT and the birds could be a bit nicer :-) To celebrate the occasion I decided to give my car the “Meguiar’s Treatment”, that is a full clay bar treatment. Washing with NXT (I’ve used NXT wash and wax throughout the first year), Meguiar’s clay bar kit with their quick detail as a lubricant, and then a full tap and max job with Meguiar’s Cleaner Wax. I’ll re-wax in a couple of weeks with NXT. Judge for yourself, here’s a few pics of the car. If you zoom in on the hood you can see this is a working car – no toy. The DOT in PA is really brutal – they do not use sand in the winter. They use crushed blue stone and this really is a much more aggressive abrasive than the normal sand. The wide plastic faring on the front of the car is particularly beat up.bday2

I plan to use a paint kit from Saab to re-paint the nicks in the hood, we’ll see how that goes.

I’m pretty impressed with the Meguiar’s clay kit. The car is glass smooth…maybe even smoother than that. It is hard to describe how smooth. More like a polished gem or piece of crystal. End to end the job was about 5 hours. Taping took the longest. There must be a better way, but the results are pretty good I think.

Has the web become so pervasive that thick client applications are obsolete? Of course we all use a few thick client applications – Office, Photoshop, Nero,  and CCleaner are good examples, but how many of us actually still have the tools at hand to efficiently code an app up from scratch. I need to write a thick client application that will serve as a utility tool for my programming work with mobile applications and sensor data streams. It has been a long time since I had to do this since I’m primarily in the internet space. Since I do most things in Java that is where I’ll start.

In the Java space there’s a pretty extensive list of tools out there, but in my mind I think there are three tools to check out:

  • Eclipse
  • JetBrains IntelliJ
  • NetBeans

Sure there are other tools – but these are really the most widely used and respected tools out there. Two of these are open source and one is a commercial tool. If you’ve read other posts of mine you will know that I am an Eclipse user, but I’ll try to be fair. I’m looking for some pretty basic requirements:

  • IDE Must run on Windows and Linux
  • Editor must have code lookup features, code highlighting, and all that kind of stuff
  • Strong set of examples, documentation, and/or tutorials
  • GUI designer and drag-drop widget layout

Eclipse 3.4

This is going to be quite short…sorry Eclipse you are out. It seems amazing to me, but Eclipse seems to have “lost” its Java client designer tools called “VPE”. They have been left behind with Eclipse 3.2 and the project seems dead. It is really quite amazing that this is the case since for quite a long time Eclipse and NetBeans were competing head to head with Swing vs. SWT.

NetBeans 6.7

I started using NetBeans because they have some nice J2ME tools. Similarly their tools for Java client creation are pretty nice. A complete IDE with a great set of examples and a sophisticated GUI toolset. NetBeans is simple to install and simple to get going…amazingly better probably (or maybe simpler is a better description) than Eclipse.

Once you are in NetbBeans there is a wizard approach to building an application that gets you going. What is really nice about NetBeans is that the GUI pallents include a lot of components for menus, dialogs, the typical screen gadgets, and layouts. Really nice. You’ll see this is the screen shot below:

netbeans1The interface is pretty nice and it is responsive. If you notice that hint bar just above the GUI screen here – this is pretty cool. It really helps the newbie (and probably annoys the crap out of the long time user). There’s a source and design button, if you switch to source you can edit the code directly, but…there’s always a but. You’ll notice regions of code that are “generated”. If you edit these and switch back and forth to deign and source views your changes will be obliterated.

Ok – I’ll admit that I’m a control freak. I hate that…I always have. Remember Tango…or NetObjects Fusion, or Dreamweaver 1.0…ugh. Alwasy messing up my code :-( . In this case I guess this might be ok since I really am just starting and building quick and dirty apps, but for the future this is something to watch out for.

Other things I like:

  • Building and managing configurations is pretty simple and powerful
  • There’s a decent library manager – this is critical to Java and maintaining your sanity
  • There’s decent support for refactoring, versioning with subversion, and debugging/profiling
  • Tons of plugins for different kinds of development.

Overall a decent tool with a lot of advanced features in the GUI designer. I think this not only is one of the best GUI designers in Java, but it really does move up into the big leagues and challenge Visual Studio tools from Microsoft.

IntelliJIDEA 8.1

The guys at JetBrains have been at it for quite a while. Prior to Eclipse I was using IntelliJ for Java and J2EE development. I have not looked at it in quite a while, but it was a no brainer to go back to this tool and take a look. This is a commercial tool and it will run you $299 to use it for commercial purposes.

IDEA is a full featured Java development environment with all the bells and whistles. The shot below you can see is very similar to NetBeans, but I think the UI is clearer and more efficient.

idea-1

There are also a lot of sliders and tabbing on the menus that really make getting around your project very easy. The GUI designer was pretty intuitive, after a quick on-line tutorial for about 5 minutes I was then able to get in and lay things out with a decent layout manager (jFormsGoodies) assign actions and action listeners, and then get into my real task of writing the logic.

Refactoring has always been a big part of why IntelliJ is cool and it still is. With a click you can change class names, packages, method signatures extract interfaces, and a bunch of other things. Another powerful tool for grinding out code is the ALT-INSERT key combination. Hitting that key combination will bring up a pop-up menu with a idea-3bunch of really nice insert options to generate common code snippets like getters/setters, the toString() method for the current class and more.

IntelliJ also includes functions to help the coder optimize code: import optimization, code analyzers, reformat functions, and more. These can really help turn a prototype into a polished piece of software.  Here’s a quick view of what that looks like:

idea-5

What’s the deal?

For general Java development with a GUI designer it seems there are two excellent choices that are pretty close. It will be interesting to see what happens with Eclipse and Java development. It seems that Eclipse has left the space to NetBeans and IntelliJ. For me I prefer IntelliJ. I think it is easier to use, has a cleaner interface, and has a lot of functions to help me improve my code. It is very close however and many people will find the $299 a barrier. Either choice is a good one. After I get done with this project I’ll take have to take a look at mobile development iwth both of these tools. NetBeans is the long-time player there so it will be interesting to see if IntelliJ can compete.