Everything and the Mobile Software Universe…

  • rss
  • Home
  • About

Designing the Windows Vista Shut down menu…Do yourself a favor and read!

Thomas Menguy | November 27, 2006

Here is a “Joel on Software” analysis of the MS Vista menu .. and its, hum how to not say something rude, surprising number of available user choices :-) .

The real fun comes just after, when Moishe Lettvin, that was in charge of the developpement of this feature
gives its explanations!…Lenifiant, and “ubuesque”,

…24 people involved in this feature. Also each team of 8 was separated by 6 layers of management from the leads, so let’s add them in too, giving us 24 + (6 * 3) + 1 (the shared manager) 43 total people with a voice in this feature. Twenty-four of them were connected sorta closely to the code, and of those twenty four there were exactly zero with final say in how the feature worked. Somewhere in those other 17 was somebody who did have final say but who that was I have no idea since when I left the team — after a year — there was still no decision about exactly how this feature would work.

moblog: The Windows Shutdown crapfest

Really really something to go through…cause it seems that all kind of organizations may tend to those limits. And it is a good list of what NOT to do, or try to not do when your business is growing bigger….

But things can be different, look a little at Google:

From a high level, Google’s process probably does look like chaos to someone from a more traditional software development company. As a newcomer, some of the things that leap out at you include:

- there are managers, sort of, but most of them code at least half-time, making them more like tech leads.

- developers can switch teams and/or projects any time they want, no questions asked; just say the word and the movers will show up the next day to put you in your new office with your new team.

- Google has a philosophy of not ever telling developers what to work on, and they take it pretty seriously.

- developers are strongly encouraged to spend 20% of their time (and I mean their M-F, 8-5 time, not weekends or personal time) working on whatever they want, as long as it’s not their main project.

- there aren’t very many meetings. I’d say an average developer attends perhaps 3 meetings a week, including their 1:1 with their lead. – it’s quiet. Engineers are quietly focused on their work, as individuals or sometimes in little groups or 2 to 5.

- there aren’t Gantt charts or date-task-owner spreadsheets or any other visible project-management artifacts in evidence, not that I’ve ever seen.

- even during the relatively rare crunch periods, people still go get lunch and dinner, which are (famously) always free and tasty, and they don’t work insane hours unless they want to.

These are generalizations, sure. Old-timers will no doubt have a slightly different view, just as my view of Amazon is slightly biased by having been there in 1998 when it was a pretty crazy place. But I think most Googlers would agree that my generalizations here are pretty accurate.

How could this ever work?

Stevey’s Blog Rants: Good Agile, Bad Agile

And read the whole article also cause it is a refreshing rant about Agile … and a good insight at Google success…and why everyone wants to work there!

Comments
No Comments »
Categories
Information Management, Mobile Industry, Software, development process, project management, team management, team work
Tags
development process, Information Management, Mobile Industry, project management, Software, team management, team work
Comments rss Comments rss
Trackback Trackback

Ultra Low Cost Phone challenge: Complex Languages … Are REALLY complex to draw and edit.

Thomas Menguy | November 26, 2006

Perhaps you’ve heard a lot about ULC (Ultra Low Cost) cellphones in the industry (many companies are aiming this market, see The Motorola F3)…but they are targetted to new markets, where text rendering/input is really more complex than our relatively simple alphabet: it is mandatory if you want to reach the mass of Indian users, Sri Lanka, Cambodge, Hebrew, Arabic, Philippina , Chineese…and you want cause “texting (smsing)” is a big thing: else your new emerging market will be limited to eastern Europe or South America, and be sure that text messaging will continue growing bigger. Look at the buzz around hotxt (read this mobHappy article about this new service, even if it is all but positive about it :-) or at SMS Text News, please check the comments on this one… ) or Berggi (Berggi GigaOM article, I’m not sure about the business model of such an offer, 10 bucks a month to send sms!!). IM is perhaps the next text heavyweight champion (check this techCrunch article about the next bif ideas around IM)
So Text IS big and will stay big…so emerging markets have to have the tools to leverage this potential!

Two different issues to be fixed araise:

  • Text Rendering
  • Text Edition

In fact text edition is not so diverse and different accross the languages: the T9 you know is not so far from Chineese input. At the end you only have two kinds of predicitve text input methods:

  • One for alphabetic languages, the one you have on your phone today. For those languages multitap is also of course heavily used
  • One for “ideogram” languages (hum, only in China/Taiwan and Japan (kanji) in fact ), with Pinyin, Strokes, Bopomopho input being some variations

And after having implemented both in real life here at Open-Plug…the alphabetical one is in fact more complicated!
Two companies have the lion share for the predictive engines:

  • Tegic (now AOL) and its T9 offering, more Western countries oriented
  • Zi corp (eZiText, eZiTap), more Eastern oriented

Both have great products and large and complete languages databases, for me their biggest IP. Cause once you have a predicitve engine the real pain only begin…the UI and user interaction around those dictionnaries is really really complex:to give you an idea, the specification of text entry methods and use case represents more than 25% of the whole UI specification! and of course, for each phone/vendor/carrier it changes, so integrating T9 or EZiText really means if fact tayloring YOUR existing text entry framework for a given specification, the predicitve engine being only a little part of the whole thing. We ended up, in collaboration with LiPS to create a real “Text Entry Framework”…

So let’s move to the text rendering part…
Many companies are developping solutions to render text…so why such a fuss? After all it is only about drawing characters on the screen no? For us, with our simplisitc alphabet european languages, it sounds like something trivial…IT IS NOT, cause complex languages are REALY COMPLEX.

  • First you have the magic around Bidirectional text (for those crazy men that are writing from right to left, Hebrew, Arabic…I’m sure they say the same for us writing from left to right :-) )… you will say it is only printing in reverse….you couldn’t be more wrong, simply look here for the full specification of the bidirectional algorithm, hum, simple isn’t it? How to insert left to right text in a right to left paragraph, how to wrap in that case?
    biditext.jpg
  • Then you enter the brave new world of GSUB, GPOS ans co. In some languages some characters are mixed together and inversed to form a new character: the logical ordering (in memory) is really far from the display ordering. Champions in those kind of games are Devanagari, Indic, Thai…
    shaper.jpg

So to handle all those languages, a solid text layout framework (for character clustering, reordering, wrapping) is needed, and a good font renderer. The open source community has developped Pango for the layout and Cairo for the rendering. ICU, from IBM is also a well known open source text layout engine.
Anyway those projects are huge, a big linguisitc knowledge is needed (try to debug a devanagari string…) so to have a quick working solution the industry offers you partners…and many exist, showing that this is a real issue!

  • nCore :a little finish company that has a full Layout+rendering engine and a rich text editor, we are working with them already : their solution is really great, fast, light, etc, plus they are darn good at what they do. Their core busines is not font, but rendering.
  • Tegic (T9) has a solution (seems to be based on nCore technology), adding their own features and a good integration with their text input solutions
  • ZiCorp has also a solution that can be integrated with predictive text input solution
  • Monotype, a 100 years company that invented the Arial and Times New Roman fonts…they know well how to render texts :-) , their market is more toward the fonts themselves
  • Arphic a taiwaneese text rendering vendor, I don’t know much about them
  • Bitstream, a US text rendering vendor, with a solid technology. Also more “Font oriented”, and vector based
  • Microimage, I’ve heard of them thanks to 3GSM Asia, but for now I don’t know much about their technology

So to play seriously in the ULC field the phone software needs a very solid text solution…and really it doesn’t come overnight! And be careful when designing/implementing/choosing your solution/partner: it won’t run on smartphone but on ULC phones, so no extra RAM nor CPU, and here CPU IS a challenge. Aslo don’t pass on it, people are really not willing to simply learn english :-)

Comments
2 Comments »
Categories
Data Input, Mobile Industry, OpenPlug, Software, User Interface
Tags
Data Input, Mobile Industry, OpenPlug, Software, User Interface
Comments rss Comments rss
Trackback Trackback

Motorola Motofone F3: ULC phone.

Thomas Menguy |

:: mobiface :: next gen mobile interface thoughts worth a read (as always if you are interested in Mobile UI). From what I know and understand this 40$ cellphone is targetted towards “emerging” countries…but look at this screen: no pixels only an old school alphabetical display. Yes alphabetical, latin alphabet…and guess what, the vast majority of the emerging doesn’t use this alphabet at all (look at china, India, etc.), so please Motorola, explain me how this phone ca be used outside of western countries? Perhaps the market is more for the “america del sur” than eastern countries?.
Anyway this is the first of its kind as Moto (and others) are targetting even lower price tag, the next one should be, I guess, around 30$.
Stay tuned for a next article around one of the unknown but biggest hurdle for low cost phones: Text handling! (will be one of my next article)

Comments
16 Comments »
Categories
Mobile Industry
Tags
Mobile Industry
Comments rss Comments rss
Trackback Trackback

The Indian Wireless Carrier War, and emerging countries

Thomas Menguy | November 20, 2006

SmallDoses » Blog Archive » The Indian Wireless Carrier War – What it means for Indian Mobile Startups

If you are a VC or an entrepreunarial kind of guy, do yourself a favor, and read this really great entry about the India Maket.

For sure the growth will be in those “emergent” countries (hum, don’t like this word, India civilization is a lot older than nearly anything else in the world). But more than anywhere else the cellphone price as to be as low as possible, which will for sure restrain the possibility of “content startup”.

It is also great to see the diversity of each of those countries. As an example the text handling for many of those languages is rather complex, and in some, like in Sri Lanka, there is NO support for the native language… and here companies like Microimage may simply be  the only choice :-) .

Diversities about distribution channels are even bigger…and the right model has to be found for each culture.

Comments
No Comments »
Categories
Mobile Industry
Tags
Mobile Industry
Comments rss Comments rss
Trackback Trackback

Mobile Data Input: find, organize and share….

Thomas Menguy | November 19, 2006

Mobile devices are, at least for me, some kind of “data gathering plateforms”. I want to take photos, record sound, take short notes and have everything well organized with as less as possible work to do to organize this data and find it.

It’s why PalmOS has been so successfull in its time: it was easy to get and find your data, and it was well integrated with your PC, where your real data is at the end of the day.

With the addition of Photo/Video capture in mobile phones, data gathering can be brought to a next level: thanks to GPS data/ time data/ recognition software it may be a snap to recognize a place, a shop, a good you want to buy and compare it in real time to online retailer, etc.

Seen at GigaOM » Nokia’s Blue Sky Ideas great Nokia’s experiment, that may go further:

The Mobile Augmented Reality Applications project explores utilizing camera equipped mobile devices as platforms for sensor-based, video see-through mobile augmented reality. The project also investigates new and exciting applications enabled by this technology, and UI solutions and paradigms motivated by the restrictions of the mobile devices.

NRC – MARA

A raw photo is at least better that nothing, but is is really a pain to find one when you have thousand, to find this christmas photo of your baby boy … it’s why Picasa (from google) or Adobe Photoshop Elements exist : easily add and use a photo metadata. For using Photoshop Elements, and trying to tag manually each of my photos, I know it’s a pain…and everything that can automatically add meta data to a photo worth it! Date is the obvious one, location is a great one, data recognition another.

There is room here for great services, web 2.0ish, using goole maps, some place repository, etc … and update on flickr :-) .

Local search engines like google desktop , Copernick or Windows Desktop search come here to the rescue by indexing those metadata.

Something I use a lot in my day to day work are whiteboard photos, after those brainstorm/Architecture meetings, the added value is nearly always on the black board with scheme, annotations and so on…and the easy way to go is taking a snapshot, and if this snapshot could use OCR (good one) and become searchable, I would use it in a heartbeat!

An example of a “mix” for data gathering is 2D barecode, see this news to go further:

Microsoft adopts QR Code as standard for Windows Live Barcode October 27, 2006 on 12:51 pm | In Technical, Standards, Web 2.0, Applications, Mobile Phone, 2D Barcodes, Situated | It seems that Microsoft have discovered the 2D Barcode. Expect to see a proliferation of mobile 2D Barcode products and services in the next two years, now that Microsoft have just released Windows Live Barcode (still in Beta).

Mobile Learning » Microsoft adopts QR Code as standard for Windows Live Barcode

Data sharing is another beast and get a lot of buzz recently. I’ll quote some of the blog I read about the phenomenum:

Told You So: Social Networking on mobile EXPLODING, worth 3.45 B dollars in 2006 We love digital communities and social networking, obviously, as we set up this blogsite – Communities Dominate Brands – and wrote the book of the same name. And in the six hundred or so blog entries at this blogsite we’ve discussed just about every significant social networking site and digital community from eBay to Skype, from MySpace to YouTube, from Habbo Hotel to Worlds of Warcraft, from Flickr to Ohmy News, from 2nd Life to Twins Mobile. And on and on and on.

Communities Dominate Brands: Told You So: Social Networking on mobile EXPLODING, worth 3.45 B dollars in 2006

With the growing popularity of sophisticated telephones, Informa forecasts that globally, operator revenue from such services will rise to more than $13 billion by 2011 from $3.45 billion this year. Asia is the most active region, with revenue from “mobile community services” of $1.8 billion this year, followed by Europe at $721 million, according to Informa. Leading the way are companies like Cyworld in South Korea, a creation of SK Telecom that allows cellphone users to share pictures, clips, music, ring tones and games.

MOBILE user generated content and social networking worth 3.45 B this year

This seems to make a lot of sense. Recent reports are showing that social networking platforms made for mobile applications are generating a global net of 3.45 billion dollars. This is more revenue than the other social networking otherwise known as Web 2.0. Not bad.

mopocket

GigaOM » Up Next, Mobile Created Content

According to Telephia three percent of U.S. mobile subscribers, representing nearly eight million consumers, say they use their cell phones to take personal videos. That isn’t that high, but that percent jumps to 6% for consumers that have purchased a new handset in the last six months — particularly those that bought the Razr V3 series. In Europe, Telephia says the numbers are even higher with Spain at 15%, Italy at 14%, and the U.K. and Sweden at 12% and 10% respectively.

GigaOM » Will Goobe Go Mobile?

So yes, people are really collecting data, and are sharing it … but the added value of those sharing services seems to rely on data recognition, automatic categorization, easy search, promotion and access …(see veeker for example).

Let’s see the new automatic meta-datas!

Update: Look at http://www.like.com/ and its “father company” Riya this is really a picture search engine by similarities (found via Techcrunch) … like the recent buyout by Google of Neven Vision to add face recognition to Picasa: so it is coming!

Update 2: look at this about qwerty keyboard :

Is hardware QWERTY really overrated? Have you noticed how some new smartphones from Nokia have given up on hardware qwerty on their devices?

SmallDoses » Blog Archive » Is hardware QWERTY really overrated?

For me and for now … the full keyboard has really changed how I use my smartphone (I was a graffiti champion before :-) ), for me the best compromise.

Comments
No Comments »
Categories
Data Input, Gadgets/PDA/Phones etc..., Mobile Industry, Mobile Web 2.0
Tags
Data Input, Gadgets/PDA/Phones-etc..., Mobile Industry, Mobile Web 2.0
Comments rss Comments rss
Trackback Trackback

VisionMobile Forum :: Motorola’s AJAR set to follow in Nokia’s S60 footsteps

Thomas Menguy |

Here is (again) a good read from VisionMobile:

Motorola’s AJAR set to follow in Nokia’s S60 footsteps Motorola’s acquisition of TTPCom in June bought the OEM ownership of the AJAR operating system for low-end handsets. In a corporate newsletter published in October, Motorola announced that the AJAR platform would be licensed to other OEMs, following in the footsteps of Nokia’s S60 licensing strategy.

VisionMobile Forum :: Motorola’s AJAR set to follow in Nokia’s S60 footsteps

Technically AJAR has nothing in common with S60

AJAR is targetted to low-end handsets, combining proven modem stacks with a low-memory-footprint OS platform – characteristics which are quite different S60’s target market and design goals.

VisionMobile Forum :: Motorola’s AJAR set to follow in Nokia’s S60 footsteps

I have really not a lot to add with this analysis, except that it shows the relevance of low footprint/high feature frameworks for mobile phones…

Comments
No Comments »
Categories
Mobile Industry
Tags
Mobile Industry
Comments rss Comments rss
Trackback Trackback

Performance vs Developper productivity and ease of coding : Why can’t we choose both?

Thomas Menguy | November 18, 2006

This DevX article: Get to Know uSTL: A Lightweight STL for Symbian describing a symbian STL (C++ Standard Template Library, the C++ “toolbox” with lists, vector, string utils, etc.) less crippled that the standard one, really reminded me of this eternal debat.

Recently we have worked on some memory optimization for our product, the part running on the PC. It was using way too much memory compared to what information was effectively loaded.

The data model is XML, and we are creating our objects with SAX parsing of this model… and many things were stored in STL string, and some stream where used….surprise STL string where using 128 bytes preallocating data…so for a 4 bytes string you use …. 128 bytes! stream memory use were growing exponentially!

So we played brut force and quickly reimplemented a class string based on good old char *, and a stream tuned for our use…and guess what: mem usage was divided by 10, and it was really faster.

Conclusion of this story: if you want to go serious, you have to master and well understand all the objects you use heavily: It may sound obvious, but many many time programmers take too many things for granted, especially on the PC world ….you know why Windows is now using way too much RAM :-) …but in the PC camp Moore Law helped a lot to deal with RAM/CPU power explosion…

It is not to say that STL is a bad library (ok, not so intuitive to use, but it is another story), but those kind of services are ok for prototyping, or “normal” application, not for intensive ones. The difference between this two kind of applications is blurry, and coding something faster prevails way too often, heading to crippled apps.

Now look at the mobile phone space, here the Moore Law is not bringing a lot of RAM/CPU, it is “only” bringing down the chipset cost…but the vast majority of mobile phones are still running on CPU with less that 10 MIPS and 256 or 512kB of RAM, BUT feature sets are still growing and growing….

So obviously your applications, services, HAVE to use less RAM and less CPU each time, hum we are really NOT in a PC world.

To achieve that you can:

  1. Continue to code as close as possible to the bar metal (uhm silicium), using low level C code, assembly, few OS services.
  2. Use a Mobile Phone coding framework, taylored for the embedded space (this one is itself made using the previous point mode of programming), with a native programming language (C/C++)
  3. Use a Higher Level OS with a native programming language (C/C++) (Palm, WinCE, Symbian)
  4. Choose an “interpreted framework” like Java or .NET (see the Mono effort in this respect)
  5. Go for scripting. (like OpenLaszlo, Ruby On Rails, Digital Airways, etc)

Of course the more abstract you go the more RAM/CPU you loose, but the more developper productivity you get … if you stick too closely to the PC world mantra. BUT if it doesn’t fit in your target …. it won’t fit , and you loosed a lot more that productivity, you loosed your market.

A high Level OS is simply not a choice: try to fit WinCE in a 10 MIPS machine … it is already not snappy on a 400MHz ARM 926 … (same for Symbian and in less extent Palm)

So things have to be more balanced, and as the zen approach told us “the middle way” may be the solution.

I strongly believe that a mix of very high level services for UI, with a good interconnection with low level services for control, algorithm and modelling part of the application is the way to go:

  1. You let the graphists/designers quickly design your UI
  2. You code the algorithm, controls, threading model, network in C/C++ with low level or very low resource consumming APIs
  3. You let the framework dealing with interactions between applications and resource access sharing.

The last point is crucial, else you end up with a big mess, with unmaintenable and non evolutive code cause all the services will have to know each others, definitively a big mistake. The first one has to be there cause clearly the UI is, in this market, defined in specifications by UI specialists, and it can greatly improve the time to market to let them “design to manufacture” with some powerfull tools to create UI, like user friendly RAD, or even better like Flash Lite SDK, or Digital Airways But those high level solutions are not enough cause they lack the second point: the logic of your app have to be done in a scripting language, which is clearly not tuned nor designed to do that: UI and Logic HAS TO BE more clearly separated to use the best tools to do the job.
Java also doesn’t fulfill those needs … SavaJE is not everywhere, no phone with full Java UI…(I won’t go also in the Java mess around standardization, check this techtype entry about internationalization ): It is not good for UI (only a programmer can do a UI), and so so for application core (CPU and RAM, plus missing APIs).

For sure, as said at TomSoft we need Mobile Developement Simplification(and yes widget standardization can help), but the traditional vision of “one model” fits all seems clearly not relevant for our industry, and more innovative frameworks have to emerge to trully allow the explosion we are all waiting around mobile services (see this entry about skype failure to deliver…).

What do you think?

Update: Taken from the Adobe Flash Lite 2.1, here are some RAM/CPU for flash …

Adoble Flash Lite 2.1 CPU and RAM figures
Ok, we are far from the “Ultra Low Cost”/”Low Cost” segment but not by a 10 factor (except for CPU), so suing only some part of flash for a phone UI is not out of question ….

Update 2: Good read at “C. Enrique Ortiz Mobility Weblog” about the C language, and why it is still, and will stay, usefull. Anyway for me C++ is also a “low level” language as it is compiled and you are dealing yourself with pointers …

Comments
2 Comments »
Categories
Mobile Industry, Software
Tags
application_framework, memory_optimization, mobile, Mobile Industry, mobile_phone, moore_law, Software, stl, symbian
Comments rss Comments rss
Trackback Trackback

Sony Ericsson Buying Symbian UIQ

Thomas Menguy | November 10, 2006

Read recently in many place and in techype: Pedantry Rules.

For me this buyout was mandatory for SE:

  • UIQ is founded/funded by the Symbian Consortium
  • The only real licensee using it is SE
  • UIQ is not on par with Nokia S60, the other Symbian UI/front-end, developped and maintened by Nokia
  • Nokia has 49% (or 46% don’t remember exactly) of the Symbian Consortium.

=> So SE need to have UIQ feature/quality complete … to do that the symbian consortium would need to add some power/money to UIQ…but Nokia won’t be willing to…bad circle for SE that obviously want to continue investing in Symbian, so need a real front-end. CQFD.

Do you agree?

Update: nice analysis at MobileOpportunity. Even if I’m not so sure that keeping diversity in software is not a bad thing at the end of the day…especially for an embedded device.

Comments
No Comments »
Categories
Mobile Industry
Tags
Mobile Industry
Comments rss Comments rss
Trackback Trackback

Open-Plug is part of the Texas Instruments Application Suite Ecosystem

Thomas Menguy |

Check this annoucement: Texas Instruments Application Suite Ecosystem Boosts Development of Affordable Multimedia Feature Phones: Financial News – Yahoo! Finance… Just to let you know that things are moving :-) !

[...]The process of porting, validating and integrating software takes significant monetary and time investment. TI is committed to helping customers maximize those investments by offering them a choice of pre- integrated application suites[...] TI customers can select an application suite such as Motorola Ajar, OpenPlug’s ELIPS, Sasken’s ARIA and SKY MobileMedia’s SKY-MAP(TM)[...]

Texas Instruments Application Suite Ecosystem Boosts Development of Affordable Multimedia Feature Phones: Financial News – Yahoo! Finance

Comments
No Comments »
Categories
Mobile Industry, OpenPlug, Uncategorized
Tags
Mobile Industry, OpenPlug, Uncategorized
Comments rss Comments rss
Trackback Trackback

Cheoptics360 show Holographic Ads …. impressing

Thomas Menguy | November 8, 2006

Seen on this french Blog: La vidéo 3D pour bientôt ? – Torréfaction



Ok, quite not ready to be embedded in a cellphone :-) … but this is futur!

Comments
No Comments »
Categories
Gadgets/PDA/Phones etc..., User Interface
Tags
Gadgets/PDA/Phones-etc..., User Interface
Comments rss Comments rss
Trackback Trackback

What I’ve enjoyed reading

Recent Posts

  • You will be disappointed by your Android Market application sales…think twice before jumping on the little robot
  • Why Adobe should change its mobile strategy (again)
  • No Qt for S40, Maemo and Symbian apps won’t be compatible: is Nokia really willing to unify development for OVI Appstore?
  • Why Samsung Bada makes sense vs an Android-me-too journey
  • Flex on Mobile: What’s coming in ELIPS Studio…iPhone insights (and android teasing :) )

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org
rss Comments rss valid xhtml 1.1 design by jide powered by Wordpress get firefox