The warranty place must have replaced the motherboard on my netbook, because every problem (including what I didn’t remember to tell them) was fixed when I got it back.  The low volume in Windows XP went away, the headphone jack works great, the unit doesn’t freeze at all, the power button works when there’s a serious problem, USB booting isn’t flakey anymore, and the only problem I have had is the problem I always had from the start: the gOS installation on the Sylvania G likes to lock up the system sometimes.  This is probably due to a lousy or hastily created Linux X.org driver for the VIA video chip.

Anyway, the warranty people did an excellent job.  When I talked to them on the phone, I made myself look a bit foolish because I thought I nuked the OS, when in reality I didn’t, but that’s beside the point.  I talked to them about my problems and I swear unto you, the day after I talked to them my machine was delivered!  They had it for a couple of weeks and got tired of looking at it, and they overnighted it back to me.  Quite a lot of  service for a laptop that originally cost $300 and can be bought for far less even now!

You’re probably more interested in what I have to say about my netbook and my car.  I picked up a cassette tape adapter and used it to link up the audio from my 64-bit laptop to the tape deck because my stereo is stock from 12 years back, but the laptop quickly overloaded my AC inverter.  Ouch.  So, I whipped out my Sylvania G and hooked it up instead, and my inverter didn’t overload once as I drove to and from jobs all day long.  One of the primary design considerations for netbooks is minimal power consumption, and if you don’t have a real 12V lighter socket and/or you have a cheap inverter, a netbook is highly likely to work just fine whereas a “real” laptop will overload things, shut down the inverter, or maybe even cause a fuse to blow out.  MP3 listening requires very little in terms of modern processing power, so a netbook is very well-suited to this role in a car.

On top of that, having a running netbook in the car gives me immediate access to wireless services, so if I need to check an email quickly, I don’t have to dig out a machine and wait for it to start up.

Viva la netbook :)

GREAT.  I was able to contact T-mobile and get my phone to ring for much longer, giving me more time to answer a call in lieu of the now-disabled voicemail system picking up.  That alone has already come in handy, as I have been able to pick up calls from my wife and my techs long after it would have kicked over to voicemail, inevitably leading to phone tag and wasted time.  I’ve instructed my technicians that calls asking for me are to be screened aggressively, and only those which they are completely unable to assist should make it to my desk (as in one customer today who inquired about a custom computer and needed to discuss the options for getting that custom computer.)

Because I am being interrupted less often today, I have managed to mostly finish converting a multi-language website for one of my long-time business clients to a PHP-based and easily managed layout, including langauge-coded folders and more standardization across the board.  This has been difficult to work on for days now because of all of the unnecessary interruptions that customer service matters have caused.  Now that only essential issues reach my ears and break my concentration, my productivity is already seeing a significant boost.

This is the way it should be.  A business owner needs to focus on one thing only: the business and making it better.  Customer-oriented approaches to doing business are as crucial to success as ever, but the best advice I can give to a small business owner starting out is this: learn the value of making the people you supervise handle things; that’s what they’re there for, and you can’t do your job of supporting their efforts if you’re too busy doing theirs. A business relies not only on good personnel who know what they’re doing and have enough authority to help customers sufficiently, but also on good managers who can coordinate and support the creative and assistive forces of those personnel to ensure that they work together optimally.  Put another way, it seems impossible to coordinate and supervise your workers if you spend too much time doing their job and not enough doing your own.

Separating myself from customers and letting my people shine, both on the phone as well as in person, is proving to be crucial to my ability to do my job.  My techs can’t be expected to do work if I’m not out there revamping the website or performing SEO or passing out flyers or hitting up local businesses or whatever else I have to do as the most important manager in the business.

I can’t emphasize enough that this doesn’t mean I won’t ever talk to customers or do tech work myself.  It’s important for a manager of any kind to be “in touch” with what’s going on amongst the managed, and to provide guidance and assistance when it is seriously needed.

The problem is that many of us want our business to succeed so badly that we forget about the high-level management stuff as we worry over minutiae.  I’d say that as of today, I’ve learned that lesson, and I hope that this post helps others to do the same.

“Well, if we’re all done, I’ll just make myself scarce.”  I don’t know where I picked up the expression, but it’s really cute and gets a chuckle now and then.  In a more serious light, though, “making one’s self scarce” is exactly what I’m doing with phone calls, starting today.  Now, me being a small business owner may incite much questioning about this new policy.  Doesn’t a good business owner answer the phone and talk to customers?  What could possibly be the reason behind this?

There is an article that covers this topic well which deserves an honorable mention: Should You Turn Off Your Telephone? Now I’ll answer the question about why and how I am getting away from the telephone.

I have access to three professional telephone numbers: two at the shop which are daisy-chained together by call forwarding, and my own cell phone.  Both sets of phones have voicemail at the end.  Well, had voicemail.  About 15 minutes ago, I cut my T-mobile voicemail service off completely.  Every time I made a voicemail greeting, it would politely recite the shop phone number, insist on calling that number, texting, or calling back in 10 minutes, and explaining what to press to unblock a call, followed by a request, then a demand, to not leave voicemail because I won’t get it.  That request was not respected at all, and my phone would constantly blip up voicemail notification reminders despite my explicit demands to simply wait on a call back! Where did people lose their ability to understand basic English, and to respect my explicitly spelled out request and warning that I don’t check voicemail?

I felt disrespected beyond belief every time someone left a message.  It’s like they said “okay, I’ll leave one anyway because I don’t give a damn about what YOU want, Mister Smarty-Pants Business Owner!”  It’s like someone else spitting in my face.  There’s no excuse for it.  Nowhere in the realm of human decency is ignoring an explicit request even remotely close to existing, yet people do it daily.  I’ve come to realize that many people simply do not consider the human factor of people in business.  The reasons are obvious, but the most significant one is that each ten-minute conversation to them is one ten-minute conversation, while to me it’s just one ten-minute interval in a huge flood of calls that eventually ruins almost half of my potential work time per day.  I need that time to grow my business, write some software, redesign the website, print business cards, and things like that, but instead it is completely drained away having conversations that my technicians could easily handle if callers would stop demanding to talk exclusively to me for anything and everything under the sun.

I want to be available to help everyone, but I am being forced to come to terms with the fact that I am one person with only 16 hours a day to do everything that must be done.  I understand now why corporate types rarely talk to customers: it’s simply not possible to do that and still get their own jobs within the company finished too.

I have decided that I must take charge of my time.  I must manage my time and treat it as the most precious resource in this company, as well as in my life.  It is limited and non-renewable, and I need to make all of it count for as much as possible.  If that means making a customer upset because they can’t speak directly to me, then so be it.  If a customer would refuse to do business with my business simply because they can’t talk directly to me whenever they feel like it, then I wonder whether they are the kind of customer we are in business to serve.  I hired and mentored a team of professionals so that I could extend my capabilities to more people, and it is extremely important that customers take advantage of their knowledge and willingness to help.

Not to mention the fact that some work might actually get finished around here now…

It’s official: something went severely wrong with the Sylvania G netbook I bought in October.  The keyboard AND POWER BUTTON will completely “lock up” at random and QUICKLY, yet the computer itself still runs in the background, and the hard drive developed a couple of bad sectors (which I remedied by doing a zero fill–more on that in another post).  It’s fairly unusable now, and it’s still within the warranty period, so I called up Sylvania’s support number for help.  The company that actually makes these netbooks is called Digital Gadgets, and it is them who I have dealt with.  So, how did it go?

I haven’t been this happy about a customer service experience EVER.

I explained to the tech that I bought the netbook in October 2008, that I run a computer service shop, and detailed heavily what was wrong and the evidence that I had gathered to make my judgment call that the netbook was screwed up.  Apparently the ink used for the serial number sticker is poor, because it had smudged off to the point that it was unreadable, which I made very clear early on in the call.  This is about where you would expect me to spew off about the run-around I was given and the stupid hoops I had to jump through to prove to the person that it was indeed screwed up, because 99.9% of service and support agents have almost no authority to help customers and are usually in the business of preventing warranty returns at any cost.

But that didn’t happen, not even a tiny little bit.  No run-around?  Surely I jest, right?  WRONG!

The tech support agent, named William Lee, promptly started the process of generating an RMA and took my shipping address to send a totally free return shipping box to.  About eight hours later (and after business hours, no less) I had an RMA number in my email inbox, with instructions on what to do when the box arrived.  As of this writing, the box hasn’t yet appeared, but that’s because I only called them a couple of days ago.

It is astonishingly refreshing to be able to deal with someone like William.  He did everything exactly right, without a single flaw in his procedure.  He LISTENED TO THE CUSTOMER’S PROBLEM, taking the time to ensure he understood exactly what was going on from my perspective.  He also BELIEVED THE CUSTOMER’S STORY AND EXHIBITED BELIEF IN THE CUSTOMER’S GOOD FAITH, which is the exact opposite of what most suppot agents do: showing a lack of faith and general distrust of the customer right off the bat.  Because he LISTENED and BELIEVED, this brought about the UNDERSTANDING  that there was a clear issue covered under the warranty which needed to be resolved quickly as possible.  Within a reasonable time frame, he PROVIDED A SPEEDY RESOLUTION TO THE CUSTOMER’S PROBLEM.

Let me explain exactly why I am writing in this fashion.  William’s example should be followed by all companies, and sadly it is almost nonexistent in the corporate customer service landscape of today.  The benefits to the customer (in this case, myself) are fairly obvious: the problem was resolved quickly and the customer’s precious time was not wasted to achieve that resolution.  But what about the benefits of William’s actions to the BUSINESS?

  1. William spent as little time as possible chatting it up on the telephone.  This left William free to service other customers, reducing overall load on the customer service department at Digital Gadgets.  It also made William a much more valuable asset to the company, because William is able to service more customers than an agent who is given no authority and is required by the company to simply  toss customers through hoops.
  2. On the flip side, William did not abbreviate our conversation.  He spent the time required to understand my situation, but did not ask me to perform senseless exercises when it was quite clear that the problem was hardware-related and not fixable over the phone.
  3. I was heard but not patronized, AND a SIMPLE solution was presented QUICKLY.  This greatly increases my faith in Digital Gadgets as one of their customers, increasing the chances that I will purchase from them in the future AND RECOMMEND THEIR PRODUCTS TO OTHERS  AS WELL.  Over time and across many customers who are similarly situated, this leads to MORE SALES, which can quickly and easily exceed the cost of a warranty repair on my one individual netbook.

William is doing it right.  Other businesses could take a few lessons from how he handled my situation.  I can’t wait to get my fixed toy back in good working order, and I’m very happy to have bought a computer from a company that treats me like a customer should be treated.

I’ve been sitting in front of a computer almost every day of my life since I was three years old, so I eventually got around to thinking, “why not use all the experience I’ve accumulated to create a team of amazingly skilled computer aficionados?”  Since I set out to do just that and opened up shop, we’ve been in Siler City for around half a year now, starting with just myself and one other technician.  Since then, we have clearly provided a sorely needed service in Chatham County, because I now have four in-shop and at least two regional on-site computer techs doing work for me.  You see, we have some “crazy” ideas about doing business, such as **putting customers first** instead of our own wallets, and we’re willing to tell you exactly what’s going on without holding back information or making pie-in-the-sky promises.  Here, it’s not about the bottom line, it’s about YOU.

If you’re looking for anything computer related for your home or business, we can help you.  We’re aiming to be a one-stop computer shop, and we do pretty much everything you can imagine.  Since our opening, we’ve already set up or done major overhauls on a few local business technology infrastructures, and almost every single day, customers are waiting outside of our front door for us to open up because we’re that good at what we do.

Because we’re also the only shop I know of that is a convenient drive for Chatham County residents that deals with Macs and Linux, we’ve also helped local people who previously had no local support whatsoever for those computing platforms.  We also perform some repairs that most other shops don’t usually offer, such as replacing bad capacitors on motherboards, which has saved tons of our customers from buying expensive new computers with a simple $80 procedure.  We offer the best price you’ll find anywhere on laptop hardware and power jack repairs, typically half the cost of most competitors and totaling at least $19 less than the cheapest national laptop jack specialists as well.

I think that what ultimately makes us different is the fact that we care.  We care about you and your computer, and we care about your specific needs.  We want you to be happy.  You’re not just a number or a source of income.  You’re a prized and valued customer the second you walk in the door.  That’s all there is to it.  It might not be the way other people do business, but by gosh, it’s OUR way, and it’s going to STAY that way.

Areas we provide services in include Siler City, Pittsboro, Goldston, Fearrington, Bonlee, Bennett, Silk Hope, Ramseur, Asheboro, Liberty, and even in more distant places such as Chapel Hill, Carrboro, Durham, Apex, Cary, Raleigh, and Garner.  On-site or in-shop; it’s all up to you!  Call us and tell us how we can help you out.

As for the obligatory details, we’re at 1416 East 11th Street, Siler City, NC  27344.  Our hours are 10-7 M-F, 12-4 Saturday, closed Sunday.  You can reach us by phone at (919) 200-6003 (which automatically kicks over to a second line if the first one is busy) and on the Web at nctritech.com you can read much more about us and what we do.  Thanks again to all of our customers who’ve helped us to be such a huge success!  We love all of you!

(It occurred to me that I haven’t made a single post actually plugging my business for the local areas it covers; that’s why I wrote this.)

At Tritech, many things have changed since even just one month ago.  Here’s a spiffy list of such things.  By the way, my new favorite word is “terse.”  The magic of the word “terse” is that practically all of its synonyms not as terse as “terse.”  It’s a self-fulfilling definition!  ^_^  So, what’s been going on during my silence, you ask?  Read on!

  • My Sylvania G has an unusual issue with the custom Linux installs I’ve done on it where the keyboard and mouse touchpad stop working.  This didn’t happen while I had Windows XP on it whatsoever, nor the custom gOS that came with the computer, so I’m fairly sure it has something to do with a more generic (read: not G-specific) Linux distro running on the VIA CX700M2/C7-M platform.  I doubt it’s the hardware itself because of this.  The headphone jack worked on XP, but not on my custom Linux, which apparently is caused by an incorrect HD Audio pin mapping in the HD Audio drivers in the stock Linux kernel.  I’m not too concerned about it, though, since I haven’t needed to use it much at all lately.
  • I’m still working on the custom Tritech Service System.  It’s grown from a very humble project to simply give us basic remote access to a machine in a clean operating environment to a much more useful general service system.  Big secret: it’s a Linux-based project.  The entire “distro” is essentially built from scratch, however, and uses such classic tools as busybox to minimize space usage.  What really sets TSS apart from the Linux solutions we’re using now such as KNOPPIX (CD) and Slax (USB drive) is the fact that the entire system runs out of an initramfs, eliminating the need to find the rest of the system after booting has started.  This presents some extremely tough limitations, but solves the biggest problems I’ve run into with Linux live CD and Linux live USB distributions.  Sometimes the rest of the system can’t be located at boot-time, which on KNOPPIX in specific “crashes” to a “very minimal shell” in which you can essentially do nothing at all.  When a CD drive is old, dirty, or otherwise impaired, you can have these failures as well as major problems when the KNOPPIX cloop driver chokes on every little scratch in the disc surface.  Slax sucks because it constantly spews out OOPSes in the kernel log when you don’t use a “fresh mode” to boot, and since it doesn’t come with any of the specific tools we need (and the only way to properly add them is to make a squashfs thing I don’t feel like dealing with) it’s a huge pain in the rectum.  Enter the Tritech Service System: completely customized for our own exact needs, reliant only on the bootloader working as expected and not locking a CD drive or USB flash drive in the process, and EXTREMELY FAST to work with.  Plus I made a cool green-on-black splash screen to go with it.  The fact that it easily installs on any Windows XP machine as a boot menu option seals the deal.  NO OTHER COMPUTER SERVICE COMPANY HAS THIS POWERFUL TOOL.  Granted, any sufficiently skilled Linux nut could do what I’ve done, but most Linux nuts would rather deal with KNOPPIX forever than go to the trouble of making their own custom distro from scratch.  The lack of Linux-knowledgeable techs out there makes it impractical for a large company to even bother with.  Now all of you that thought my claim of being the only company that is capable of doing this was audacious can understand exactly why I can make that claim and support it.  We’re not to the point that I’m willing to release it to the public yet, but it’s been so much better than KNOPPIX or Slax on every system I can boot it on that I’ve fast-tracked my development on it and I’m making it a very high priority on my list of things to do.  Stay tuned.
  • We cleaned up the shop.  I’m not kidding: we REALLY CLEANED UP THE SHOP, big time.  One unfortunate problem with computer geeks is a complete lack of organization, particularly with a shop as busy as mine usually is.  We didn’t have many customers at all over the past week, so I took full advantage of the opportunity to give the place a brutal cleaning.  We’ve moved all the security camera equipment, run permanent wires that we’ve been using temps for for months now, purchased lots of additional storage bins and shelving and made excessive use of all of it, organized and better proceduralized the process of shuffling customer equipment in and out and keeping said equipment organized and together, tossed out an insane number of disintegrating cardboard boxes we REALLY didn’t need, built a central working “kiosk” at the front of the shop where we can print invoices and perform other administrative tasks (where previously all of this work was done on our own individual workstations in the back of the shop), optimized the table configuration for better access to existing power and network cables, completely cleared off the bird’s nest of wires that had formed on the front tables due to lots of working and no time to clean up after it, and a ton of other minor things I don’t even want to think about right now.
  • I mowed the lawn at my house.  Like an idiot, I did so at 4 PM instead of waiting until it started to get cooler in the evening.  Boy, push mowers SUCK.
  • Yes, the last item was comic relief.  So is this one.
  • I recently managed to use Linux to fully change XP HALs, rendering all of my disparate XP “clean system images” obsolete.  I’m actually looking at ways to get chntpw/reged to be easily scripted.  They’re the most useful and most underdeveloped Windows tools on Linux that I know of, and a reged that is inherently script-friendly (without using expect) would be a boon to the Tritech Service System, as well as frustrated sysadmins in general around the world.  With a fully scriptable reged/chntpw, I can write a simple package for TSS that replaces HALs on images without any additional effort, making life much easier for my technicians (and myself) in the long run!
  • We also created a custom HAL.INF file that opens up access to all the XP HALs from XP itself.  Reverting to “Standard PC” pre-imaging and then using this file in the images to allow changing to, say, “ACPI Multiprocessor PC” would be much easier than having six images per XP type (home retail/OEM, pro retail/OEM, MCE OEM) and would save TONS of disk space on the poor old server.
  • I’m also writing a custom Web-based Tritech administration system using PHP and MySQL (well duh), which will let me throw a bunch of crap out of my filing cabinet and go nearly paperless.  Invoice creation will also be much easier, because invoices, work orders, and inventory usage share huge amounts of information between them already, so invoice creation would essentially be a two-click thing for most jobs.
  • We raised our prices.  Let’s face it: we charge by the half-hour already, and $80 per hour is outrageously cheap for access to my skills and the skills of the technicians I contract work to and teach my ways to.  We may need to go up again, and I’d love some feedback on that.  I feel that we should because we’re selling a level of quality that Siler City, Pittsboro, Goldston, and all the other towns in Chatham County can’t get within an hour’s driving distance, but of course I fear pricing myself out of business at the same time.  Given the economic climate right now, I’m not keen on going up too fast, but we could use some capital SOON.  Plus, that pesky $65,000 in small business loans is still hanging over my head, sucking up essentially all of the “profits” and converting them to expenses.  The rest is used to buy what we need to keep serving customers in the future.  Even if we charged $100 per hour, our competitors’ bench fees and rates put them at or above that price tag on almost every job, and unfortunately Chatham County’s pre-existing computer service shops apparently have the worst customer service and/or technical skill you can imagine, considering we hear horrible anecdotes from multiple customers on a DAILY BASIS about who we’re supposedly “competiing with.”  I’d hardly call them competition at this point; we’ve had two separate laptops come in that I personally serviced where Siler City’s established computer shop I won’t name had charged $100 or more to look at each and came back with the answer that “it’s unfixable, you need to buy a new laptop.”  In both cases, I fixed the problem in less than five minutes.  One was a loose LCD data cable behind the laptop screen, the other was a RAM stick either making bad contact or the SODIMM socket going out (I moved the stick from one socket to the other.)  I’m so upset when these things happen, and I know I shouldn’t be, but I feel that these things tarnish the reputation of the industry as a whole and bring customers to my door wondering if I’m going to screw them over before they’ve even met anyone on my staff.  I digress a bit, though; should I raise prices from $40 per half hour to $50 per half hour?  What do you think?
  • We now have four technicians that come here to get jobs regularly, and all of them are awesome at what they do.  They really care about my customers, and that’s what I like!

That’s about it for now.  I have a repair job I’m working on that I must return to, so I have to wrap this post up.  A construction company owner and long-time client of mine got a HORRIBLE virus infection, and I have gone very far out of my way to personally see to it that he’s back up by 8 AM tomorrow (Monday) morning.  His system went down completely on Friday.  If you’re a client or potential client of my business, I want you to know that just like I’m doing for his business, I will bend over backwards and do whatever I must to make sure you’re taken care of.  I’ll post more anecdotes about how I do this later.  That’s all, folks.  Happy computing!

UPDATE BELOW.

You might be wondering where all my “Angie’s List Sucks” commentary has gone.  Here’s the explanation that I emailed to a reader, which turned out to also be a perfect blog post waiting to happen:

I talked to the COO (Chief Operations Officer, the manager of all other lower managers) of Angie’s List and everything has been resolved to my satisfaction.  Apparently the review also had zero effect on how Angie’s List rates my company because the person indicated no work was ever performed, so it wasn’t as big of a deal as I may have made it out to be.  In life one must pick their battles; I got to the top of Angie’s List, said my piece, and while we obviously don’t agree on everything, I accomplished enough to satisfy me.  The problem wasn’t the review so much as the fact that after the review was “reconfirmed” Angie’s List’s employees essentially ignored me thereafter.  Had someone simply explained to me that the review doesn’t even count and that I am the only computer company in my geographical area of the list in the first place, perhaps I wouldn’t have been so royally pissed off about it, but when I perceive that someone is ignoring me entirely, it only serves to inflame my annoyance to higher and higher levels.

The problem is a customer service problem.  He said that he’s re-examining how the staff at the company handle things because of this problem.  I still believe that Angie’s List’s business model is flawed and possesses conflicts of interest, but at the same time I realize that Angie’s List is likely incapable of changing their business model at this point due to massive venture capital infusions and the resultant control imposed by the interests of the VC firm(s) involved.

Angie’s List is not my business, and I have raised some issues at Angie’s List that may help them to fix some of the problems in how their staff members handle customers.  My opinion of their business model has not changed, but now that I have issued my input directly to the top operations officer at the corporation, they could change in the future and at least become a more customer-conscientious operation.

I removed all of the previous “Angie’s List Sucks” content from this blog as a show of good faith, and because my problems have been addressed adequately.  I regret that I had to be such a jerk to them and force an escalation to the top officers, but sometimes a consumer advocate such as myself has to be willing to do such things in order to exact necessary change.  When a business grows, there is an increasing disconnect between the lowest level staff and the highest officials.  I have seen previews of this disconnect in my own business; this is also the reason that huge companies such as Verizon often don’t seem to have higher-ups who care about the individual.  It’s not that they don’t care, it’s that the digestion (and suppression) of information between layers of management means information is lost on the way up the totem pole.

I have other battles to contend with in life that are far more problematic for my business, and Angie’s List has become insignificant in its effect on my business.  Because of this fact, I’m not going to bother with any further chatter on Angie’s List without additional provocation.  I will, however, caution anyone that deals with any business on issues such as trademark and copyright infringement (which Angie’s List falsely claimed I was engaging in) to take the time to understand the truth about “fair use” doctrines in said laws.  Even if Angie’s List sued me for copyright infringement over posting a brief 3-4 line review about my business on a personal blog, they would never have stood a fat chance in hell of winning such a case because of the four tests that determine if a use of copyrighted material falls under the fair use exemption.  The noncommercial nature of my blog, the lack of any kind of profit from my personal blog, the lack of originality of the work in question (a mere collection or summarization of facts is not copyrightable in general), and the purpose (criticism of said material) of my use all play a part in reinforcing exemption under fair use.  As for trademark infringement, that can only happen if I use someone’s trademark in a way that confuses consumers about my affiliation with that business, and if anyone read my blog and thought I was somehow commercially affiliated with Angie’s List, they probably need to go back to elementary school and learn to read better.

Indeed, Angie’s List still wants me to sign off on that form that admits a violation of their copyrights, and Angie’s List will never receive any such paperwork, particularly since my business did not post the information in question and they sent the notice directly to me at my business, as the business owner.  They misinterpreted the nature of my blog and asserted rights which my posts did not violate, so why on earth would I ever sign and return a form admitting that my business committed a violation of someone else’s rights when no such thing happened?

The consequence for not returning that form is essentially “suspension from Angie’s List for a year and revocation of current outstanding awards.”  Angie’s List has so far had a net negative impact on my business since one of my kind-hearted pre-existing customers put me on it in the first place, and all I want is to be permanently removed from the list anyway.  It seems to me that I get a sweeter deal if I DON’T return the letter.  Thus, it will remain scanned in my computer for eternity but otherwise totally unused.

Wherever Angie’s List goes from here, it will do so without bothering me or my business, especially since we STILL will not accept Angie’s List referrals due to my past experience with the type of customers they seem to attract.  Stay tuned for my next post and you’ll read about something that is far more idiotic and disgusting than this whole Angie’s List deal has been–and one that directly hurts my potential earnings in my business.

UPDATE, SEPTEMBER 18, 2009:

This post was originally created in April 2009, and since then, I myself have reconfirmed that Angie’s List does, yet again, indeed, suck.  My prior posts about Angie’s List’s business model, which I deleted without a way to “undelete,” are still partially valid in that the way Angie’s List works is more of a “money funnel” for the owners than a review site that works.  I’ll make a separate update post to cover the entire update, but if you’ve read the above message and think I no longer have an issue with Angie’s List, think again.  More bad customers have surfaced, and I have come up with a more general criticism of the service than I had before.  It seems that the users of Angie’s List are a worse problem than Angie’s List the company itself!  Search the blog for posts tagged “angieslist” and you’ll find the new version of “Angie’s List Sucks.”

Thanks to a helpful developer at the ZSNES forum, I’ve found the solution to the VIA C7 platform speed/timing problems with certain programs.

Edit C:\BOOT.INI and add the /usepmtimer switch to the boot command line for Windows XP.  This uses a timer that is stable even when in power management modes, which means that the throttling of the C7 CPU and accompanying chipset do not affect its timing characteristics.  Some applications like ZSNES rely on a very precise and stable timing mechanism (in the case of ZSNES, speed regulation depends on QueryPerformanceCounter) and the normal timer on this platform is unstable in certain power management states.  Also, I used WCPUID’s real-time clock display to figure out that the System control panel (sysdm.cpl) reports the frequency wrong on the C7 and that it is in fact running at 1200 MHz when under a full load, despite Windows’ insistence that somehow my CPU is going as low as 198 MHz when the lowest ACPI P-state is 400 MHz.

Now I can finally finish playing Final Fantasy V.  :)

I changed my Sylvania G (original, non-Meso) netbook to Windows XP/Linux dual-boot to test some software I’m working on, and discovered that while Windows XP certainly does boot and run in general on the G, some kind of system timer or timing loop is severely out of whack!  I wanted to use my little G as a portable gaming machine from the Windows XP install, and to my horror, ZSNES couldn’t decide what speed it wanted to run!  Now, I’ve never had a single issue with ZSNES on any computer I’ve ever tried it on, even preferring the Windows port of it over the Linux native one, and not once has a problem existed with ZSNES that I couldn’t find an easy fix for, until now.

I’ve been researching the matter and gathering evidence, and I may have a potential answer to the problem.  Linux requires activation of the VIA C7 Enhanced PowerSaver module e_powersaver to clock the VIA C7 CPU properly between 400 and 1200 MHz; apparently the default speed of the CPU is only 600 MHz instead of 1200 MHz, because Linux installs without e_powersaver and Windows XP report a ~600 MHz processor where a 1.2 GHz one exists.  Here’s the extremely weird part, though: if I check the System control panel shortly after bootup and read the clock speed, sometimes it registers a clock speed of 198 MHz (about 200 MHz) which isn’t even one of the ACPI P-states for the VIA C7-M 1.2 processor.

I’ve unlocked the Windows HAL options (I’ll post how to do that at another time) and switched between ACPI Multiprocessor PC (the default for the image I used) and ACPI Uniprocessor PC and MPS Uniprocessor PC, all of which use the local APIC for IRQ routing but the MPS variant of which doesn’t theoretically touch ACPI.  Nothing seems to have helped.  I have two working theories as to what’s going on here, and how it might be fixed:

  1. A calibration loop in Windows a la BogoMIPS in Linux is being screwed up by the VIA C7, or
  2. The VIA C7’s PowerSaver feature is ignored or incorrectly used by Windows (via generic ACPI P-states) and it’s throwing off some kind of timer that ZSNES relies on for proper emulation of the 65816 CPU and SPC audio processor.

So far, I haven’t found a solution to this problem, and Sylvania’s site is extremely unhelpful, with only Windows drivers and a new version of gOS, but no BIOS updates or further information.  I’m looking into the technical stuff on the VIA c7 now, and it looks like the solution (assuming Windows isn’t doing something sinister) lies in clever manipulation of the C7 model-specific registers (MSRs) that control the processor’s power state.  If ZSNES is mis-calibrating some kind of tight internal timing loop because of some kind of CPU clocking issue, then tweaking the MSRs may be the solution to the problem.  Unfortunately, I’m no Windows developer, so I’m not certain how I should approach the problem.  I don’t think it’s isolated to ZSNES either, but I don’t recall what I saw that justifies that belief.  In any case, I’m working on it.  It’s just one of many pesky projects I’m hitting my head against at the moment.  We’re still working on that remote access software package; in fact, someone found our site and called us, and I had to sort of turn her away.  It’s all a bit behind schedule, and there’s not really much I can do to make things proceed any more quickly.  Stay tuned…

Remember our post about receiving a STOP 0×0000007E error after moving to an AMD processor from an Intel one?  It turns out that the plot has thickened a bit more, and Windows XP SP3 can sometimes cause the same problem–and do so for the exact same reason: intelppm.sys!  We’ve also figured out new ways to fix the problem that are easier than in our original post, which we’ll divulge now.

Boot from your Windows XP CD and hit “R” at the “Welcome to Setup” screen to reach a recovery console, then log into the Windows installation in question, as in the instructions from the previous article.  The next step, once you get to a command prompt (i.e. “C:\WINDOWS>”) is far more simple, elegant, and easily understood!  Type this command, without quotes:

“disable intelppm”

Type “exit” after that and it’s all done and over with.  Sometimes us techies get so used to doing things the hard way that we forget the simpler solutions.  If you’re prepping a system for a change away from an Intel processor platform and want to avoid this problem, go to Start > Run… and type in the following command to pre-emptively disable intelppm.sys from loading:

“sc config intelppm start=disabled”

Sometimes the STOP error is accompanied by the text SYSTEM_THREAD_EXCEPTION_NOT_HANDLED as well, though I’ve never personally seen that, it’s technically what that STOP number means.  In general, it’s a waste of time to screw around with Microsoft’s update that handles the problem, because intelppm.sys shouldn’t be there at all anyway for AMD platforms; it’s the Intel CPU microcode update driver that sends new downloadable microcode into the processor, usually to fix errata (bugs) or to improve performance, and it is only logical that Intel’s microcode update software would make an AMD processor freak out and throw a wacky exception.  The problem is that apparently Intel’s driver doesn’t check to ensure that the CPU in use is actually an Intel chip, which is either bad programming at Intel or intentionally done to make it look like AMD makes really glitchy chips.  Either way, Intel is wholly to blame for the issue and could have avoided the problem with a very simple check that would have taken all of 30 minutes to code!

Be aware that other programs frequently cause STOP 0×0000007e errors as well, primarily security software.  I’ve seen reports that ZoneAlarm getting damaged has caused this before, and the Zone Labs engine is used in some other security software we’ve come across, such as the CA Internet Security suite.  (ZoneAlarm sucks, so you shouldn’t be running it anyway.)  What I’ve written here ONLY applies to systems with a non-Intel processor trying to execute a driver that is hostile towards non-Intel CPUs.