Sunday, December 24, 2006
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:
-Switch to strong passwords
-Configure SSH, DynDNS for remote administration/resolution
My new schedule is to "release" to Mom in mid January.
Friday, December 22, 2006
Wednesday, December 20, 2006
Tuesday, December 05, 2006
If you have someone to refer, please leave a comment on how to contact.
Sunday, December 03, 2006
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...
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.)
-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)
Another great reference for my situation: "Ubuntu for your Grandmother"
Going well so far.
Wednesday, November 29, 2006
Monday, November 27, 2006
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
Monday, November 20, 2006
Tuesday, October 31, 2006
Tuesday, October 24, 2006
ESPN blocks rerun of gameTuesday, 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
Thursday, October 19, 2006
Tuesday, October 17, 2006
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.
(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
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.
Tuesday, September 26, 2006
Monday, September 18, 2006
Wednesday, September 13, 2006
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.
Tuesday, September 12, 2006
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:
- 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...
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- But build systems to track (with accuracy!) all foreign nationals. Seal the borders tightly.
- 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.
- Prepare. Prepare for the next attack. Prepare mentally, emotionally, and physically. Disaster preparation will be key to survival.
- 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!
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.
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
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
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
#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.
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...)
Thursday, August 31, 2006
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:
Sears.com Customer Service Request
firstname.lastname@example.org 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
If we can be of additional assistance with any of your parts needs, please
contact us at partsdirect@customerservice
.sears.comor call us at
Shop sears.com now to pick up great products for the season.
Sears Customer Care
> -----Original Message-----
> From: Jeff
> Sent: Aug 28, 2006 11:25:09 AM CDT
> To: email@example.com
> NAME: Jeff
> E-MAIL ADDRESS: Jeff
> MAILING ADDRESS:
> 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
> 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.
> 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.
Monday, August 28, 2006
Friday, August 25, 2006
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.
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.
Rich Karlgaard writes a related post on Sun.
Thursday, August 24, 2006
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
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
Friday, August 18, 2006
Thursday, August 17, 2006
Wednesday, August 16, 2006
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
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)
Tuesday, August 15, 2006
Biz Beyond the BS
The Freestyle Entrepreneur
Hard Knocks Business Model
Bitter Sweet – Real Life Business
The Business Funhouse
The Misfortune 500
The Bullheaded Business Owner
Thursday, August 10, 2006
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)
// create salt
byte bytSalt = new byte[saltLength];
RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
// create secure string for concatinating input and salt
using (SecureString ss = new SecureString())
// append original string
foreach (char c in input.ToCharArray())
// append salt
foreach (byte b in bytSalt)
// prevent SecureString manipulation
// instantiate hash provider
SHA512Managed sha = new SHA512Managed();
// pointer to hold unmanaged reference to SecureString instance
IntPtr bstr = IntPtr.Zero;
// marshall SecureString into byte array
ssBytes = new byte[ss.Length * 2];
Marshal.Copy((bstr = Marshal.SecureStringToBSTR(ss)),
ssBytes, 0, ssBytes.Length);
// Make sure that the clear text data is zeroed out
// hash byte array
byte hashed = sha.ComputeHash(ssBytes);
// clear the provider memory
Wednesday, August 09, 2006
Props to Hal Halliday for alerting us to this masterpiece. Outstanding.
Monday, August 07, 2006
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
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.
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
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
Finding a host
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
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 for Beginners Series
Blogs themed similarly to what ours should be:
We're off and running!
Thursday, August 03, 2006
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
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, July 14, 2006
Monday, July 10, 2006
Friday, June 30, 2006
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
Monday, May 22, 2006
Thursday, May 18, 2006
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, May 17, 2006
Friday, March 24, 2006
.Net Developer's Guide to Windows Security
Distilled: The .NET Developer's Guide to Windows Security
.Net Security Workshop
Wednesday, March 01, 2006
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
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
Data on the Outside vs. Data on the Inside
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
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
Also missing from the base install (apparently to reduce target surface area...a good thing) are the sample databases and documentation.
Monday, January 30, 2006
Monday, January 23, 2006
- 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.