Sunday, January 28, 2007

StarUML is Looking Good

I've done quite a bit of UML modeling. Up to recently, the tools for this were inadequate or overly expensive. However, in my constant search for improved tools, I've recently run across StarUML.

This one looks to be a keeper. Not only does the tool offer broad support for UML 2.0, including the 11 most commonly used document types; not only can it import from Rational Rose or XMI and export to XMI. It is also capable of reverse engineering UML models from existing code written in Java, C++, or C#. And it can generate code for these languages. The project features are interesting, in that you can select from several different "approaches", including the Rational approach. These are extensible as well, as is illustrated by the AML (Agent Modeling Language) profile that's available for download.

In addition, StarUML can generate templates for Word, Excel, or PowerPoint. I confess I'm not thrilled that only the Microsoft Office templates are supported for these design documents, but I certainly recognize the need for it. The good news is that since StarUML is extensible, it should be possible to add modules to perform the same tasks for OpenOffice.org or StarOffice as the demand for these products increases.

I haven't had a lot of time to play with this yet, so this is certainly a qualified endorsement at this point. However, it generates beautiful diagrams and offers extensive functionality. It all looks very interesting, but I'll have to set aside some "quality time" for a complete road test. As I have more time to evaluate it I'll tell you more.



While I'm discussing free software, I'd like to remind you about an excellent replacement for Microsoft Project. Open Workbench from Niku simply rocks! This is not just another Gantt chart diagramming tool. This is a fully featured product that surpasses MS Project in many ways. If you're a project manager looking to control your budget, you owe it to yourself to give this a try.

Saturday, January 27, 2007

Dissing Dell

Shortly after Christmas my main workstation died. Motherboard failure. Normally I'd have planned for this situation and I'd just build myself another whitebox. But I'd recently seen some Dell commercials and decided to save myself some trouble. The sales rep cheerily answered Dell's phone, "Hi! What can we build for you today?" What followed was the worst customer service nightmare I've ever experienced.

Here's the raw chronology, which is as I documented it at the time (January 3rd, 2007):
  • I had ordered the computer without a DVD burner, having explained to the representative that I would be moving my existing 200GB IDE hard drive and LightScribe DVD-RW into the machine (since Dell doesn't even offer LightScribe as an option). I've got some customers waiting for program updates that are on that drive, so I wanted to simply drop it in and change the drive assignments. I purposely bought a machine with a large case (also, this was to keep it cool). I bought from Dell due to reputation and from a lack of time and a desire to have something that "just works".
  • I got the Dell this afternoon. It was promised to be delivered "on the 3rd" and so it was... at around 6:15pm.
  • My name and address were both spelled incorrectly. It's a wonder it was delivered at all.
  • I did NOT power it up immediately. The very first thing I did was take inventory and open the case to see where I would be mounting the drives.
  • The very next thing I did was call Customer Service. The machine they sent had no IDE interface. Instead it used Serial ATA. It also had insufficient power leads to power anything but the existing stuff. There was an AGP slot and only one PCI slot available. IOW, this machine was totally worthless for the purpose for which it was bought.
  • Customer Service connected me to Tech Support. The Tech Support technician asked me to search for non-existent stickers that supposedly were to have had some fictional service number.
  • He then wanted me to power it up and go to the "My Computer" properties. I explained that in order to do that I'd have to click through the Windows EULA, which was a legal document. It took some discussion, but he finally saw that I wasn't going to make a legal commitment simply because he wanted a number.
  • Eventually he gave up the fruitless search for the sticker and took my word for it that the model number emblazoned on the front might actually be indicative of the contents of the box.
  • He determined that the computer doesn't have the connectors I need. This was a mere 20 minutes after I told him that the computer doesn't have the connectors I need. I demanded a supervisor.
  • The Tech Support supervisor told me that this model doesn't have the connectors I need. (big surprise there). I should install a PCI-to-IDE adapter board in the sole remaining PCI slot, eliminating my chances of putting a parallel board in that slot to support my nice heavy-duty laser printer. I responded that I gave very detailed specifications to the sales associate when she asked "what can we build for you today" and that his "solution" was unacceptable. I would return the machine for a replacement that does meet my needs.
  • After another 30 minutes or so I was given a return authorization number. I was told that they would gladly arrange the pickup and reimburse my credit card... in thirty days. "Policy," I was told. "Not my policy," I replied, then "Get me your supervisor," until I was told that the reimbursement would be "expedited" in my case.
  • I was then told that I'd have to go back to the sales desk to order the replacement. The Tech Support supervisor recommended that I order the Model B110. This would have the interfaces I need. I asked them to transfer me to the sales representative to avoid their insufferable voice tree. They did.
  • Rather, they tried. They dropped the line. I should mention that they had previously dropped the line several times when transferring me about, which prompted my mention of the "insufferable voice tree". Nevertheless, I had to punch through it once again. This time I had a "case number" so I must be important. Hmm.
  • The sales rep ("Lawrence") informed me that Dell no longer manufactures the model B110 and they haven't for some time. I explained that I would accept a suitable substitute. Lawrence told me that he would put me on hold while he talked to the technicians himself.
  • Twenty minutes later I still heard nothing from Lawrence. Feeling somewhat forgotten and shunted aside, I hung up and called back to the sales desk. "Tammy" answered. I politely asked her to save some time by fetching a supervisor for me. Tammy stated that the supervisor might not be available because she was very busy. I replied that she was about to be a whole lot busier; go get her. She came back some minutes later with "Tiffany".
  • I explained to Tiffany that I was a very unsatisfied customer. I explained to her why (all of the above). I explained to her that I had done my "very best to give Dell every opportunity not to suck," but they continued to disappoint me nonetheless.
  • Not entirely surprisingly, Tiffany became defensive, but got around to asking what she could do to make me a happy customer. I explained that the purpose of this particular call was to inform her, in her capacity as Sales supervisor, of the egregious mistakes make by the Sales department in selecting a model that did not meet my needs and in leaving me hanging on the phone for twenty minutes. I already had a return authorization from the Tech Support department, so the only thing she could conceivably do for me was provide a computer that meets my specs (i.e. a machine that supports an IDE drive).
  • There was a little detour into further annoyance when she remarked that I seemed technically savvy, so why didn't I check the specs on Dell's site first? The attempt was, of course, to make this my fault for the failure of their trained professionals to deliver on my detailed spec. I explained to Tiffany (in words approaching these) that, as I explained when I first called to place my order, I'm replacing my broken computer. I went on to explain I do not have an Ethernet port in the back of my neck into which I can plug a cable modem and surf the Internet in my imagination. If I did, I wouldn't very well have called Dell, now, would I?? In short, at the time I called Dell, surfing the web was not an option. I had a problem and called them on the strength of their undeserved reputation. Furthermore, as I made that crystal clear at the time of purchase, if they had any fine print they required me to know about, they should have said it at the time. Since they didn't, it might as well not exist.
  • She pow-wowed several minutes with Tech Support and informed me that Dell do not make computers to meet my specs. Her explanation revolves around the "fact" that Dell machines are more technologically advanced than the competition, even though they don't offer technology such as LightScribe. In other words, it was canned B.S.. She then offered to sell me a PCI-to-IDE adapter board for $40+. Besides the fact that I'd already rejected this "solution", I thought it was pretty damned shabby of her to offer to suck another $40 out of me to cover their mistake. She also suggested an external enclosure for my drives with a USB adapter. Like I'd be really happy shoving my data through a USB port rather than a parallel cable. She suggested that if I didn't "feel comfortable" buying it from Dell that I could buy it someplace else. It never occurred to Miss Professional that she might just send me the part. I said I was inclined to simply ship the box back.
  • Tiffany told me in her best "I'm concerned for you" voice that she was just trying to avoid having me pay the shipping and re-stocking fees. "The what?" I exclaimed. It all becomes clear... it seems that Dell will promise to meet whatever requirements you give them, even knowing that they can't deliver on them at all. Why should it matter to them...? After all, they're going to make money from you anyway, they'll charge your card immediately, but due to "policy" they will keep that money for 30 days. Due to "policy" they will do their best to ensure that you pay for their failure to deliver.
  • Well, that clinched it. I'm shipping the computer back anyway.
All in all, this took up the hours between 6:30 and 10pm. But all was not bleak.

At 10:15 the same night I went to Wal-Mart, determined that at this point I didn't care what the hell I bought, so long as it wasn't a Dell, had IDE, did math and painted pixels. What I found was a Compaq Presario with an HP 17" LCD flat panel monitor for over $100 LESS than the price of the bare Dell box. The Compaq, like the Dell, comes with a Serial ATA drive. Unlike the Dell, the Compaq ALSO has an IDE port. Unlike the Dell, the Compaq also has a number of standard power connectors for expansion. The Compaq came with four PCI slots. The Compaq also came with a LightScribe DVD-RW, an option that Dell doesn't offer (and technology of which Dell's sales associates are unaware). The processor clock speed of the Compaq is twice that of the Dell. The LCD is crisp and clear, and the built-in speakers reduce my desk clutter considerably. Since I bought it at Wal-Mart, the return policy states that if there are problems I can return it to the store within 90 days for a full refund. Compare that to Dell's 21-day policy with partial refund and the customer picking up the tab for shipping and re-stocking! The only things substandard about the Compaq are the mouse and keyboard. I prefer my Microsoft Natural keyboard and optical mouse, which of course I retained from the previous computer. The Compaq has 2 fewer USB ports, which again isn't a problem because it also has PS/2 style mouse and keyboard ports missing from the Dell.
The Compaq is a better machine.

HP is a better company.
Wal-Mart is a better distribution channel.
That's my opinion and I'm sticking with it.

About that restocking fee... I called my credit card company to report the experience and see what could be done. They explained that there are really only two charges that they can't contest. You guessed it: restocking and shipping. And Dell does have 30 days to return the money. So Dell is operating within the bounds of legality. Though, if I wanted to craft a scam, it might not look so different from what Dell does legally. That is, ignore the customer's specs, ship out whatever's handy, then apologize and refund enough to keep me out of hot water while I still make a profit. I'm not saying that's Dell's business model... but I personally can't tell whether it's not, as my experience is indistinguishable from the hypothetical scam. As it is, even accounting for the restocking fee, it was a better value proposition to return the Dell and buy the Compaq!

If it's not perfectly clear by now, in my experience Dell sucks. I will not recommend a Dell machine under any circumstances for any purpose, to any friend or any customer, and I urge you to buy from anyone else instead. This isn't just my experience either. I invite you to visit the following sites:
http://www.ihatedell.net/
http://www.dellsucks.net/

(BTW, why did I wait several weeks to post this? Because I wanted a "cooling down" period, to make sure I wasn't just posting a knee-jerk complaint. It's not... after giving it some considerable time and though, I'm just as certain that Dell sucks.)

Switching Phones

I've got a number of backlogged topics to blog about today, so I'll begin with this: I've switched phone systems. I was using Vonage; now I'm using Charter (from which I also get cable TV and high-speed internet).

I absolutely loved the Vonage service. Except in one respect it is everything that a telephone service should be. Here's a list of reasons I like it:
  1. When it's well connected, the voice quality is extremely good.
  2. It has intelligent dialing rules. The only digits you need to dial are the ones that differ significantly from your own. This means there is no need to dial "1"+ the area code for those numbers that are in your area code, but long distance, and you don't need to dial "1" for long distance numbers in another area code. It's just smart.
  3. The price is right... under $30 per line per month for unlimited calling. It actually comes to a bit more once you've added in all the federal fees and taxes.
  4. Unmatched calling area. That $30/month buys you local calling to the U.S., Canada, Mexico, Spain, the UK, Germany... wow.
  5. Unmatched configurability. With Vonage you can go to your account on the website, and not just view your bills, but activate or deactivate features yourself, with no need for some customer service rep to push the buttons for you. You can receive voicemail notifications to your email or cell phone. You can manage and listen to your voicemails on the web.
  6. Last, but not least, My favorite feature: simultaneous ring of my landline and my cell phone. No need to remember whether I've call forwarded or not. I just pick up whatever phone is handy.
So why switch? Quite simply, it was that Vonage suffered from congestion on the Internet. The voice would become garbled or sound like the classic "Cylon" when this happened. When my ISP's servers went down, so did the phones. Et cetera, et cetera. I have to keep a separate cell phone in case the Vonage service was blocked or choked.

So now I'm on Charter. It's the same cable, but a different signal. Charter places the telephone service at a higher priority than the cable service as well, so an internet or cable outage that's unrelated to the physical cable won't take out my phones.

I don't mind telling you, the Charter service sucks by comparison. There's no web management a la Vonage. No simultaneous ring. No smart dialing. No text notifications. Now, that doesn't mean that Charter Telephone sucks... it doesn't. The voice quality is outstanding (people can no longer tell when I have them on speaker, though I haven't changed phones), and as I mentioned, it's very stable. It compares exceptionally well against BellSouth, or any other standard telco. It just sucks customer service-wise compared to Vonage. The stability makes the difference, though.

My experience with Vonage has modified my thoughts about Net Neutrality. I've just had to give up the best phone company I've ever dealt with due to QoS issues that prevent unimpeded reception of their traffic. I'd have to say that I now lean in favor of prioritization so long as the consumer himself dictates what is prioritized. I wouldn't want the fact that an IP telephony service to impede my choice of a company like Vonage. However, it's absolutely clear to me that an unimpeded "Wild West" approach to Net Neutrality has exactly the same effect.