Friday, August 22, 2008

OLPC - a lesson in product development

a couple of months ago i wrote why microsoft needed to kill the OLPC. this time, i felt like writing why the OLPC project nearly failed from a product development view point.

they had a near feature-complete product that was ready to be manufactured and then shipped. the product should have been in design lock down after the first prototype was spec'd out. the sales agreements should have been put down in writing. and then followed through (i.e. make, boxed and then shipped).

so what happened. a big pile of $$ was dangled in front of their noses - allowed intel to smeared Negroponte with the "you can't sell the classmate" PR disaster. and then they let microsoft in to the party. again, loosing sight of the road map. this should have been version 2.0 for a brand spankin new OS implementation, feature locked and signed off on the hardware platform.

there is something to be said about being ahead of your time.
OLPC Founder Negroponte Wanted to Make Multitouch XO-2 Laptop 20 Years Ago [Olpc]
june 2 2008

but you should not compromise your release cycle by being distracted with the bells and whistles of what could be. i mean, there was all of these dual touchscreen articles popping up all over the place like this one:
V12 Design Delivering Dual Touchscreen Laptop Within Two Years [Laptops]
july 9 2008

again, they lost focus on releasing their first product out the door. with all of these add ons, did they honestly thought they were going to keep the costs down by adding two full touch screens?

when all of this was happening, a whole heap of cheap "netbooks" started to pop up from all kinds of manufacturers. the ASUS eeePC is an excellent example of them. they've manage to release different versions upon different versions all aiming at the same market the OLPC was in. the eeePC 700 was the linux book, 701 had XP, 900A a faster processor, 1000 a larger screen. there is a giant table of all the different models they did that it's mind boggling trying to keep track of it. and since there are so many of these eeePC out there, people have started to mod them with things like touchscreen capabilities.

finally, an interesting read on how the OLPC journey was taken:

How the OLPC Changed Laptops Forever: The Untold Story [Origins]
aug 14, 2008
and what's also curious is that this article link used to be found through gizmodo's pages:
even their twitter feed has it:
don't they normally mark the article as inaccurate or strike the lines in the article to "update" their findings? i have never seen them pull down a post like this. and now it's:
maybe it wasn't popular enough for people to take interest in this, it seems to only have 18 diggs so -- no one will miss it...

update: it seems that a new article has been posted on gizmodo:
Secret Origin of the OLPC: Genius, Hubris and the Birth of the Netbook
aug 26, 2008

update: here's another fancy article that bears a similar headline to my original article:
Why Microsoft and Intel tried to kill the XO $100 laptop
aug 10, 2008

Friday, August 15, 2008

real time ray tracing, huh...

there's been a lot of graphics technology goodies piling up. too good for me to pass up on some more of my thoughts.

Intel takes another jab at Nvidia during its research day
june 12, 2008

"[ray tracing] doesn't waste time drawing things that are hidden and, according to Intel, it is best done on the CPU."
i think the ├╝ber managers doesn't realize the complexity of raytracing. there is no such thing as "things that are hidden" object in ray tracing. in fact, it's quite the opposite. you need all of the objects in the scene to calculate for reflection and refraction, scattering, and chromatic aberration (wiki). to make a high quality rendered scene depends on the number of times the ray is bounced (reflection) or passed through (refraction) an object. hidden (off screen) or not, the object needs to be in the scene no matter what.
16-core, four-chip monster CPU, running last fall’s game, “Quake Wars: Enemy Territory.” It ran at 16 frames per second, not the usual 60 frames per second that is possible on a good graphics chip.
wow, that's a lot of hardware for 16 frames. granted this is ray tracing but still. i would throw my computer out the window if i can't get my frag on smooth silky frame rates.
Nvidia video: No quad-core chip needed for extreme PC
june 20, 2008

from intel, again:
"...programmers will like ray tracing better because they can do many complex tasks with simple one-line programs."
huh? did i just read that right? what hell are function and macros again?

this guy has a much better thought on these issues.
Ray tracing for PCs-- a bad idea whose time has come
june 12, 2008
and now, back to more graphic goodies. to achieve some pretty good results, there's been a lot of work going into the multi-core chip solutions.
AMD, Nvidia graphics chip designs diverge
june 16, 2008

Intel aims x86 at GPU market
aug 04, 2008
and, it seems to be kicking ass so far:
AMD ATI Radeon HD 4870 X2 Preview
july 14, 2008

finally, john dvorak said this on his podcast:
Save Your Phone Books
06/18/2008 06:35 PM @3:55 mins:secs
"... it would be difficult for a CPU company to make a GPU as it is for a GPU company to make a CPU... mindset and marketing style are different..."
i think that's only true for CPU to GPU. going the other way should be much easier for the GPU maker. a CPU works much more simplier in a linear fashion with a lot of instruction sets that are more in tuned with logic processing. the GPU on the other hand has a lot of pipelining effiency designs that needs to be taken into consideration with data that are normally processed/passed over multiple times.

plus, it's funny how all the major CPU makers are into the low power processor:
AMD may be planning its own CPU to compete with [VIA] Nano [and Intel] Atom
june 19, 2008

and the lone GPU maker:
NVIDIA pays Transmeta $25 million for LongRun technology
aug 8 2008

but i hope there's more work like this being done from all graphics makers:
AMD Cinema 2.0 tech demo: real-time photo-realistic human models
aug 12 2008

there's nothing more outstanding than showing what you are working on and what your graphics chip can do. nvidia used to always showcase their cards by constantly displaying all of these cool demos, samples and apps. it seems that they are kind of slipping as of late.

iphone vs gphone

so a buddy if mine forwards me this artcle and proceeds to mention that he "had hopes for Android but [is reading] many disappointing things about it so far":

and i reply with this:

this "flaw" is just a publicity slam (scam) to keep the market's perception of iphone is better than google android -- just like how apple did the whole mac vs. vista ad/smear campaign.

the article is total BS.

the article jumps directly into the open source "problem".
[cherry-picking the teams ] with "advanced releases of Android's Software Developer Kit"
almost every mega-software house on the planet does this. external developers who shows skills ahead of the curve will almost always be tapped as "guinea pigs" for testing prototype code and asking for their remarks before releasing the features out into the wild.
"open source software ... allow early adopters access ... buggier pieces of code... can help fix them or let people ... wait for a solid release ..."
again, i'm sure that there are piles of "test" code within the OSS community that will never see the light of the day when ideas are getting bounced around between the project leaders -- just as well as coders external to the project who tries submitting patches that also never become part of the official tree. every one has a process. non-disclosure agreements may not be one of them, but when it comes to dealing with evil telco's... more about on that later.
"carriers and hardware manufacturers are believed to be encountering technical problems regardless of their access to code."
this isn't a google flaw. this is an evil telco problem...

the poorly supported article continues with a link to a "language translation problems" -- a stupid remark about a mobile phone company having problems to re-write the code base into another language. if you don't know how to convert (written/read) text from one language to another, you should be out of business. localization is one of the most basic programming task a junor coder should be able to do in his/her spare time.

if google android is to fail - it's because of the evil telcos.

google has a bigger problem. most of the major cellular proviers will not want to sell (or allow on their networks) android phones because subscribers will be able to put their own applications and files on their own phones. they can't charge you $ if you can put stuff on the phone for free. they want to nickel and dime (and by nickel and dime, i mean $5 and $15) for every little feature they want to up-sell you (every month). not to mention "time-limited" ring tones, games, apps, or what-ever.

the telcos (wireless, land and even internet providers) are a bunch of greedy bastards. i am actually very surprised that android phones will make it out into the market by the end of this year. with such open access to the device - i thought it would have taken at least 4 or 5 years to make it a reality. but, i wouldn't be surprised if either of the following are/will be happening:
  • the telcos will sabotage android phones ability to work on their networks
  • the telcos are kicking begging and screaming to "lock down" the phones so apps/files/add-ons can only be installed via the provider's "store"
i can go on and on about this -- but i think i'll save that for another post.