Tuesday, May 13, 2008

Review: Rich Dad Advisor Series: Own Your Own Corporation: Why the Rich Own Their Own Companies and Everyone Else Works for Them

Rich Dad Advisor's Series: Own Your Own Corporation: Why the Rich Own Their Own Companies and Everyone Else Works for Them (Rich Dad's Advisors)
by Garrett Sutton, Robert T. Kiyosaki, Ann Blackman

Read more about this book...

When you start a business you are faced with a flood of decisions, some of which will have long lasting ramifications.  Will your business be a sole proprietorship, partnership, corporation, or limited liability company?  Which one is best?  S Corp or C Corp? 

First of all, this book validates the old adage that you just can't judge a book by its cover for two reasons: 1) it doesn't only just cover corporations and 2) it is a book with Kiyosaki's name branded on the cover that actually contains good solid advice inside.  I'm serious-- this is the only Kiyosaki book that I would actually recommend (but only to a very small audience). 

This book is a perfect primer on legal entities for entrepreneurs. 

Once you disregard Kiyosaki's ramblings about childish fantasies, treasure hunting and ships, you get a book written primarily by Garrett Sutton, wherein he carefully presents a high level overview of the various legal entities, and their pros and cons.  Sutton carefully steps through the intricacies of each of the legal entities (S and C Corp, LLC, Limited Partnership, General Partnership, sole proprietorship, and more).  Salted in the chapters are fictional examples that illustrate the disastrous consequences of choosing poorly (or acting on bad advice) and common problems.

Perhaps most surprisingly, is that this book even touches on some tax issues like what happens when consultants opt for C corporations (hint: they become deemed Personal Service Corporation and you get slammed with a 35% tax rate).  Personal Holding Corporations (PHC) are also touched on and perhaps most surprisingly of all, Sutton delves in to the legalities and hurdles with offering securities, SEC registration, angel investors, and more. 

My distaste for Kiyosaki's writing aside, I'm happy to recommend this book, because I rarely come across a book on the nuts and bolts of business entities that is readable. 

Labels: , , ,

Tuesday, January 29, 2008

Book Review: Writing Solid Code

Writing Solid Code: Microsoft's Techniques for Developing Bug-Free C Programs (Microsoft Programming Series)
by Steve Maguire

Read more about this book...

I finally got around to reading Steve Maguire's Writing Solid Code: Microsoft's Techniques for Developing Bug-Free C Programs, thanks primarily to a coworker who lent it to me to read over the weekend. 

Written in a personal, easy flowing style, it contains many suggestions for improving your coding process, when developing in C.  It is a fast read, and I liked the book even though I felt that much of it was somewhat outdated.

Steve Maguire wrote this book in a different time, a time before OOAD, C++, Java, RUN, XP, Agile, XP, and TDD.  The book grew out of his experiences at Microsoft and contains practical advice and lessons learned about software construction and projects.

He even starts by asking two questions about bugs found in code: 1) How could I have automatically detected this bug? and 2) How could I have prevented this bug?  Therein, he starts to build the process and techniques for eliminating bugs.

The generalized advice is certainly still valid:

  • enable compiler warnings and investigate each one; 
  • use assertions;
  • fix bugs now (don't wait until "feature complete" to go back and fix them);
  • don't quietly ignore error conditions;
  • don't write multi-purpose functions, focus on very specific functions that can be checked;
  • write code for the average programmer (make it readable);
  • don't wait until a bug to step through the code;
  • developers are responsible for finding bugs;
  • porting code is new development and should be tested as such;
  • carefully bound check arguments

Conclusion

The book is an interesting snapshot in time, and contains a lot of good advice.  However, the book is just simply too dated to be recommended.  What was once a ground-breaking collection of cutting edge advice now should be common sense for most experienced developers.

It was recommended as a must read "classic."  It isn't.

Labels: ,

Saturday, January 12, 2008

BlackBerry Curve 83xx versus T-Mobile DASH

image

This week I finally decided to end the love-hate relationship I had with my T-Mobile DASH and purchase a new phone.  Being that my experience with the Dash was so underwhelming and disappointing for the year that I used it, I considered forgoing a PDA/smartphone altogether.

I was misled by the reviews online by CNET and PCWorld, so much so that I almost didn't get the BlackBerry. It wasn't until after I purchased the Curve that I realized that both the CNET video review as well as the PCWorld reviews were factually incorrect and biased (both claimed that the Curve doesn't have Wifi; it does).   The PCWorld video says that the BlackBerry doesn't have GPS, but neither does the Dash (which wasn't mentioned).

I'm glad I ignored the professional reviews and purchased the Curve, as I can honestly say that the BlackBerry is much better than the T-Mobile Dash/HTC Excalibur in almost every category.

   

Errant and Biased CNET video

Dash (HTC S620) Deficiencies I Experienced:

Before I get into a comparison of the two devices, let me just list out a few of the complaints I have about the T-Mobile Dash:

Cracked LCD.  Within six months my LCD screen cracked.  This is a common complaint among Dash users, and guess what -- it isn't covered by the warranty.  You can order the replacement LCD on EBay, purchase a T9 Torx driver, and fix it yourself.  The cost will be approximately $80 in parts, plus your time.  Click HERE for a youtube video on how to replace the LCD.

I has been recommended that you file a complaint with the FCC if you LCD cracks.  T-Mobile may replace your defective Dash with another phone. 

Further, the Dash LCD screen is dim and difficult to read in direct sunlight, much like my older RAZR.

Internet Explorer.  Although I didn't purchase the phone so I could surf the web, I did find that the browser would hang occasionally, requiring me to kill the browser and start again.  Several times I had to pull the battery to restart the phone after the browser hung.

Also, I found it ironic that CNN Mobile is automatically added to your T-Mobile bookmarks, but you will receive a your browser is not supported message when you go to the CNN Mobile site.

Intermittent Freezing.  Although rare, several times I experienced a complete system hangs.  I'd have to pull the battery for that.  

Terrible Call Quality.  The Dash had terrible call quality, especially in even mildly windy conditions.  I would often find myself shielding the phone and contorting to try to hear the caller when I was outside in a light wind. 

Additionally, when paired with my Bluetooth headset, the calls would be glitchy.  After my second Bluetooth headset (which I used with other phones without any problems) I identified this as a Dash issue.

Broken Jogger/Volume Slider. This was the most annoying thing about the Dash -- the "jogger".  There are two touch sensitive areas on the right side of the phone which were intended to be used for volume control and as a scroll wheel.  It would have been nice, except it didn't work and it was disabled (there is now a registry hack to enable it).  The "jogger" was only enabled to control the volume while you were on a call.

However, many times I would be talking to someone and spontaneously hear the jogger triggered "doop...doop.." sound telling me that the volume was being raised or lowered.   It was so unreliable I disabled it through the registry until I upgraded to Windows Mobile 6 (which lovingly overwrote my registry setting).

Alarms of the Undead. Dash alarm had a bug, confirmed by many users (including me). If you set more than one alarm, the Dash only lets you edit the last one in memory, causing the alarms you set earlier to go off even if you turn off the alarm feature completely.  You could never clear, disable, or kill the first alarm. 

Although they eventually fixed that issue, I still see at least one alarm related issue -- that when I power up the device the "deleted" alarm is still active until the "fix" clears it.  As a result, in the time between power up and a fully operational phone, my phone will start loudly blaring away each undead alarm, before the phone is initialized enough to allow you to disarm them or it clears the alarm queue on it's own. 

It is very embarrassing when you power up your device after a weekend in a meeting and for fifteen to thirty seconds your phone is loudly blaring out alarm tones.

Broken IMAP E-Mail.  Now that Google has rolled out IMAP, I have migrated all of my email domains to Google Apps.  I no longer have multiple copies of emails-- I have multiple views of the same synchronized mailbox from the web, outlook and on my smartphone.  At least if it worked. It was also reported that the Dash won't communicate with some mail relays.

It doesn't.  The Dash will download all of the headers, but won't download the bodies of the emails about half the time (more reports here).  This was essentially the last straw that made me start looking for a better phone.

No Bluetooth DUN Profile.  T-Mobile removed the DUN profile, which means you can't tether the Dash as a modem over Bluetooth (yes, the HTC FAQ says you can, but that was before T-Mobile removed the feature from their ROMs).  If you are adventurous, you can enable a DUN profile with a little hackery (article here). 

Alternatively, you can use the Bluetooth PAN (Personal Area Network) profile with Internet sharing instead.  You have to run the Internet sharing app on the Dash, and connect your computer to the Dash via a Bluetooth PAN.

An Honest Features Comparison

Here is a quick look at the differences between the two phones:

T-Mobile Dash BlackBerry Curve Titanium/Pale Gold
Wi-Fi YES YES
Cellular GSM, GPRS, EDGE GSM, GPRS, EDGE
Camera 1.2 MP 2.0 MP
Built-in Camera Flash NO YES
Stereo Bluetooth NO YES
Speakerphone YES YES
Music Player YES YES
Music Player Mute for call and resume afterwards NO YES
IM supported AOL, Yahoo, ICQ; MSN messenger (two different applications) AOL, ICQ, Yahoo, MSN, GoogleTalk, and BlackBerry Messenger
3.5" headphone Jack for music NO YES
Organizer synch with Google Calendar NO YES
Can support Bluetooth GPS NO YES
Supports MicroSD cards greater than 2GB NO YES
Can record Video YES NO
Play Video YES YES

 

Conclusion

The Dash is a terrible smart phone. 

As far as capabilities, the only thing that the Dash can do that the Curve won't is record live video.  In every other category the BlackBerry is at or above the Dash in features, robustness, and ease of use.

Consequently, I find myself wondering two things: 1) how much crack can a CNET Senior Editor regularly smoke during the course of a regular business day, and 2) how much advertising can revenue can purchase a good review at PCWorld? 

Labels: