Dec 16 2011

Android Lacks Polish

I’ve been an Android user since the HTC G1 first came out. Since then, I’ve had and used the Google Nexus, HTC G2, and the Dell Streak 7. I’ve tried to like my Android devices but they lack polish or frustrate me in several other ways. The first annoying lack to details is noticed immediately as soon as you un-box the device. Just turn over the device and you’ll see three or more logos, the maker logo (such as Dell, HTC, or Samsung), the carriers logo (T-Mobile or Verizon), and the product name or other insignia. Apple products just have the Apple logo. On Android devices, you’ll have different logos each placed on the back plate separately, the vendor’s logo will be etched into the back while the carrier’s logo will be some cheap vinyl sticker placed afterward.

My personal pet peeve with Android devices is the craziness with moving apps from the internal device’s memory to the external SD card. Even relatively recent Android devices such as the Google Nexus and Dell Streak 7 have less than 1GB internal memory so if you download a lot of apps you’ll soon need to move apps around to the SD card. But some apps you can’t move to the SD card so that presents a different issue.

Who cares if the phone’s memory can be extended by using higher capacity SD cards if a one year old device can’t even be upgraded to the latest Android version. So the whole thing with extensible SD cards and moving installed apps from the internal memory to the SD card I find completely and frustratingly useless. The whole concept of an Operating Systems is that best manages the resources of the device, the Android OS should best manage installed applications in either the internal memory or SD based on some intelligence. Why am I doing Android’s job?

Another concern I have with Android devices is that they usually come with a lot of pre-installed apps. For example, my Dell Streak 7 came with Kongregate Arcade app which I can’t remove and reclaim the wasted internal memory. Similarly, carriers and vendors add and customize Android so that no two devices have the same user experience.

My last concern with Android’s lack of polish is its dark goth color scheme. Most application’s menu and option screens are as if they were designed by a goth listening to The Cure. The Android UI design is not “Just Like Heaven.”

Dec 2 2011

Retweet November 2011

From time to time I just blast tweets about software development, project planning, team dynamics, or whatever else comes to mind. Here is a synopsis of recent tweets and rants. If you want to follow the conversation follow me at techknow and/or juixe.

Software Development

  • Making good UI means making ugly choices.
  • There was a time when having a computer made you a nerd. Today, people being “good on Facebook” does not make you a nerd.
  • Love working with jQuery Mobile.

Thought Leadership

  • Everyone has a vision, the difference is the scope, lens, and filter around the vision.
  • Tomorrow is a fresh opportunity to be amazing and amazed.
  • You ask stupid questions, you get stupid answers.
  • I’m not on StackOverflow, so when people ask for my SO reputation I instead give them the the monthly referrals I get from SO.

Product Placement

  • Sweet. Amazon just sent me a $5 credit because of a “technical issue on the website” that I am not even aware I encountered.
  • Found my first handheld device… An HP iPaq RX3715 running Pocket PC 2003 Pro w/ Outlook 2002. It’s still in great condition!
  • David Pogue wrote his review of the Kindle Fire, sounds like he wrote it from his iPad.


  • OH: Don’t they have Cliff Notes for the DMV driving manual?
  • OH: Your brain cells are sexy!
  • OH: Sometimes when you put things in the closet it doesn’t mean you have a clean house.
  • OH: don’t do it but it you gonna do it make sure you get paid for doing it.


  • I’m turkeyed-out. I had all major food groups and at least four different meat groups.
  • McDonalds should have a McTurkey with McStuffing.
  • Thanksgiving is the time to eat food you don’t like, I mean why do you only have it only for Thanksgiving?
  • The holidays forces families to come together because everyone else is with their families.
  • I dislike food holidays. Especially when everything is so good.
  • Instead of counting sheep, I’ll be counting turkeys tonight.
  • Gobble gobble gone.

Oct 15 2010

Retweet September 2010

From time to time I just blast tweets about software development, project planning, team dynamics, or whatever else comes to mind. Here is a synopsis of recent tweets and rants. If you want to follow the conversation follow me at techknow and/or juixe and I’ll be sure to follow back.

Software Development

  • Email is not the future of UI. I dislike services that use email for data entry or input device.
  • Common source of errors, cut and paste!
  • Functional specifications are often times as misinterpreted as the Bible.
  • I’m a programmer by day, developer by night, and hacker in between.
  • Some features are disguised as bugs.
  • One man’s feature is another man’s bug.
  • Void is my favorite return type.
  • Code Commandment: No code shall PrintStackTrace
  • Show me your implementation and I’ll tell you about yourself.
  • The words “it does not compute” does not compute, they are not in my default dictionary.
  • Get your hack on!
  • When a developer says, “pretty much working” it does not mean production quality.
  • I’m not sure that a software application larger than “Hello, World” can be bug free.
  • If there is a giant red ‘Do Not Press’ or ‘Active Dooms Day Device’ button, someone will press it.
  • Every design decision should be a conscious choice, not an accidental assumption.
  • Will work for intellectual stimulation.
  • If you are a User Generated Content site saying you will censor a topic will only inspire your users to find ways around that.
  • What’s your default setting for the Ultimate Bitch Mode setting?

Team Dynamics

  • Just like how there are no any stupid questions, there are no any stupid ideas.
  • In order to get the most out of crowd sourcing you need to source your crowd.
  • Look past people’s past.
  • If you are going to shot for the stars you best have a rocket ship.
  • When the stars align, shoot for them. And if you shooting for the stars you best bring the big guns!
  • When shooting for the stars I bring an Klingon Bird of Prey!
  • And on the 8th day God said, “Let there be a TPS report.”
  • Life is too short to sell yourself short.
  • Don’t think in problems. Dream in solutions.
  • Never say maybe.
  • The next big thing usually starts as a small idea.
  • People will always push your buttons, you need to know how o deactivate those buttons.
  • I don’t fear being wrong. I fear not being able to recognize when other people are wrong.
  • You can’t delete emails once sent, but you can read them before you send them.
  • For every great idea there are hundreds of ways to mess it up.
  • Show me the monetization.

Product Placement

  • Mark Zuckerborg is a geek super evil privacy villain.
  • Boing Boing should just sell out to Rupert Murdoch.
  • Panda Express’ logo says, “Gourmet Chinese Food.” Really, Gourmet? Chinese?
  • American Apparel might file for bankruptcy, maybe China can buy it out and rename it to Chairman Mao Apparel.
  • The company Manpower has a very male chauvinist sounding name.
  • If only mother nature would have patented all her innovations, we would all be paying royalties to her.
  • Why does it cost $30 for Apple’s iPhone earphones? They like $.50 worth of material and $.25 of labor!
  • If you Google for love you will find about 1,930,000,000 results (0.23 seconds). At least one of those results is meant for you.
  • Google Finance should have a “I’m Feeling Lucky” button.
  • The cake is a lie. Do no evil is a lie.
  • The next version of the iPhone should be called ivePhone after it’s designer Jony Ive.
  • Upset that I’ve had to purchase yet another iPhone headset!!! At $30 a pop the white earphone are Apple’s razor blade business!

Resume Writing Tips

  • Resume Writing Tip: Use a good phone line for a phone interview.
  • Resume Writing Tip: At a minimum candidate should be able to figure out our URL by a) clicking the link on job description b) from my email.
  • Resume Writing Tip: The minimum research a candidate needs to do is lookup the company website himself prior to interviewing.
  • Resume Writing Tip: Ensure your cover letter or email is in one font, it shouldn’t look like you cut and pasted from somewhere else.
  • Resume Writing Tip: I would leave out MS Access 2000 out of technical skills. It’s also not necessary to list HTML, DHTML, and HTML5.
  • Resume Writing Tip: Proof read your resume and fix obvious typos, you can’t say you detailed oriented if you have basic spelling errors.


  • I want to put a ding in the universe. – Steve Jobs
  • The problem with Google is that Eric Schmidt is creepy. – Daring Fireball
  • They [People] want Google to tell them what they should be doing next. – Eric Schmidt
  • People aren’t ready for the technology revolution that’s going to happen to them. – Eric Schmidt

May 1 2010

Software Engineering in Pictures

In a typical day, software engineers, use diagrams, charts, and a ideograms to represent the software systems we work on. The biggest problems with software can also be described visually, such as the following image which tries to explain problems of software engineering.

Software Engineering Explained

Software Engineering Explained

When software engineering is that complicated, just imagine how the software application produced in such an environment looks like.

How Software Looks Like

How Software Looks Like

Creating a clean, simply to use, functional application is harder than you think. Only a few companies have been successful with simplicity. Most enterprise applications look like a mosaic of buttons and text fields.

Stuff That Happens UI

Stuff That Happens UI

Here is a screen shot showing the complexity of a software application.

FileMatrix UI Complexity

FileMatrix UI Complexity

If you have any images, graphics, diagrams, or charts that illustrate the complexity of software engineering feel free to share in the comments.

Apr 17 2010

More Hats, More Problems

Software users didn’t take Knuth in college and you should not expect them to have a Computer Science degree to understand how to use your application. There is no worse assumption that a software programmer can make than to assume that end users know what you are talking about, especially when there is so much miscommunication involved in specifying, designing, implementing, testing, and releasing a software application within an internal team. Your users don’t understand your language, they don’t understand what you mean when you say object-oriented, exception handling, concatenated document, application server log file, null pointer, database query and they don’t care so don’t use these expressions in labels or descriptions in your UI! If you have to explain your User Interface to a end user, your are doing usability wrong. Forget leaky abstraction, there is nothing worse than leaky implementation details in your UI. If your users have to use suspended disbelief and take your word for it to understand how your User Interface works, you should go back to the drawing board.

One of the reasons why the User Interface and User Experience is so horrible in applications, especially internal and enterprise applications, is that they are done by programmers, usually prototyped quickly, and shipped soon thereafter. The truth is that programmers have to wear multiple hats, depending of your company size, these included tester, computer programmer, domain expert, UI designer, type editor, IT, security guru, database administrator, system architect, document writer, and more. In addition of having to fill all of these roles, there usually must be done in a tight deadline with many technology risks, unknown factors untested partners, and already late dependencies.

The simple fact is that the more hats a programmer wears the less productive he will be. If you have programmer having to manage your version control system, update your application UI, and debug memory you are not getting your monies worth. The more hats you have developers wear, the more time it will take to context switch, the more time you spend tracking down issues, and the more you pay in the end.