Dilemma…

June 23rd, 2009

Dilbert.com
- image via Dilbert.com

Working at a company that makes consumer electronics, we often have conversations that are not exactly the same as above, but very similar. Perhaps it’s because, we share the same constraints, resources… especially money and time. It usually goes like this…

A: Our VOC(Voice of Customer) is very clear. It is our duty to deliver what they ask. Delivering something that is not 100%, is no better than useless.

B: That plan requires (blah.. blah.. blah..) which is costly, a burden in which we cannot afford.

A: (So our plan is to fail? … )

iPhone 3G [s]

June 9th, 2009

Apple iPhone 3Gs
Image from Apple.com

New iPhone has been released and perhaps to a naked eye it’s difficult to find the ‘Hardware’ difference between the new iPhone 3Gs and prior iPhone 3G. After all, software can always be upgraded with firmware update.

So here’s a simple summary of the hardware specification on Apple’s Homepage.

- CPU: 412MHz ARM 11 -> Yet unknown. However, Apple promises it would be as twice as fast on average.

- Weight: 4.7 -> 4.8 ounces

- Camera: 2 megapixels -> 3 megapixels – autofocus

- HSDPA: 3.6Mbps HSDPA -> 7.2Mbps HSDPA

- Bluetooth: 2.0 + EDR -> 2.1 + EDR

- Display: Added Fingerprint-resistant oleophobic coating

- Storage: 8GB -> 16, 32GB

The rest seems to be all related to software upgrade.

Link:
- iPhone Specification

Sony’s Motion Controller for PS3

June 4th, 2009

Here’s a new shocker from the E3. Perhaps a even more shocker for me than PSP Go. Hmmm. I take that comment back. I was very very VERY shocked with PSP Go, not because of its specifications, but rather the rumor of hideous, not-sony-like design turning out to be true. Anyway, unlike PSP Go, the motion controller for PS3 turned out to be more promising that expected. After seeing Wii Motion Plus and Microsoft’s Natal Project, we presumed it would be hard for Sony to bring up anything to match up. However, Sony has certainly proven us to be wrong.

All just too good to be true! New XBox

June 2nd, 2009

It’s simply all too good to be true. The new XBox presented at the E3 yesterday seems to have included two controversial technologies, Full body motion capture and Voice Recognition. We have always presumed these two technology to be crude, unfit for the general customers. And of course, I’m very skeptic with the level of accuracy the voice recognition is shown in the video. Oh wait, what about the customers who can’t speak English?!
However, as long as motion capture is involved, Nintendo has proven with Wii that it does not take a perfectly accurate algorithm in order to please the general customers. And who knows, maybe Microsoft did manage to extend that to a whole new level. Enough with the technical details, I’m sure we’ll see a whole lot more to come.

Update!
It seems motion capture on Natal is light-independent. In other words, people can be detected even in worst possible light condition.

Kick-Ass Ad from Intel

May 8th, 2009

LoL!
Now this is a way researchers and developers should be treated!

Other thoughts that pops to my mind…

Korean CE companies like Samsung and LG should loosen up their Ads and lose the corporate company feel. Perhaps a suggestion is to make advertisements that shine light on the individual employees. There are plenty of ’star researcher and developers’ for other companies, yet there seem to be none for Samsung and LG.

Verizon’s Mobile Hotspot(Update)

May 8th, 2009


It’s surprising how new devices often appear in close time period.

Even the most sofisticated and complex devices like mobile phones, which have a developing period of more than 6 months, appear or announced on the market within periods of weeks.
It’s probably safe to assume that most competitive companies research, try out pretty much all possible technologies and develop at least a prototype, so that once the company decides to actually make the device, they wouldn’t have to start from blank.

Another possibility is that companies have enough potential to replicate other companies’ device right away, that the only thing blocking them from actually doing it is patent infringement.

Either way, the axiomatic fact is that we are living in a crazy competitive world.

In Korea, we’ve seen KT release Wi-Bro portable router to the market. In US, Verizon Wireless has released MiFi2200 Intelligent Mobile Hotspot, pretty much the same thing based on different technology. Just a week after Verizon’s release, Sprint has released the exact same device.

Although the service plans for Sprint and Verizon differs significantly, they are still expensive compared to KT Egg. KT Egg is only 23 dollar(US) for 30gb. People in Korea seems to take the rich wireless environment for granted. On the other hand, coverage is a problem that Wi-Bro still faces.

Coverage and price are two vital factors when it comes to mobile wireless device. Of course, both solutions are not available on both country. However, comparing the simple facts, I would say it’s a draw. : )

Via –
- verizon-debuts-mifi-2200-portable-ev-do-router
- novatels-mifi-2200-portable-ev-do-router-comes-to-sprint
Image also from Engadget

Portable WiBro Access Point – KT EGG

April 27th, 2009
KT Egg
Photo from TodayPPC

WiBro has always been the controversial technology in Korea. As I’ve mentioned once in previous article, WiBro was launched in June 2006, and since then, it has failed to gain a fair share of users. The main reason there aren’t many subscribers is the relatively high price. Especially in a country, where people are used to high quality video streaming and where Internet Cafes are just around every corner, WiBro service is simply not worth its price. The problem is that because there aren’t many subscribers, they seem to have hard time cutting the price down. Regarding this dilemma, everyone seems to be searching for a solution, more likely a killer application that would increase subscribers without need for cutting the price down.

Perhaps the answer to the problem that KT has chosen is the ‘KT Egg’. It is a WiBro Access Point, which relays WiBro Signals and utilize them as local Wi-Fi. For those who are not familiar with terms, it means that people can use their Notebooks, PSP, NDSL, iPod Touch, any Wi-Fi enabled portable devices and use them as mobile device. Of course, the devices that are mentioned are portable, yet it can only be used in a certain area in the sense that one can’t continue using out of certain zone. With this device, people can use Wi-Fi while traveling by car, bus and even metro. After all, people say Wi-Bro works much better inside the subway than outside on ground.

I’ve always thought about creating such device. I even wrote a draft for a patent in 2006. Unfortunately, the idea was dropped for several reasons. The biggest reason was that there was hardly no benefit for the company. The beneficiary of such devices is the telecommunication service provider like ‘KT’. My design back then, was USB-enabled and looked more like dongles we see often nowadays. Also back in 2006, I expected the price to go down and WiBro to become prevailing internet technology in Korea. Unfortunately, that didn’t happen as I wished. I’ve witnessed numerous occasions where the technology has been there for several years, yet the politics, patents and company interests prevented them from being utilized. I personally feel this is the case for WiBro as well.

Link: http://www.zdnet.co.kr/ArticleView.asp?artice_id=20090426141336

Accuracy of Fingers

March 29th, 2009

During my recent visit to Hong Kong, I’ve seen friends who can send text messages on their iPhone without even glimpsing at the screen. And by the way, sound was set to mute. Surely they glimpsed at the screen from time to time. However, it was solely for proof purpose! I’m sure anyone who have had experience with an touch-screen interface, would be quite impressed, more likely, amazed.

brushes

This is not just one case showing great accuracy using one’s finger. On http://brushesapp.com/artists/, there are pictures that people drawn on their iPhone or iPod Touch using hands. There are even clips showing the whole process of drawing images using their hands and it is absolutely amazing.

I have to admit iPod’s touch screen keyboard is perhaps more user-friendly than any other devices on the market, accomplishing such level of speed and accuracy is not something ordinary people can do.

The reason why typing with fingers is so hard is primarily based on the size of the buttons. It is too small compared to our fingers. Of course, in other devices beside iPhone, the hardware itself poses greater problem. However, in this post, let us stick to the software user interface part.

The screen is small and there are 32 buttons crammed into half of the screen. Half of screen is 5.3cm wide and 3.8cm high. So doing the simple math, each button gets less than 0.63 square cm. Which is significantly lesser than the area our each fingers touch any type of object in our daily lives.

iphone_vh

Increasing the button size would be the normal solution. This is why, starting from iPhone SDK 3.0, Apple has made it possible for all applications to implement Horizontal Keyboard. As it can be clearly seen in the picture below that button size of Horizontal Keyboard is bigger than the buttons on Vertical Keyboard. However, increasing the button size can only be done at the expense of shrinking the rest of the visual area. Perhaps in a smaller device than iPhone, this is not a promising solution.

pressed

Other reason is that the area our fingers make contact with the touch interface is not a single point but an area. And the area that makes contact differs for each different angles our fingers approach the touch interface. As the image below shows, there is a difference between the position we intend to press and the position where our finger has actually pressed. For this reason, there are even patents that utilize this idea by determining which finger is used and adjust button recognition area according to the fingers.

After using the iPod Touch for over a year now, I’ve noticed that my hand have adjusted to the touch interface. In order to minimize the area of contact, I was typing using the tip of my fingers. I can type at a decent speed. However, I still prefer using the keyboard. Even with the best devices, it is a natural behavior for customers to wish for more.

Related Links:
YouTube – Drawing on iPhone using Brushes

The downside of rules and regulations

February 23rd, 2009

Recently, I’ve watched a speech by Barry Schwartz on TED. The speech was mainly emphasizing the importance of practical moral wisdom. It also points out that our reliance on rules and incentives have deprived us from thinking and have put us on a downward spiral. I couldn’t agree more on this issue. Although his ideas were focused on the moral side, I believe this can be applied to all field, such as mine, the software engineering.

For instance, few days ago, I had an argument with my coworker on ways to implement modular components. It was a very controversial issue where opportunity costs were high for both solution. The disturbing part was not the argument itself, but my coworker’s decision to simply follow the basic guideline at the end. Following the rules is often the easy way out. It may not be the best solution. However, it definitely ends all arguments.

Working in an competitive environment, we need to strive to achieve the best we can. Following the rules leaves us at a level of mediocrity. Often rules exist for the sole purpose of preventing the worst-case scenario, and for this reason, it leaves no room for other possibilities. The downside of preventing even the simplest mistakes, is that it deprives us from learning from them

We witness many cases where even the best software engineering ideas turn to rule-based list and requirements, where such obligations become no more than a burden. It is unfortunate that the very idea it emphasizes diminish during the process of making it a rule, .

I appreciate Schwartz for pointing out the truly important. It couldn’t have been more well-spoken.

Development Tools

February 23rd, 2009

Sometimes I find it very difficult to write even a single post for each week. This is due to many reasons. For the last two weeks, I’ve been working till late night and even on weekends, around over 86 hours overtime. It is surprising how often so called carefully planned projects go haywire. Each projects are required to present a challenging task, yet meet the deadline at the same time. There is clearly a dilemma here.

In the past several years, I have had my fair share of experience in projects that went haywire. I often look back, and ponder on what went wrong and on how I could have handled things differently. Most of the time, it simply reinforces the notion that more careful planning was needed. Well, this particular project has reminded me the importance of developing environment and its settings.

During the last ten years, better platforms and better developing tools have been developed and deployed. There are plenty of great products, great solutions that will provide great efficiency to the whole process of developing. Despite this fact, we still rely and turn to platforms and tools that we had previous experience.

The main reason we can’t transfer to new tools is that all projects are time-critical and midst of a project, it is simply impossible to spare time to learn these new tools. One might argue that learning new tools may not take much time. However, understanding how to use them is one thing. Getting used to and excelling at them is a totally different story. As far as tools are concerned, efficiency shows high correlation with amount of experience rather than quality of experience. For this reason, people who do agree in the importance of developing environment, believe learning process must be done prior to projects or during the initial stage of projects.

Colleague of mine once said that each projects should have an engineer with the role of Tool Setting. I strongly agree with him on this idea. The idea is to dedicate one person to understand each tool fully. The main purpose of this is to understand the tools more deeply, which most people lack time for. With this we can find out ways easily use them, bugs that may become a delay factor, optimization point that will enhance the performance. This can all be done by a single person as far as one is dedicated to the role. In midst of the project, he or she can advise the team members and fix problems that are solely tool based.

Come to think of it, even the tools that I use the most, I do not understand them fully and have never tried to exploit the full functional capabilities of the programs. For IDE tools, there are significant amount of different settings one can set for each projects yet we do not understand them all.

For now, my simple wish is that I can learn from my mistakes and that I will remind myself of this the next time I start new projects.

Older Posts »