Sunday, April 29, 2007

out with the old, in with the new

From a 1997 Dodge Dakota extended cab pickup (photo from the Internet and not of my truck)...


To a a 2001 Saab 9-3 Viggen convertible....


She's one of 730 Viggen convertibles made that year, and only 1300 total from 1999 - 2002. The Viggen package includes upgraded engine and suspension components. The end result: a turbo charged front wheel drive 4-cylinder that is EPA rated at 30mpg highway but it has 230 hp and 258 ft/lb of torque! That's the same horsepower as my Dakota with a 5.2L V8, but with double the gas mileage. And oh so pretty. :-)

I picked it up yesterday and I still can't believe it's mine.

Wednesday, April 25, 2007

Fresh perspectives: Craig Wiseman

Back last Fall there was a discussion brewing about the perception that Notes was dead. At that time I questioned Domino's place at the table and proposed that it was perhaps Domino that was actually headed for extinction. Since then we've had a Lotusphere and I'm even more convinced that Domino is being shunned in favor of Websphere.

I'm not the only one who has noticed this trend. Craig Wiseman also picked up on it, and wrote a very good and slightly tongue-in-cheek analysis of why we should call the post-8 version of Domino, Websphere Lite.
... We have problems. Seems like IBM would like to have a single message for developers, sales folks, and customers. Domino is an excellent product that has a history of evolving, and there are lots of open source/easily available tools. IBM's long term app server seems way too big and complicated to fit small customers.

So how do we solve it? We get two versions of Websphere, Websphere Lite and Websphere Gargantua.

It gets better from there. Unlike me Craig doesn't see doom and gloom in Domino's future. It'll be interesting to see which vision, if either, is closest to reality. I'll go pop some popcorn and watch the spectacle, you go read Craig's blog. :-)

Friday, April 20, 2007

Getting ubuntu 7.0.4

I've tried a number of servers and finally found the torrent list on Ubuntu's site. I just wanted to pass that along in case anyone else was having any problems downloading it. :-)

Saturday, April 14, 2007

is dogfooding always a good thing?

1. dogfooding (to dogfood)




In a nutshell, dogfooding means "using your own product". A product which is being dogfooded tends to be a lot more polished. When a normal user is annoyed by the product, they can't do anything about it. But when a developer is annoyed by the product, they can stop what they are doing and make the product less annoying.

The above is from Urban Dictionary, and I think it's safe to say we're all familiar with this concept. Dogfooding is generally regarded as a good thing since it allows developers to experience customer pains first hand. But dogfooding has another side beyond just development. What happens when when through the process of dogfooding you become one of your own largest customers? How do you balance your own needs against those of the rest of your customers? And how do you get your developers in a mindset where they are focused externally and not just internally?

According to Lotus sources about half of Domino's customer base is SMB. I have seen different people from Lotus define that as 1000 user and 5000 users. There is a tremendous problem with this definition. I've discussed it before, but it's relevant to this conversation. According to the US Small Business Administration SMB's may vary from 100 to 1500 employees depending on the industry. The average works out to 500. The European Union defines a SMB as under 400 employees. More importantly, SMB's employ over 97% of the people in the US and account for over 99% of the businesses. IBM's definition is so far out of line with the rest of the world it's absurd, and this disconnect is the source of a lot of their perception problems.

When adding functionality to the Lotus product line IBM's focus is on big companies and large environments because they are one. First and foremost they have to make sure their tools work for themselves. I get that and it's certainly understandable, it's just being done in a way that has alienated a large portion of their customers: the SMB's.

Since IBM took over Lotus the evolution of the product set has been schizophrenic. From a "two lane highway" message to spinning off a competing product line (Workplace), to mostly dismantling that effort and assigning that product's name as the overarching "strategy" moniker for all messaging and collaboration products -- it's been a real rollercoaster. It's been almost as difficult to keep up with as the renaming of the server lines that happens every few years. (It'll always be an AS/400 dammit!)

After Workplace was largely disbanded as a product line portions of it started appearing under the guise of Domino functionality. All of a sudden we started hearing about integrating Activity Explorer with Notes. Workplace Designer was rebranded as Lotus Component Designer and would allow consumption of Domino data with either a Notes client or web interface. In separate news the Sametime Realtime Community Gateway was going to allow federation to several popular public IM networks. The Domino community rejoiced. We were finally first-class citizens alongside the Websphere crowd! Then the other shoe dropped.

None of the new functionality uses Domino. Activity Explorer is deployed on Websphere and DB2. The Sametime RTC Gateway is as well. Lotus Component Designer can't deploy to Domino, you have to deploy to Websphere Portal. The only real interface is web-based, but you can wire it into a composite application in Notes 8 -- provided you use the Standard (Eclipse-derived) client, which comes with its own huge list of caveats. The early buzz changed to cries of outrage.

IBM kept trying to spin all this positively. The justification given for Activity Explorer and the Sametime RTC Gateway using a non-Domino underpinning is scalability. Allowing two different backends was considered, but written off as too expensive. During the discussion about the Sametime RTC Gateway we were told it had to scale to "carrier grade deployments" of the VoIP integration. Okay, I'll bite. How many SMB's out there (by a standard definition and not IBM's) are telecommunications carriers? If there are any, how many are deploying Sametime for VoIP?

Someone at IBM finally realized that SMB's couldn't afford Websphere Portal so IBM released Websphere Portal Express. It promises under 60 minutes installation time and a more attractive price point. I've not installed it so I can't comment on that, but the price I saw was $40,000. If that's more affordable I'm glad I don't know what the non-Express version costs. It shows yet another disconnect between IBM and their customers.

Just when I thought the news for SMB's couldn't get any more depressing, at Lotusphere 2007 Mike Rhodin announced Connections. There is a lot of compelling functionality and I was really excited about it, so I went on a fact finding mission. I wanted to know how it is licensed and how is it deployed. It's been three months since Lotusphere and there is no information on the Connections site so I started contacting people inside Lotus. So far I've been through four contacts and as soon as I say "about 200 users" my phone calls and e-mails aren't returned. I don't take the dismissal personally, but it does tell me that Connections isn't intended for SMB's.

Coming full circle, I think in this case dogfooding has hurt IBM. They are releasing exciting products with amazing features and functionality. They're just doing so on an infrastructure that's too heavy for the average SMB to justify, and at a price point that's unreachable for them as well. I encourage IBM to continue the practice of dogfooding, but I also encourage them to use the experience wisely. Let the developers fix the things they find wrong. Listen to all your customers and do the things they ask you to. Don't be afraid to try another flavor, possibly something in the "lean" or "light" area, or different packaging. Hint: licensing (i.e. "Express") doesn't go far enough.

N.B. I intentionally left out links to references to protect both the innocent and the guilty.

Friday, April 13, 2007

Dining With Friends - Greek Menu is set

We finalized the menu last weekend:
  1. Marinated Meatballs
  2. Spinach Pie
  3. Eggplant Moussaka
  4. Beet Salad
  5. Tomato and Cucumber Salad with Feta Cheese
  6. Lamb with Orzo
  7. Baked Lima Beans
  8. Greek Chicken
  9. Greek Potatoes
  10. Plaki
  11. Dolmades
  12. Assorted olives
The work involved in paring it down to just this list was staggering. Starting in January Myron sifted through four cookbooks and numerous websites and collected anywhere from 2 to 8 recipes for more than 20 dishes. Once we decided on a dish we reviewed all the recipes and decided on the one recipe that sounded the most interesting that still retained an authentic feeling.

From here I take the recipes and retype them into a more friendly format, multiplying out the ingredients as I go. Then I take all the ingredients, plug them into Excel, and add it all up to get a total of quantities across all the dishes. That gives us our master shopping list. Then I figure out when the various components need to be done and work out a schedule for what gets done when. It's a lot of prep work and coordination, but it's fun.

In case you missed my original post the party is on Saturday, May 5th. If you want to visit Charleston, SC, drop me a line and I'll give you the address. :-)

Wednesday, April 11, 2007

note to self...

When moving an existing Domino server from one piece of hardware to another, be sure to disable or deactivate the old IP. It saves you lots of time tearing your hair out because the connectivity is sporadic. :-p

SNTT - Installing and configuring ODBC drivers for Domino on Red Hat Enterprise Linux

This has been a long time coming, but I'm finally ready to move my Domino application server to Linux. Nearly every application I've written in Notes uses LC LSX to access data from our iSeries ERP server. My current Domino application server is also an an iSeries, so I can use the native DB2 connectivity built in. For Linux I need to configure ODBC, and I really didn't relish the idea of going through all the previous hell from my proof of concept.

Getting the DataDirect 5.2 drivers

I contacted Lotus support to see if there was a more recent version of the DataDirect ODBC drivers than the 5.1 version and layers of hotfixes I used previously. The good news is there is a newer release! The Lotus OEM branded DataDirect 5.2 drivers are included with Domino 6.5.6, which was released on March 27, 2007. However they are not available as a stand-alone download. You have to install the server to get them, and you must select the Enterprise server. Even then the drivers aren't installed, they're just extracted from the installation image.

Installing the drivers

Now that you've installed Domino 6.5.6 Enterprise you have to track down the drivers. They're in /opt/lotus/notes/6560/linux/, and you install them by executing the file EIODBClinux and following the on screen prompts. The rest of this documentation assumes you accepted all the default values.

Configuration

If you've worked with the Linux ODBC drivers in the past you probably know what to do from here. If you haven't, configuring the drivers means getting your hands a little dirty. First up, environment variables.

Environment variables in RHEL are kept in the file /etc/profile and you have to be logged in as root to modify it. I always log into my RHEL servers with my Notes user account, so I go to a Terminal prompt and use su to switch to the root user. Then I type gedit /etc/profile to open the file in the Gnome Editor, which I like a billion times better than vi. In the profile file you will see a line like this:

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC

Add the following before this line:

LANG=C
export LANG

ODBCINI = /opt/odbc/odbc.ini
LD_LIBRARY_PATH=/opt/ibm/lotus/notes/latest/linux:/opt/odbc:/opt/odbc/lib
NUI_NOTESDIR=/opt/ibm/lotus
LOTUS=/opt/ibm/lotus/
Notes_ExecDirectory=/opt/ibm/lotus/notes/latest/linux/
LIBPATH=$Notes_ExecDirectory
export ODBCINI LD_LIBRARY_PATH NUI_NOTESDIR LOTUS Notes_ExecDirectory
export LIBPATH

PATH=$PATH:/opt/ibm/lotus/notes/latest/linux/res/$LANG:/$Notes_ExecDirectory
PATH=$PATH:/local/notesdata

I split the export and PATH lines for readability, you can certainly put them all one line if you like. Following the second PATH line above should be the default export line I listed previously. When you're finished, save and close the profile file.

Next up, configuring the ODBC driver. All the configuration is done in the odbc.ini file, which if you were paying attention you might have guessed is in /opt/odbc. Edit the file by using gedit /opt/odbc/odbc.ini . The odbc.ini file is divided into several sections. The [ODBC Data Sources] section lists all the configured system DSN's that can be used. It's generally a good idea to leave all the defaults alone and add what you need. In my case I'm adding a DB2 DSN called LOCAL, so mine looks like this:

[ODBC Data Sources]
LOCAL=IBM Lotus OEM 5.2 DB2 Wire Protocol
DB2 Wire Protocol=IBM Lotus OEM 5.2 Wire Protocol
...

The next step is to configure your DSN. You do this by copying the section for your type of driver, renaming it, then updating the parameters. Since I'm using the DB2 Wire Protocol driver, I copied the [DB2 Wire Protocol] section, then pasted it back into the same file, giving me two copies of the same section. Then I renamed the one I pasted.

[LOCAL]
Driver=/opt/odbc/lib/LOdb222.so
Description=IBM Lotus OEM 5.2 DB2 Wire Protocol
....

Tip: If you're connecting from RHEL to DB2 on an iSeries, make sure you do the following:

add # before the Database= line
IpAddress=your iSeries IP
Location=iSeries DB name from WRKRDBDIRE
TcpPort = 446 (that's the default, check with your iSeries admin if it doesn't work)

Save and close the odbc.ini file when you're finished. From the command prompt you used to edit the file, issue the command source /etc/profile . This will reload /etc/profile, updating the environment variables.

You can test your connection by executing /opt/ibm/lotus/notes/latest/linux/dctest. At the first prompt enter option 3 to select an ODBC connection, then enter the name of your DSN. If you get errors about files not existing you may want to try restarting the server, or at least logging off and back on again.

The Lotus OEM branded DataDirect 5.2 ODBC drivers situation

Many Lotus customers rely on the Lotus OEM branded DataDirect ODBC drivers for connectivity between Domino and other systems. In the past Lotus made these available on Passport Advantage, but they pulled the version 5.1 drivers sometime after September 2006 (that was when I last downloaded them). Recently I went a few rounds with Lotus Support in trying to get the 5.2 release of the drivers and found out that the version 5.2 drivers were shipped as part of Domino 6.5.6. They were not put in Domino 6.5.5 or 7.0.2 because the agreement hadn't been finalized, and they are not available separately on Passport Advantage, either. I e-mailed the Passport Advantage group to ask why. Here is their response:
Our records indicate the ODBC Drivers are being withdrawn from support. Kindly contact the our technical Helpdesk in order to discuss the alternate solution, IBM SERV at 1-800-426-7378 (have your IBM customer number handy). The hours of operation are 24 hours a day, 7 days a week.

The grammar problems annoyed me, but I was more concerned about the "withdrawn from support" statement. I called the IBM SERV number and was transferred to Passport Advantage. The guy at Passport Advantage, whose name I couldn't comprehend, took the same information I had already e-mailed and put me on hold for a while. After about 15 minutes of explaining, re-explaining, and answering the same questions repeatedly, he finally decided that I needed to call the IBM SERV number again.

Okay, ring around the call queues. I called back in to IBM SERV. I explained the situation to Nick, a pleasant enough sounding young lady, who hung up on me when I couldn't give her a specific operating system. I called back, this time getting someone I couldn't comprehend, who also hung up on me during my explanation. I called in a third time, getting Brandy, who wanted to reopen an old case. After several minutes spent trying to explain that this wasn't really the same issue I finally let her reopen the case. I figured at least I could get on the phone with someone who might have a clue, and by now I had been on the phone for more than 30 minutes and gotten nowhere.

Christine, the Enterprise Integration person who helped me previously, called me back. I explained the situation to her and she assured me that the DataDirect drivers are supported, but IBM's agreement with DataDirect prevents the drivers from being distributed separately from Domino. They are included on the installation CD's and in the web downloads, starting with Domino 6.5.6.

Now the next problem: you can't order Domino 6.5.6 on CD yet, so your only source is the web download. When you unpack the web download the ODBC drivers are in a file that gets expanded during setup, so you can't just copy them out of the install set. What it boils down to is the only way to get the drivers is to install a Domino 6.5.6 server. Mixing Domino versions just to get ODBC drivers doesn't sound like much fun to me.

Christine said she will talk to some colleagues and see what they come up with. I understand this is how IBM had to structure the agreement, but I don't think it is very customer friendly. Hopefully there will be a loud enough outcry that it will change. For now getting the Lotus OEM branded DataDirect ODBC drivers is going to be a real pain.

Thursday, April 05, 2007

IBM developerWorks inducted into Jolt Hall of Fame

I was looking through developerWorks and noticed a little sidebar saying "Congratulations developerWorks". Clicking through I was pleasantly surprised to learn that developerWorks has been inducted into the Jolt Hall of Fame. I haven't seen this picked up in the blogosphere yet so I thought I'd share the news and see if it trickles out.

Tuesday, April 03, 2007

Spring at Middleton Place Plantation

This past Saturday a friend was visiting from Atlanta so Myron pulled some tour guide strings and got us complimentary admission to Middleton Place Plantation. I'll let you research the history on your own, I was there to enjoy the springtime scenery.


More on Flickr.