Sunday, December 24, 2006

Mom To Ubuntu: Progress Update

I found an old hard drive (10.2GB), network card (she uses wireless), and 128MB of memory. Her machine is now up to 256MB. I had some trouble early on with the screen sitting at GRUB endlessly but that appears to have resolved itself (mysteriously).

I ran the updater to retrieve the latest for everything already installed. I also added a few items such as a wireless LAN config tool, PDF viewer (I also installed the FireFox plug-in), etc. I've configured security to auto-login my Mom and allow me to remote in.

Finally, I installed Automatix2 to ease configuration (write-up). I actually found the Add/Remove software package dialog sufficient but a good tool noetheless. I still need to:
-Install AV
-Configure firewall
-Switch to strong passwords
-Configure SSH, DynDNS for remote administration/resolution
-Train Mom

My new schedule is to "release" to Mom in mid January.

Friday, December 22, 2006

Kubuntu Step By Step Installation

Online Security Sessions from TechEd IT Forum Available

Tuesday, December 05, 2006

Cardinal Solutions is Hiring

Cardinal Solutions (my firm) has many full-time opportunities open in Columbus and Cincinnati/Dayton. We're looking for strong .Net, Java, data, and project services (PM, QA, BA) people.

If you have someone to refer, please leave a comment on how to contact.

Sunday, December 03, 2006

Progress on Mom's Ubuntu Workstation

I've replaced the hard drive, added an old NIC card, and added an additional memory SIMM to take us to 256MB. I downloaded, checked the MD5, and burned an ISO image of Ubuntu 6.10. Finally, I booted the workstation into Ubuntu and started the install off the CD.

Right now, my biggest headache is the need to commandeer the family (and my wife's business) KVM to work on Mom's workstation (she's out of town and I didn't want to bother her with bringing all the wires and a giant monitor...). So, I'll work when the wife is out or sleeping...best time to get stuff done anyway!

I'm starting to consider training for Mom. Primarily, it will be us sitting down and walking through the most common tasks. These look like good books but perhaps even a bit to much for Mom (maybe better for me!).

Ubuntu Linux for Non-Geeks
Ubuntu Linux For Dummies

Beginning Ubuntu Linux

Any advice out there? I'm not finding much on Google...

Ubuntu: Green Light for Mom's System

Just spoke with my Mom. I attempted (successfully, I think) to explain my reasoning for going with Ubuntu on her old workstation (Dell Dimension XPS T-450). She gave me the green light to move ahead (I think she found the $0 cost compelling...!).

Step 1: determine minimum system requirements; upgrade if necessary
Step 2: determine Ubuntu distro: regular or alternate (or Kubuntu, Xubuntu, etc.)
Step 3: download Ubuntu 6.10
Step 4: determine KDE or Gnome (need to determine prior to download; KDE is Kubuntu)
Step 5: burn ISO CD
Step 3: replace defective hard drive (I just happened to find an old hard drive down in the basement
Step 6: research (ongoing...) and planning
Step 7: (big one) installation and configuration
Step 8: training and hand-off
Step 9: ongoing support (hopefully this is minimal and facilitated by remote admin)

So, I need to determine my configuration. Off the top of my head, here's what I need to cover:
-wireless support (Mom's router is upstairs from the workstation)
-AV protection (ok, not as applicable on Linux but I want this to be safe)
-Anti-* (spyware, phishing, hosts hijack, etc.)
-Firewall
-Remote administration (SSH, VNC?, DynDNS)
-Office-support (Open Office 2?)
-Authentication: auto login Mom's user account; remote administration account
-Photo-viewing support: ?
-Browser/email support: Mozilla/Firefox (she uses Gmail...more of my influence)
-Backups

Another great reference for my situation: "Ubuntu for your Grandmother"
Ubuntu Forums

Going well so far.

Monday, November 27, 2006

Switching the Parents to Ubuntu...?

I spent a half hour or so recently on the phone walking my Mom through a technical issue. Tentatively, I diagnosed her issue as a hard drive failure. She brought it over on her last visit and sure enough, the Dell XPS 450 from circa 1999 sounds like a bad coin-operated laundry at full capacity.

I was aghast to discover she's running Windows 98. Ugh. Also, her recovery disk is just that--for recovery. I don't believe I'll be able to re-install Win98 on a new hard drive. That, coupled with the end of Microsoft (and Dell) support for Win98, got me thinking about Linux. (and she's not intense about her computing needs...and she doesn't want to spend much money...)

I've been reading good things about switching one's parents to Ubuntu. Any thoughts out there?

Wednesday, November 22, 2006

Microsoft ASP.Net Anti-XSS Library Released

Prevent XSS attacks and reduce vulnerabilities with this updated library. This is particularly relevant with the increasing popularity of AJAX.

Monday, November 20, 2006

Data Privacy Breaches

Chronology of data privacy breaches since Choicepoint in 2005. Far too many, people...

Internet Explorer...within Firefox!

Check out the IE Tab Firefox extension. It allows sites optimized for IE to display within Firefox. I used to open a separate IE browser only to support Outlook Web Access (because the experience was less than optimal in Firefox). Never again!



Jeff...

Tuesday, October 31, 2006

HOWTO: Disable WIndows XP Startup Programs

1. Download AutoRuns
2. Unzip
3. Run autoruns.exe
4. Click the Logon tab
5. Unselect items to disable

Tuesday, October 24, 2006

Buckeye Fans Getting the Broadcast Run-around

I am not a fan of Time Warner [Cable] but I'm hating the ESPN manipulation even more. We're only going to see more of this in the future as the cable content providers start to wield power over the cable delivery services. Interesting to see how this will play out. My speculation: 5-10 years from now, ESPN will broadcast via the Internet...bypassing the cable companies entirely (although, what if your ISP is a cable company?) I really thought the satellite firms would wallop cable but that just doesn't seem to be the case/trend. Wired still trumps wireless. Perhaps Wi-MAX or UMTS will be strong Internet "carriers" in 5-10 years; or Broadband over Power Lines. Regardless, I think an alternative to cable will help drive competition, innovation, and thus, reduced prices.

Jeff...

ESPN blocks rerun of game
Tuesday, October 24, 2006

Though widely promoted, the planned rerun of the Ohio State-Indiana football game on Time Warner analog Channel 24 didn’t happen.

ESPN told Time Warner and the Ohio News Network that only the ONN rebroadcast on the digital tier would be allowed, according to Time Warner and ONN.

The Indiana game was shown live on ESPNU, a 24-hour college-sports network that isn’t offered by two of the three major cable providers in central Ohio — including Time Warner.

ONN had acquired permission to rebroadcast the game after its end.

When officials at ESPN realized that Time Warner intended to show the rerun on both the analog and digital tiers (but carries ONN only on digital), they blocked the analog rebroadcast.

— From staff reports

Tuesday, October 17, 2006

Frivolous Lawsuit and/or Poor Marketing of the Day

Emerson filed a federal lawsuit in St. Louis on Monday, seeking to block the NBC television network from rebroadcasting the pilot episode of the new show "Heroes," which depicts a woman damaging her hand in a garbage disposal made by the company.

The Ferguson-based maker of electric products says NBC Universal Television Studios did not have the right to use the company's In-Sink-Erator brand disposal in the show without permission.


Yeah, we need to stand up to The Man! No way will I buy an InSink Erator the next time I purchase a disposal. Grrrrrrr. ;-)

This suit is so ridiculous. I'm surprised anyone even noticed this let alone allow it to affect a purchasing decision--on an oft-purchased disposal. Please. If this sticks, does that mean studios will have to ask permission for every single item used on the set? "Hey! That 6-panel Chuck's Doors door was used without permission! I'm filing suit!" Dumb. Dumb. Dumb.

Theories:
(1) Emerson is marketing-clueless. Firms pay millions for product placements such as this. They should ride the wave.
(2) Emerson is marketing-savvy. They know the lawsuit will generate lots of buzz. Any buzz is good buzz.
(3) Emerson is conniving and malicious. Emerson competes with General Electric (parent of NBC).

I'm leaning toward mostly #2 with a spot of #3. I'm sure some Emerson exec caught this on their 1080i and started plotting. Who else would go through the trouble of examining a garbage disposal at a high enough resolution to make out the brand?

When will companies stop doing stupid things?!

Saturday, October 07, 2006

Moral Fortitude Doesn't Take a Day Off

I'm troubled at this trend as a society to blame inequities for our lapses in judgement. "But, I'm an alcoholic." or "What do you expect, I'm on welfare." or "I'm [fill in racial minority]...how can I possibly overcome?" We all go through tough times. But I reject those of us who would hide behind a false crutch; requesting a "pass" on unacceptable behavior.

Did Lance Armstrong ask for pity when stricken with life-threatening cancer? No. He proceeded to attack the disease and use it to propell him to unprecidented cycling success. Did Oprah Winfrey give up because she was born into near-poverty? Did she use her minority status to give up? No. She used this situation to build herself into one of the wealthiest and most successful women in business and entertainment today.

If you make a mistake, own up to it. Take responsibility and make it right. If your life takes a rough tumble, use it as a platform to succeed. But don't hide behind a false crutch and don't use it as an excuse to stow your morals in the trunk of the car.

Jeff...

Monday, September 18, 2006

Biometrics is not [necessarily] Security

Don't believe the hype on biometric security. Yes, it can be secure but most implementations are not. Just because one has Hollywood security, doesn't mean it's secure.

Mythbusters-Beat Finger Print Security System

Wednesday, September 13, 2006

The Truth Will Set You Free

I'm a conspiracy theorist at heart (no, I'm not a wacko about it...more a hobby than anything) so I really enjoy "dispelling myths" offerings: Freakonomics, John Stossel's new book, the "10 Things..." series in SmartMoney Magazine...

Here's a hilarious and well-written article in The Economist detailing a lot of airline travel myths. It's so pleasing to call "B.S." on some of this garbage.

Wright Tosses Microsoft

I'm not familar with this gentleman but I admire his pursuit of passion. This is something I've not done a good job managing in my career. Peter seems bitter but I can understand; I've developed with Microsoft products my entire career. I think it's important to remember though, Microsoft helped us get where we are today. If nothing else, they pushed technology and other firms to innovate.

Tuesday, September 12, 2006

Reflections on 9/11

I finished watching 'The Path to 9/11' last night. Factual or not, it brought back a lot of memories. I can easily play back the 24 hours following the attack in my head. My wife was on a plane due to arrive at LaGuardia around 9am. She was diverted to Philadelphia. Thank God she was ok and I was able to drive from Chicago to pick her up and bring her home.

It is easy to look back at the years since 9/11 and criticize. Despite this, I think the criticism is warranted. Terrorism has not won the war but they've won the first several rounds. They will continue to win as long as we continue to focus on politics and spin ignorning positive change.

Watching 'The Path to 9/11', it occurred to me that I really don't care who is to blame. Democrats simply drew more attention to the program by flipping out over it a few days beforehand. I don't care if Clinton screwed up. I don't care if Bush screwed up...the CIA, FBI, INS, Congress, Democrats, Republicans, the Florida flight schools, the Pakistanis, whomever! I don't care. I don't care because it doesn't matter.

Certainly, we should seek to learn from history. Let's all read the 9/11 Commission Report to understand what happened--and why. But let's apply that knowledge and proactively go out and do something with it. If I learned anything from 'The Path to 9/11' (and from living though the last 5 years), it's that we failed ourselves. Politics and spin failed us. Everyone covering their butt and suppressing the truth or failing to do the right thing, failed us. Not asking the right questions, failed us. Not cooperating amongst ourselves, failed us.

Since post-WWII, we've managed to put spin and politics in front of getting things done and doing what is best for our country. The few obvious exceptions include the fall of the Berlin Wall (and thus the end of the Cold War) and putting a man on the moon. It is past time we put our personal agendas and egos aside and start working for the betterment of this country.

So let's cut through all the crap and do something about it. My recommendations:
  1. Pull out of Iraq. Not immediately and not on a time table but enough is enough. Maybe our departure will focus their resolve. And if not...well, maybe they didn't want it bad enough. But don't think we've forgotten about you. If you can't manage it, we'll be back but in a different manner...
  2. Form a new, under-the-radar government agency with broad powers and a big budget to eradicate terrorism. Call it the U.S. Counter-Terrorism Agency or something. Give them a staff of, say, 500 elite fighters and intelligence personnel. Something like a Mossad or SEALs (actully, Rainbow Six from Tom Clancy's head comes to mind...). Deploy them throughout the world, one problem country (starting with the U.S.) at a time, to bring terrorists to justice (or their demise). It's surgery--not demolition. The broad sword of the military is ineffective (ok, that's a strong word...how about not the most effective option) here.
  3. Forget bin Laden. Who cares? Every time we mention this guy, it fuels the flames. He's the poster child for the movement. Even if we get him, he'll either become a martyr or be replaced by someone else.
  4. Open oil drilling in ANWR and off the coastal shelf in the short term. Seek rapid elimination of foreign oil dependence. Dial it back once we're independent.
  5. Build 35? safe, nuclear power plants in the U.S. Use them to power corporate and residential needs. Build new cars to use electricity. Eliminate dependency on foreign oil.
  6. Build 55? safe, nuclear power plants in China. Use them to power corporate and residential needs. China needs oil to fuel their economy. They have cash. Iran has oil. Iran needs cash. Russia has oil. Russia needs cash. Venezuela has oil. Venezuela needs cash. (You see where I'm going...) Bad guys exploit their natural resources to fuel their regimes. Take natural resource markets away from bad guys. Bad guys lose cash. Bad guys lose power. Bad guys no longer a threat.
  7. Recruit the best and brightest students to the U.S. Where are the Google guys from? Not the U.S. Where was Einstein from? Not the U.S. We're a melting pot. That's what makes us unique and powerful--well, and the fact we're a free republic.
  8. But build systems to track (with accuracy!) all foreign nationals. Seal the borders tightly.
  9. Profile. Wire tap. Infiltrate. Do it legally but do it. These guys are brazen. If it walks like a duck and looks like a duck--it's probably a duck.
  10. Prepare. Prepare for the next attack. Prepare mentally, emotionally, and physically. Disaster preparation will be key to survival.
  11. Leave the Solar System by 2050. Whew, that one threw you! We need to progress. To progress as a society, as humankind. We are desperately in need of a lofty goal to challenge ourselves and to focus our talents and energy. How much money have we spent on military operations in the past 55 years? (ok, yes, military operations also fuel scientific discovery but work with me here...) Probably trillions in the U.S. alone, right? (It was $455B in 2004.) I'm confident we could pilot a manned space craft out of the Solar System for $2T. Eliminate all this terrorism and wars and we'd have my budget in just a few years!
And don't think all these need government sponsorship or ownership! Yes, some--but business and people in general will flourish (flourish!) once government gets out of the way. We have the technology and smarts to achieve brilliance! Just let us do it.

Our track record of "do the right thing" and "do it better" seems to have slipped in the recent past. We started out so strong: exploring and discovering the northern hemisphere, founding America, declaring independence from England, forming a free republic, abolishing slavery, championing capitalism, leading the world to democracy, landing on the moon, defeating communism...but I fear we've lost our way.

The path to success lies within ourselves. We must cast off our incessant agendas and egos. Get out of the way you sycophant politicians and lobbyists. Stop the partisan bickering and get to work. And that doesn't mean increasing the size of government--just work more effectively and more efficiently. Let's get down to business and solve problems--before we no longer have the opportunity to choose.

You've Been Marketed!

My office "won" a free lunch yesterday at a local eatery. Unsuspecting, naive professionals that we are, we all figured, how fortuitous of us--we won! Wrong. We were about to be 'marketed'.

Gathering at the front door of the restaurant, one of our crowd didn't belong. Who's this guy, I thought. Oops, I'm out of the loop again...new employee. Nope, that's not it. Why is he wearing a suit?

"Hi, I'm Ron. I'm hosting your lunch today. I have a table ready over here for us." Ok, so this guy is with the restaurant. He's milking the opportunity to show off the restaurant. Fine. Although, what's up with the suit?

After we sit down, Ron goes on to explain he's a financial advisor with Ameriprise. Huh? Where'd you come from pal? Then it hits me: he's "purchased" our time. Brilliant! Now I'm really into this. I start reviewing the marketing:
  • captive audience
  • getting something in exchange for listening to a pitch
  • targeted marketing (I doubt it was a coincidence our firm was picked...and Ron could have performed reconnaissance ahead of time)
  • folks who actually might need financial services
  • all in a comfortable, neutral setting
Ron let everyone order (requesting to keep it around $10/person) and then while we were waiting for our food, Ron gave his 5 minute pitch. Afterward, he had us complete a survey with contact information and financial needs (he said it was a NASD requirement...I need to look that one up). And then he left--left us to contemplate what just happened! I think most of us already had financial plans in place but I saw a few folks putting thought into Ron's survey.

Overall, I was impressed. Impressed that someone had punched through my marketing firewall without leaving me feeling like I'd just encountered Slimer. I received something in exchange for my time. It was a bit misleading but I'm willing to let that go. I also admired the initiative. It had to take guts to pull off the presentation. I really hope this pays off for Ron--I'd love to know conversion rates on this approach.

Friday, September 08, 2006

Broadcast 'The Path to 9/11'

The blogosphere is erupting this morning in debate over ABC's "docu-drama" (?). Democrats want it pulled from the airwaves. ABC is [reportedly] taking a ton of heat.

I support the airing of this program. Yes, it needs to be historically accurate and correctly identified (is it a documentary?, is it complete fiction?, is it historical fiction...?) but the message should not fail to air due to political pressure. Our country was built on freedom. Let the people judge for themselves. If it doesn't air, should we then burn the 9/11 Commission Report?

Only a single poster on Jim Rose writes intelligently this morning on the issue:

Seriously, this is a really sad affair for our country. We have a group of politicians that are willing to abuse their power and bully a corporation in order to get their way. I've said time and time again, the new war is not the war on terror, it's the war for the control of information. Take it to the bank.

Wednesday, September 06, 2006

Tracking your Buzz

Not a lot of buzz here at Effective Thoughts...yet! Regardless, here are some tools to track popularity.

An Open Letter to Sears...

Related to my previous post seeking a refund for a part ordered from Sears, a fellow blogger (thanks for reading, Ellen!) posted a provocative comment prompting me to take the next step: propose some solutions for Sears to improve their customer service. The old phrase, "if you're not part of the solution, you're part of the problem" comes to mind. In that spirit, I propose several actions Sears could take today to improve customer satisfaction:

#1 Assume a "One Sears" Attitude and Structure
I've always been impressed at the businesses Sears tackles: retail, installation, parts, contractor work, finance, etc. However, it appears these many aspects of Sears also creates fragmentation which further distances Sears from customers.

First and foremost, consolidate customer touch-points. Sears has (as far as I can tell) dozens of 800 numbers as well as local numbers. There are also contact points through the web site and email. Consolidate these such that any time customers contact Sears, they follow a consistent experience. I shouldn't have to maintain a PhD in research to find the correct department or phone number to use given my situation or need.

Related, Sears must improve its call-in Integrated Voice Response (IVR) menu system. I'm a systems person with information architecture experience so I consider myself adept at navigating IVRs. Not this one. It took me 5 minutes to find the correct path--and even then I needed to speak with someone.

Contrast this with Southwest Airlines. My wife had a question about refundable fares. I knew the number (the ONE number) off the top of my head: 800/I-FLY-SWA so I called. Within less than 5 seconds, I was speaking with a person! I didn't have to touch one button or say "Customer Service please" into the phone. Take a lesson Sears: THAT is good customer service. Also, SWA answered my question in about 10 seconds with a beautiful response: we don't charge a fee for changing your flight--the customer only pays the fare difference. Delightful!

Secondly, Sears must instill in its employees, a culture of "One Sears". There are no local offices. There are no corporate offices. The local office telling me to call the corporate 800 number is unacceptable. I'm the customer and I'm calling Sears. Period. I don't care if the local office doesn't have that system or this system. I'm calling Sears. And I want Sears to answer: collectively, cohesively, and effectively.

#2 Proactively Employ a "Reputation Deputy"
Hire someone today to peruse the Internet all day long looking for Sears complaints. Empower that person to make things right. End of story. I would pay this person a ton of money, give them a very powerful title, a small staff, and have them report directly to the COO or CEO. This department might "cost" a few hundred grand a year but I assert the good will produced would easily head into 7 figures. I can already picture it...

"Hi, Jeff, my name is Mary Smith, I'm with Sears. I work for the CEO. I saw your issue on your blog and have investigated. We're very sorry for consuming your valuable time with this issue. It's our fault. I'm right now posting a credit to your Visa for $56.84 and I'm also sending you a $100 Sears gift certificate to your home. We hope you'll reconsider Sears and forgive us for this trip-up. Is there anything else we can do to make your experience with Sears right again?"

No business is perfect. Mistakes are made. As a customer, I completely understand. I mess up all the time. However, these complaints are right in front of Sears' face. Customers without alternatives turn to the media to voice their opinions (the Internet, in this case). I wasn't able to punch through the Sears bureaucracy--I turned to the Internet. I handed them an issue on a silver platter. If they were to (or do) resolve it to my satisfaction, I will continue to shop at Sears and I will sing their praises. All I want is to be listened to!

Update: Guy posted Monday on this topic. I swear I didn't read it until after my post! My comment...

#3 Empower Customer Service Representatives
$56.84. Seems like a trivial sum for a company with almost $50Billion in revenue last year, huh? Assume for a moment my claim is bogus and Sears doesn't really owe me $56.84. How much reputation damage have I caused (not vindictively, of course)? I've told almost a dozen folks (personal acquaintances) my story. They've relayed similar stories. Will those folks return to Sears? I've published this story on my blog. I've commented to other blogs. All of this could have been avoided.

I spoke with Sears representatives 5-6 times. I pled my case. I did exactly what they told me to do. I waited patiently. No refund. The final time I spoke with them before "going public", I spoke with the highest authority I could find-a supervisor. Even she tried to go toe-to-toe with me. Over $56.84! Empower your people to make things right for the customer. I don't care if your warehousing/inventory partner can't find the return. It's not my problem. Admit you screwed up and make it right. A supervisor should have authority with no questions asked to resolve issues of $250 or less. Done. Happy customer. No bad feelings. No bad publicity.

#4 Improve Technology
I saved this one until last because it will be the toughest and most expensive to institute; that doesn't make it any less important. Every employee (local, corporate, mobile, etc.)
interacting with customers needs desktop access to the same Customer Relationship Management (CRM) suite of applications. An employee anywhere in North America (if not the world) should be able to reference a customer account, their order history, and their case history.

I abhor technology for technology's sake, but for goodness (and the customer's!) sake, enable the customer to cancel an order. I couldn't believe Sears lacks the ability to cancel a part order--the day after it was placed! Hello?! The '80's called and they want their systems back. I assume this relates to channel partnerships: order comes in from customer, goes out to (for example) UPS, UPS ships order to customer, etc. However, those systems need to communicate. Cancellations are a fact of consumer life. Don't make the customer jump through a bunch of hoops because your systems are inadequate.

Summary
Personally, I want Sears to succeed. This open letter is an attempt to help Sears improve customer service. Let me know if I can be of assistance. You all have a lot of work ahead. And right now, Lowe's is looking light-years better (but that's another post...)

Jeff...

Thursday, August 31, 2006

Sears: Poor Customer Service; Poor Systems

Update: My comments highlighted on Free Money Finance.

A bit off topic but I'd like to publicize this in an attempt to resolve the situation and to warn others about Sears lack of customer service.

I ordered a part from Sears for my refrigerator, attempted to cancel that part the following day, was informed Sears can't cancel part orders (huh?), followed the return instructions to a "T", and have yet to see a full refund after 60 days. I've had 6+ communications with Sears only to receive the run-around every time.

My advice: don't shop at Sears. If anything goes wrong, they will drown you in bureaucracy betting that they'll outlast you.

My comment posted to Free Money Finance received a highlight (scroll down) recently. FMF's author is fighting Sears on about a malfunctioning elliptical exercise machine.

Here are the full details of my tussle wrapped into a recent email to Sears. I'm posting the response which is consistent with the previous 6 responses, "can't help you...talk to department XYZ". Pathetic. Looks like I'm not alone:
complaints.com
planetfeedback.com
my3cents.com

Sears.com Customer Service Request
1 message
partsdirect@customerservice.sears.com Mon, Aug 28, 2006 at 4:00 PM
To: jeff
Please include the following line in all replies.
Tracking number: xxxxxxx

Dear Jeff ,

Thank you for contacting Sears.

We have reviewed the status of your order and found that your order was
placed through a local Sears parts and repair center. PartsDirect is
unable to obtain shipping information or process transactions for parts
and repair center orders. For further assistance with your request, please
contact the parts and repair center where the order was placed. To obtain
the phone number and address to your local Sears parts and repair center,
you may visit us at http://www3.sears.com and click on 'store locator'.
Enter your zip code, select the 'service centers' box, then click
'continue'.

If we can be of additional assistance with any of your parts needs, please
contact us at partsdirect@customerservice.sears.com or call us at
1-800-4MY-HOME (1-800-469-4663).

Shop sears.com now to pick up great products for the season.
http://www.sears.com/sr/entry.jsp?eid=1&sid=S0016300040000600081

Roger H.
Sears Customer Care
partsdirect@customerservice.sears.com
1-800-4MY-HOME (1-800-469-4663)

> -----Original Message-----
> From: Jeff
> Sent: Aug 28, 2006 11:25:09 AM CDT
> To: custrel@customerservice.sears.com
>
> NAME: Jeff
> E-MAIL ADDRESS: Jeff
> MAILING ADDRESS:
> xxxxxxxx
> xxxxxxx
> DAY PHONE: xxxxxxx
> EVENING PHONE: xxxxxxxx
> BROWSER/OPERATING SYSTEM: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7
>
> COMMENTS:
> Dear Sir/Madam,
>
> Action item: Refund me $56.84 for a part I ordered on 6/24/2006, tried to cancel, and returned on 6/28/2006.
>
> Order#: xxxxxxx
> Part#: xxxxxxx
> Phone: xxxxxxx
>
> On the 24th of June, I ordered this part for my refrigerator. The next day, I fixed the refrigerator without the part. I called to cancel my order on the 25th of June.
>
> The woman I spoke to on the 25th told me Sears was not capable of cancelling orders. Instead, I should take delivery on the part and return it to any US Post Office.
>
> On Wednesday June 28th, I received the part. On Thursday June 29th, I returned the part to the USPS office refusing delivery.
>
> I have yet to receive a refund for the $56.84. Today is August 28th, 2006 I've spoken to Sears 4-5 times now and am attempting one last time before taking this issue public.
>
> Contacts:
> 8/8/2006 - Bill (local rep), call 800#
> 8/8/2006 - Karen (800#), turned over to accounting, will call (Sears never called)
> 8/18/2006 - Julie (800#), re-submitted to accounting, will call in 2-3 days (Sears never called)
> 8/25/2006 - Maricella (Emp#: xxxxx), claimed she couldn't escalate the issue; call the local office
>
> Please refund the $56.84 to my credit card or send a check to my address for the part I returned to you.
>
> I'm a very good customer. I bought a house recently. All my appliances are Kenmore. All my paint is Sears. Almost all my hardware and shop tools are Craftsman. I've spent thousands of dollars with you all over the years.
>
> Please provide this refund or I will forever sever our relationship and do my best to publicize the pathetic level of customer service I received in this situation.
>
> Regards,
> Jeff...
>
>
>
>

Friday, August 25, 2006

Sun is Setting

Jonathan Schwartz, Sun's recently-named CEO suceeding Scott McNealy, purchased a life-sized art rendering of Hewlett and Packard, founders of HP. Schwartz, who somehow believes Sun is actually a competitor of HP (laughable...even with HP's stumbles with Carly), purchased the artwork for $6,000 to declare "...a rebirth of fun at Sun"

Sun has plumeted so far from valuable or useful, I can't believe I'm even giving this non-event writing time. But I must...

First off, this "owning" Hewlett and Packard and taking photos with them is not funny. It is lame. It is uncreative. It is unproductive. It's certainly not funny. What would be funny is if H&P were somehow resurrected, came back and beat the life out of Sun's senior management team using an old HP 9810A. Now that's funny!

If I were a Sun stockholder, I might like to carry out a bit of my own bashing. A 52-week high of $5.20/share with a whopping P/E of -19 (yes, that's a negative sign). How funny is that Sun? Maybe that $6,000 would have been better spent improving your image...or gosh, maybe, oh, innovating. There's an idea. I'll bet your employees with options find $5/share funny...but not in a good way.

Let me offer a bit of advice: stop expending energy placating your competitors and start focusing on leveraging the talent and brilliance of your engineers. You wasted away a fortune tangling with Microsoft. Learn from your mistakes. Let HP do it's thing. You're not even a threat to them. Focus on innovation. Come out from underneath the comfort blanket of your outrageous annual maintenance contracts. Show us you have meaning and can actually provide value to the technology and business communities. If IBM did it, Sun can do it. Create a new Sun rising.

Update
This got /.'ed Sunday. A cursory review of comments seems to side heavily with my position. I particularly liked this comment from "Rotten168":
Wouldn't it be funny if Steve Jobs painted a Groucho Marx face on Pascal and Von Neumann's cardboard cutout likenesses? Oh wait, no it wouldn't. Sun just shows how utterly childish they are with this stunt.
My thoughts exactly.

Update
Rich Karlgaard writes a related post on Sun.


Thursday, August 24, 2006

Managing Others to Manage You Effectively

Insightful writeup on how to manage others to manage you well. It's targeted to writing but I think the points transfer to other disciplines.

How to Buy Technology Products

Excellent piece on the ails of technology products and how they miss the mark for business. Not always the case but all too often, IMO.

My favorite paragraph:

A lack of communication occurs between Mr. VP and Mr. IT:

  • Mr. IT: “Dude, you’ll need all these features. It’s rockin’ Web 2.0! WEB 2.0! If you don’t have it, your company will die. A crazy death.”
  • Mr. VP: “Wow! Okay! Buy, buy!”
  • Mr. IT: “Everybody dance now!”

Wednesday, August 23, 2006

Security: Educating Users

Schneier blames poor security on the computer industry...

I have to disagree. My dad (sorry dad...no offence) has no excuse for constantly screwing up his system at home. I've educated the heck out of him and he still finds the need to "tweak". He seriously calls me at least once a month with an issue. Last month, he'd somehow bridged his wireless and wireline network adapters. What? Don't mess with what you don't fully understand.

I also disagree it's the industry's fault from a corporate standpoint. If some fool can install software on their bank workstation, it's the bank IT department's fault. Hello? Group Policy. It's pure IT laziness (or misaligned priorities...or ignorance) not to have group policy prohibiting installation of software on machines.

Should we castigate Edison when some fool misuses electricity and injures themselves? No. If users fail to observe safety or recommended precautions, there's no one else to blame--operator error.

Tuesday, August 22, 2006

Escape from Cubicle Nation Book Outline

Pamela Slim published an outline of her forthcoming, yet-to-be-titled book. I would buy this today!

Friday, August 18, 2006

Disruptive Marketing: Freeload Press

Brilliance! These guys are giving away textbooks--for free--supported by advertising dollars. Stick it to The Man. I love disruptive marketing/technology and I remember paying through the nose for college textbooks.

20 Great Resources on Entrepreneurship

Thursday, August 17, 2006

SBOB: We're online! (Now TFE: We're online!)

We chose a name for the new blog!

The Freestyle Entrepreneur.

We're up on TypePad and have the URL registered but I have yet to redirect the domain and there's a lot of organization ahead. Progress!

Wednesday, August 16, 2006

Passed RUP Certification Exam!

I passed the Essentials of Rational Unified Process (RUP - 639) certification exam this morning. Some preparation information:

Preparation Resources

Principles of IBM Rational Unified Process v7.0: PRJ110v3 [WBT]
The Rational Unified Process Made Easy: A Practitioner's Guide to Rational Unified Process
The Rational Unified Process: An Introduction, Third Edition

Online Resources

http://www-03.ibm.com/certify/certs/rlrcrup3.shtml
http://www-128.ibm.com/developerworks/rational/training/catalog.html#10
http://proquest.safaribooksonline.com/?XmlId=0-321-16609-4
http://proquest.safaribooksonline.com/?XmlId=0-321-19770-4

Recommended Preparation Approach

If you’re unfamiliar with the RUP, pick up the two books listed under Preparation Resources. They give a good general overview as well as providing specific examples of the RUP given different project situations. If you’re familiar with the RUP, this review will provide little value.

After covering the basics, digest, absorb, and memorize the RUP (primarily the sections listed below) using the RUP Java applet itself. Understand how and when all these key elements interact. Understand which roles perform which activities to produce which artifacts and when. I recommend becoming intimately familiar with the following sections:

Getting Started >> Best Practices
Getting Started >> Process Structure
Team >> RUP Lifecycle
Team >> Disciplines
Team >> Roles and Activities
Team >> Artifacts (although this is probably best navigated through Roles and Activities by clicking on the individual workflow diagram elements)

Good luck!

Tuesday, August 15, 2006

SBOB: Choosing a Name

Time to pick a name for our new small business owner / entrepreneur's insight blog. This site will focus on the nitty gritty about business, not the Harvard MBA kind of stuff. The advice and info will be practical, down to earth and blunt.
Below are several potential names we've been playing with. Do any of these definitely turn you on or turn you off? Just leave a comment... thanks!
Bull On Biz

All Biz No Bull

Biz Beyond the BS

The Freestyle Entrepreneur

Business Savvy

Hard Knocks Business Model

Bitter Sweet – Real Life Business

Biz-a-holic

The Business Funhouse

The Misfortune 500

The Bullheaded Business Owner

Thursday, August 10, 2006

.Net 2.0: Hash with Salt using SecureString

Cryptography Simplified in Microsoft .NET
Security Guidelines: .NET Framework 2.0

Ideally, we would return a SecureString here and make the consuming developer work with that but for our example...

public string HashInput(string input, int saltLength)
{
byte[] ssBytes;

// create salt
byte[] bytSalt = new byte[saltLength];
RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
rng.GetBytes(bytSalt);

// create secure string for concatinating input and salt
using (SecureString ss = new SecureString())
{
// append original string
foreach (char c in input.ToCharArray())
{
ss.AppendChar(c);
}

// append salt
foreach (byte b in bytSalt)
{
ss.AppendChar(Convert.ToChar(b));
}

// prevent SecureString manipulation
ss.MakeReadOnly();

// instantiate hash provider
SHA512Managed sha = new SHA512Managed();

// pointer to hold unmanaged reference to SecureString instance
IntPtr bstr = IntPtr.Zero;

try
{
// marshall SecureString into byte array
ssBytes = new byte[ss.Length * 2];
Marshal.Copy((bstr = Marshal.SecureStringToBSTR(ss)),
ssBytes, 0, ssBytes.Length);
}
finally
{
// Make sure that the clear text data is zeroed out
Marshal.ZeroFreeBSTR(bstr);
}

// hash byte array
byte[] hashed = sha.ComputeHash(ssBytes);

// clear the provider memory
sha.Clear();

return Convert.ToBase64String(hashed);
}
}

Wednesday, August 09, 2006

Snakes on a Plane Voicemail: Best Marketing EVER

I am a media and advertising cynic. I pride myself on avoiding almost all marketing and never secumming to The Man. I never go out and buy something because I saw an advertisement. Well, I've met my match. This is the best viral marketing I've ever encountered. I will see this movie. I will spend money to see this movie. And right now, my brother in law is laughing his ass off at the personalized Samuel L. Jackson voicemail I just sent him from this marketing site. This is huge. It's revolutionary. It's disruptive.

Props to Hal Halliday for alerting us to this masterpiece. Outstanding.

Monday, August 07, 2006

Sun's McNealy Leads Non-Profit Open-Source Drive

Finally, Scott McNealy is heading in a positive direction! I've detested this guy for years. No doubt he's smart but he squandered an amazing opportunity (with Sun) in fighting (and clearly losing to) Microsoft instead of innovating and creating value. Sun maintains a storied history of innovation and greatness. However, just like HP, Sun hasn't innovated or provided shareholder value for 15 years. They've been riding customer maintenance fees and hanging on by a thread.

Perhaps it's too soon to call but McNealy stepping down and giving Schwartz the lead will allow the otherwise highly intelligent McNealy to stop the negative banter and bring about positive change. He makes several insightful and BS-clearing statements in a recent article regarding his new pet project the Global Education and Learning Community (GELC).

I've often wondered why someone doesn't publish textbooks online. This disruption to the elementary and college publisher gravy train is long, long overdue. I sometimes worry of a homogeneous learning experience but school boards have long complained of lack of up-to-date and inexpensive materials. What better solution than online published or even open source learning materials?

Let's give our kids the best opportunity possible. Lack of up-to-date, relevant materials should no longer be an excuse for inadequately preparing our future leaders.

Sunday, August 06, 2006

SBOB: Provider Chosen

I've chosen TypePad to host our new blog. We'll likely go with the Plus version for $9/mo at first and then upgrade to Pro if we need it. I like their features of tagging/categorization, 3 blogs supported, photos and non-blogging pages, log files, and file uploading. From a negative side, TypePad doesn't support captchas nor searching. Eh, hit Technorati for search!

The only downside of Plus in our situation is lack of multiple author/poster support. However, I can field all postings at first and we'll upgrade to Pro if it becomes problematic. Or, we could share account credentials for a while. I really want to make sure he's well-versed in how a blog works and how to administer it. This is one of my primary goals.

[update]: After comparing Basic and Plus, I see only one difference: Basic hosts only a single blog. Well, we're only creating a single blog. Otherwise, they appear identical. We'll go with Basic for now.
[/update]

Oh, and BTW, I'll stop calling it "New Blog" as soon as we've chosen a name. Maybe I'll call it SBOB (Small Business Owner Blog) for now.

Friday, August 04, 2006

Starting a New Blog with my Cousin

On 9/15/2006, my cousin (he's really a 2nd cousin many times removed...I'm not convinced we're actually related ;-) John Ingrisano and I will launch a new blog targeted to the small business owner. He'll provide most of the content and I will provide the technical and marketing expertise.

Ok, ok, starting a blog isn't rocket science but we're aiming to [eventually] derive some sort of profit from this venture, so I plan on doing this right. The two blogs I currently maintain live on the free Blogger.com and LiveJournal.com. I'll be covering the adventure here on Effective Thoughts--providing insight as to what worked and what didn't.

To start off, our first activities are:
  • Choose a name and a theme
  • Find a host
  • Help John learn the ins and outs of blogging
  • Implement the site: look/feel, about/bio, 1st content, announcements, etc.
  • Understand marketing best practices
To this end, here is some research I compiled:

Finding a host
http://en.wikipedia.org/wiki/Blog_hosting_service
http://www.idealware.org/blogging_software/
http://www.ojr.org/ojr/images/blog_software_comparison.cfm
I'm leaning toward TypePad Plus or Pro. It's not free but reasonably priced, gets rave reviews, and is chuck full of features.

Understanding blog marketing best practices
http://www.inc.com/magazine/20051101/handson-technology-sidebar.html
http://scoble.weblogs.com/2003/02/26.html
http://blog.guykawasaki.com/2006/02/the_art_of_crea.html
http://blog.guykawasaki.com/2006/04/the_first_100_d.html
Building a Strong Online Community
Ready to Start Blogging?
Pro Blogging Guide
Be a More Productive Blogger
Make Your Blog More Valuable to Readers
Blogging Workflow
Blogging for Beginners Series


Blogs themed similarly to what ours should be:
http://sethgodin.typepad.com/seths_blog/
http://blog.guykawasaki.com/
http://www.escapefromcubiclenation.com/get_a_life_blog/
http://www.tompeters.com/
http://blogs.forbes.com/digitalrules/
http://www.freakonomics.com/blog/
http://www.businesspundit.com/
http://presentationzen.blogs.com/presentationzen/
http://scobleizer.wordpress.com/
http://www.stevepavlina.com/blog/
http://www.makingalife.com/
http://www.brainbasedbusiness.com/

We're off and running!

Thursday, August 03, 2006

Why I Do Not Support Net Neutrality

It's simple, actually:

1. Nothing is free (as in beer)
2. Usually, items that are perceived as free (highways, the Internet, Welfare, Medicare, public safety services, etc.) are paid for by the government
3. The U.S. government gets its funding from its citizens--that is you and me
4. I indirectly (through taxes or through "add-on" cost-recovery fees from corporations) do not want to pay for someone else's Internet service.

If someone wants a faster pipe (or improved routing), that's fine. They can pay for that pipe. But I don't want to pay for their faster pipe. Also, with net neutrality, there's no incentive to improve delivery. If I'm Sprint, Verizon, or AT&T, why would I improve my service? There's no financial incentive. With Net Neutrality, I can't charge more for it. The Internet is not free (as in beer). It's no more free than making a phone call or getting cable TV.

Uncle Sam may have built Arpanet but the communications firms of this country build the modern-day Internet (at least within the U.S.). If I build a building, I should have a right to sell condos in that building for whatever I want. If the market for condos supports what I'm charging, that's great. The government should not be allowed to step in and say, "oh, BTW, every one of those condos has to be priced exactly the same...oh, and they can't exceed this ceiling". That's BS. I made an investment in my building and expect to realize a return on that investment. Otherwise, in the future, I will choose not to build that building and as a result, someone might not have a place to live. (as an extreme example)

This country was built on capitalism and self-reliance. We've grown into a group of complacent, handout-seeking, egalitarians. Save me! Save me! It has to stop. The government's role in this country should be to maintain individual rights, provide law and order, and maintain property rights. Otherwise, the government controls or has a hand in too much of our daily lives. The framers of our constitution never intended Uncle Sam to serve as a bedside nurse--they intended Uncle Sam to provide an environment of freedom and opportunity with a few rules such that its citizens could create and provide for themselves.

Let capitalism and economics do their thing. They usually work things out. Freedom isn't free.

Update 01/23/2007: Several of the founders weigh in against Net Neutrality.

Tuesday, July 18, 2006

Workstation Backups Made Easy

Difficultly finding a secure, reliable, low-cost offsite backup solution for your home or business workstation? I've fiddled around with all the usual solutions: NT Backup scheduled job out to a USB drive, Linux Samba file server on my network, periodic CD burns, etc. None of these solutions truly hit the mark for my needs: the job failed, I missed some files, I hadn't performed the manual backup in a while, etc.

Mozy.com to the rescue. This free (2GB), online service and application utilizes encryption to regularly post your local files up to a Mozy server. I run the application on my work laptop and one of my desktops at home. There's a 1:1 limit on email address to Mozy account but I have several addresses I can pull from.

Downsides include the size limitation, agreeing to accept a weekly marketing email from Mozy, and some firewall difficulties. Regarding size, 2GB is perfect for me. Primarily, I want my wife's and my work files and our family photos backed up. We're only at 400MB. And, if I turn others onto Mozy, I can earn additional space. If I need lots of additional space, I can pay $5/month for 30GB. Not a bad deal. Besides, do you really need to back up all those MP3s you didn't exactly pay for?

I'm usually adverse to marketing but a weekly email is nothing to ask in exchange for this free service. I won't necessarily read it (I could filter it out as spam...) but, hey, free is free.

Finally, because I'm using the free version of Zone Alarm Firewall, I'm unable to permit Mozy to punch through when locked by the screen saver (this is a feature in the paid version). No worries though as I'm on the workstations daily and can kick off a manual backup (and, Mozy alerts me if I've not backed up in the past day-this reminder feature is user-configurable).

Overall, Mozy is a great service/software. There's no longer a need for me to purchase media (USB, hard drives), maintain backup software, or schedule Windows tasks/jobs. The price is right and the software highly configurable and user-friendly. I'll be recommending Mozy to all my friends and family.

Friday, June 30, 2006

"If I Didn't Develop it Custom from Scratch, it's No Good"

It's time for developers to lose the "if I didn't develop it custom from scratch, it's no good" attitude. The other day, we were all sitting around at an internal technology presentation when suddenly, one of my collegues remarks snidely, "...with all these drag-and-drop, code-generating wizards driving development, are my .Net developers going to be writing code anymore?" Another collegue presented .Net Mobile 5.0 and all the new enhancements within Visual Studio 2005. Following the theme of "get developers away from developing plumbing and "every project needs _____ (logging, exception handling, data access, etc.)" code", these Microsoft tools take away many of the headaches involved with mobile development for the Windows Mobile platform.

Get over yourself! Code generators, IDE drag-and-drop functionality, and open/shared source frameworks serve as strong examples of industry innovation. One might be a strong coder/programmer but I believe it's both arrogant and ignorant to think these tools aren't as good as what you can whip up in a day. Bullcrap. If you still think this way then go take your laptop off to a deserted island (you'll want to pack a solar converter) and build applications in a vaccume. Your users...er, user will adore you. I can guarantee your code won't be nearly as robust, feature rich, maintainable, or error-free as what code be reused from commercial or open/shared source.

Unfortunately, I see this behavior every day. Oh sure, you'll plug in a few shared source libraries here and there: Log4J, Ant, whatever. But if it comes to working on a commercial tool such as a BPEL or a business rule engine/product...? No way! Heaven forbid you should get away from the code! What if the product needs modification?! C'mon. Do you really need to modify the Windows Server 2003 source code...? "Sure. I know better than 60,000 Microsoft employees. I do!"

It's an old, tired cliche but developers need to work smarter-not harder. With globalization, I guarantee there are 500 Russian, Chinese, Indian, or Nebraskans who can not only code you under the table but charge 1/5th of what you invoice. If no one else, you owe it to your clients or your firm. Become an innovator. Find the most effective and cost-aware method of accomplishing a task or solving a problem-not the method which most glorifies your precious custom code.

Stop reinventing the wheel out there folks. Plug in the commercial tools and shared libraries when applicable. It will propel your projects toward success, keep the industry innovative, and make our firms far more profitable and productive.

Friday, June 23, 2006

ASP.Net 2.0 Master Page Tricks

Slick method to embed meta tags into pages inheriting from a master page.

Monday, May 22, 2006

Unleash the Inner Entrepreneur

Powerful piece on large enterprise stifelling the proletariat. Is enterpreneualism freedom? Perhaps of a sort. This piece certainly makes me question the work I do...

Thursday, May 18, 2006

Stick it to The Man

I'm a sucker for the David and Goliath story line: Lord of the Rings, Star Wars, Atlas Shrugged...all inspiring and entertaining. Lately, I've been following the story at 37Signals of how they self-published their book Getting Real. As of today, they're up to an estimated $175,000 in revenue! Congratulations, guys!

If you know anything about publishing (which, I do not...well, at least not before following this story), most of the revenue from books goes to the publisher. With the approach 37Signals took, they retain almost all of the $19 a copy they charge for the book. Granted, they don't benefit from the strong marketing channels publishers maintain and 37Signals refrained from publishing a hard-copy (it's only available electronically as a PDF...for now) but selling 14,000 copies is a significant accomplishment. I'd pass out with glee if something I authored sold 14,000 times.

The Getting Real success story, thankfully, is one we're seeing more and more often. My capitalist and competitive loins start to energize when I witness firms like ZipRealty challenge the it's-not-negotiable 6% commission traditionally paid out to real estate agents. Or E-Loan, the discount mortgage broker who challenges the traditional bank mortgage with a no-hassle, instant feedback rate comparison. Or the creation of store-brand products which cost significantly less because I don't have to pay marketing costs! Brilliant!

Smart business and consumers, both large and small, continue to challenge traditional thinking. These folks find a unique offering or service, deliver that offering more efficiently, and pass the savings on to customers (or themselves!). Some day soon, we as a country, will start to impose this innovative approach on other laggards.

When brainstorming for laggards [evil doctor laugh], not surprisingly, a lot of government entities came to mind: the USPS, the IRS, heck even Congress itself would benefit from innovative thinking and competition. Can we impose this on the government? Where's my copy of The Constitution...?

Well, even if we can't fix the government, free enterprise will continue to innovate and reduce prices. I predict we'll see competition yield results with phone, cable, movies, prescription drugs, and perhaps even energy in the future.

What industry will you innovate?

Wednesday, March 01, 2006

Software Architecture Resources

http://architecturejournal.net/
http://enterprise-architect.net/

SOA Primer

Service-oriented architecture (Wikipedia)
Service Orientation and Its Role in Your Connected Systems Strategy
Understanding Service-Oriented Architecture
Architecting Disconnected Mobile Applications Using a Service Oriented Architecture
Service-Oriented Architecture: Considerations for Agile Systems
Service-Oriented Architecture: Implementation Challenges
SOA Challenges: Entity Aggregation
New to SOA and Web Services
Service-Oriented, Distributed, High-Performance Computing
Service-Oriented Integration
Developing Service-Oriented Architectures
Messaging Patterns in Service-Oriented Architecture, Part 1
Messaging Patterns in Service Oriented Architecture, Part 2
Implementing Service-Oriented Integration with BizTalk Server 2004
Legacy and Business Partner Integration: Using Service-Oriented Architecture for Integration
Service Gateway Pattern
Service Orientation in Enterprise Computing
Secure, Reliable, Transacted Web Services: Architecture and Composition
Application Connection Designer
Understanding SOAP
Data on the Outside vs. Data on the Inside
Metropolis
Service Orientation and Its Role in Your Connected Systems Strategy
Web Services Interoperability
Improving Web Service Interoperability
Principles of Service Design: Service Patterns and Anti-Patterns
A Business-Oriented Foundation for Service Orientation
Building Interoperable Web Services: WS-I Basic Profile 1.0

Tuesday, February 21, 2006

Internationalization and Globalization Support within .Net

Assignment Manager

http://www.eweek.com/article2/0,1759,1372407,00.asp
http://msdn.microsoft.com/academic/techdown/sharedsource/ssassignmentmgr/getstartassignmgr/default.aspx
http://msdn.microsoft.com/academic/techdown/sharedsource/ssassignmentmgr/default.aspx

Assignment Manager is a student computer science project submittal and tracking software product written in C# Microsoft ships with the Academic SKU of Visual Studio. My firm was contracted by Microsoft to build the original Assignment Manager in early 2000-before .Net was even released. It was intended to serve as an example of how best to compile a solution of this nature. The product has since become shared source and has changed somewhat.
From the official description:

The Assignment Manager enables faculty to manage courses, track assignments, notify students of grades as well as student modules. And the Visual Studio .Net Academic Tools Source Licensing Program gives academic users access to source code for the Assignment Manager Server, Assignment Manager Faculty Client and Assignment Manager Student Client.

Assignment Manager was architected up front to support internationalization (or globalization) and unlimited localizations (languages). We began by utilizing dynamic label controls within user interfaces instead of hard-coding English strings.

All string output dynamically pulled from a satellite assembly. A satellite assembly houses translated strings referenced by a code (e.g. LOGIN_INPUT_LABEL = "click here to login"). An assembly exists to house strings for each supported language. In the previous example, the string supports United States English (en-US). To support Spain Spanish (es-ES), the string might resemble "chasque aquí a la conexión". This string would have the same identifier (LOGIN_INPUT_LABEL) as en-US but reside in a separate satellite assembly and obviously have a different value. .Net provides a facility called a ResourceManager to interrogate the target culture / language and retrieve the appropriate string from the associated satellite assembly.

(Note: because Assignment Manager is a product targeted to a single university setting, the language preference is chosen during installation. In contrast, a public web site providing multiple language support would want to expose this as a choice to the browsing user. )

Next, we utilized internationalization-aware formatting for all numeric, currency, and date output. Using the culture / language preference chosen by the end user, the solution leveraged facilities within .Net to output using the correct format. For example, a date of "2/17/2006" within the United States should appear as "17/2/2006" within the UK because they prefer the month appear before the day.

Next, we configured our ASP.Net pages to support Unicode setting their encoding to UTF-8. This enables the browser to support non-ASCII characters such as a Spanish upside down question mark. Or a letter with a tilde mark.

For maintaining dynamic content, we supplied an administrative interface which supported the input and output of Unicode characters. Therefore, regardless of the language or characters input, our ASP.Net facilities and SQL Server backend stored and retrieved content in it's original format. For content such as a new assignment, a professor could enter text using any language / character set and this would be saved into the database. When it came time for a student to retrieve content, that content was simply retrieved from the database and rendered in the browser without modification. If Spanish were input by the administrator, Spanish would output to the student.

To achieve the actual translated content, we utilized a 3rd party firm. This firm maintained resources adept at all the languages we needed to support. We simply shipped them the human-readable list of strings (the en-US satellite assembly) and they would return the list formatted exactly the same but with all strings translated. The strings were then compiled and available for use within the ASP.Net solution.

Finally, once the application was localized and internationalized, we again leveraged a 3rd party firm to review each and every page for each language / culture to ensure content appeared correctly for that language / culture. Because our team possessed at most command of two languages, we would not have known if a particular language / culture was not appearing correctly.

Friday, February 03, 2006

Windows Forms 2005 Resources

Windows Forms FAQ - Windows Forms 2.0
WinForms.Net

SQL Server 2005 Express Tools Pulled

At the last minute, MS appears to have pulled the GUI tools from Express. After installing VS.Net 2005, I was baffeled to find its omission. As a "work around", one can install a free CTP management toolset.

Also missing from the base install (apparently to reduce target surface area...a good thing) are the sample databases and documentation.

Monday, January 23, 2006

Involving customers early and often in a software development project

A Better Way to Build Quality Business Software

  • Develop Iteratively - to reduce risk and improve quality
  • Manage Requirements - because software requirements usually evolve rather than materialize
  • Use Component Architectures - because we expect software to be flexible over time
  • Model Visually - so that business people, and software people can develop a common understanding of the system requirements and design
  • Continuously Verify Quality - because mistakes caught late in the process can cost 200 times more
  • Manage Change - because change is an unavoidable fact of software development projects.