Archive for September, 2006
Why do we compare Programming Languages?
I don’t know. May be just for academic reasons, because there is no relevance in practical life. I recently read some discussion about the performance of Ruby at Joel on Software. Wondering what the heck if Ruby is slower than C++? There are 10s of programming languages which are slower than C/C++, yet they are being used widely in many different applications. You don’t have to be the fastest and win 100m at the Olympics to live your life. You have a different set of ambitions and purpose. Don’t you?
I never thought all programming languages are created equal. Though, a given problem can be solved by many programming languages, I believe, not all are cut out to solve the same problem. New programming languagues have been created primarily because existing programming languages do not solve a particular problem well. For most, the reason is not pure computational performance. This is equally true for most technologies as well.
Even when two programming languages/technologies solve the same problem reasonably and equally well, decision to prefer one over the other is never purely technical and never based on a single indicator like computational performance. Few examples over a period of time, from my area of work and experience:
- C++ vs Perl and Shell Scripting
- Binary Encoding vs ASCII encoding : XML, HTML, SIP over binary encoded Protocols
- VOIP vs Traditional Telephony
- Telecom Application Servers – J2EE Web Servers with IMS vs Custom Designed Telecom Servers
- C++ vs Erlang for Telecom switching software
- C++ CGI Programming vs J2EE based Application Servers, PHP, Ruby on Rails
- .NET vs J2EE
- Flash based Video Player and distribution vs WMP, Real and Quick Time
Each one of them have a definite purpose and advantage. While some problems can be solved by both, we prefer one over the other for reasons other than computational peformance. When a new language or technology is created, the new language or technology often comes equipped with advantages from its parent and will do reasonably well on the scale of performance. So, when Computational performace is not at all a factor for choosing them, why do we care about computational performance?
Another interesting comparison involve the spoken language itself. I hear often heated arguments among people from Andhra Pradesh (India) about preferrence of English over Telugu. ‘Telugu’, which is the most spoken language in Andhra Pradesh, India and is my native and first language. It was also acclaimed as the sweetest of all Dravidian languages. Sir C.P.Brown called it, the Italian of the East. It is very rich in vocabulary and structure and emerged as a literary medium subsuming the predominance of Prakrit and Sanskrit. Yet, many of us from Andhra Pradesh, speak and communicate in english at workplace and on the web. While one can express equally well and clear in both languauges, most choose English as most part of the world we care understand English. So, the reason to choose one over the other is definitely nothing about the structure or vocabulary or expressive power of the language. So why do we care even comparing the structural power of the languages?
Why Desktop Apps will Stay !
Recent buzz indicates that Desktop applications will be gone soon and Online counterparts rule the world instead. I disagree. I believe that online applications alone are useless and painful for some of the desktop counterparts. What we need is a smart desktop application or a browser plugin or a desktop widget that is totally integrated with an online application, its datastorage and an online interface. If you can replace your desktop application for your needs with an online version, most likely you don’t need that desktop application in the first place.
In a recent article in Business2.0 magazine (October 2006), Om Malik says in ‘Online Apps -To go!’:
“What this means is that you’ll be able to write your documents in Writely(who needs Word?), email them via Gmail(who needs Outlook?) and arrange appointments to jointly edit those documents via Google calendar(again who needs outlook?).”
Before coming to any conclusion, it would be handy to know how bloggers, the most active community online that keep on writing, write their posts. All blogging platforms have very rich online editors included to create/edit a blog post, with all those fancy bells and whistles Writely promises. Having said that, It would be interesting to know how bloggers write their posts, and particularly how Om Malik himself writes his blog. Om Malik uses ‘ecto’, a desktop application to write his blog. And many other bloggers rely on Ecto, Mars Edit, w.blogger, Qumana and recently Windows Live Writer and browser plugins like Performancing for Firefox and likes.
It became a cult like fashion to predict the end of desktop applications and ask stupid questions like who need MS Word when you have a Zoho Writer or Writely. And yet MOST, including those who say end of desktop applications, use desktop blog publishing applications like w.blogger, Windows Live Writer, Ecto and likes to post the very blog. Many (windows users) also conveniently ignore the fact that you have a notepad, a wordpad and then paid version ofcourse, MS Word to create documents of varying complexity and information. In my opinion, these online editors may replace my notepad or wordpad, but definitely not MS Word. If you can do what you have been doing with MS Word using any of those Online Editors, believe me, most likely you shouldn’t have bought MS Word in the first place. You can use wordpad instead.
Take the example of Online Spreadsheets. Ask anybody who is using Excel for a while. They could replace the desktop Excel only if you have been using 1-5% of what Excel offers. Can’t imagine online Photo editors (vs. Photoshop) and presentation editors (vs Powerpoint).
But online applications bring some interesting aspects to the table. Often these are what confuses most to think that online apps will completely replace desktop counterparts.
- No installation required, so easy to distribute and upgrade.
- Access from any where as long as you have internet connection.
- You need internet connection all the time to access.
- Interface is minimal and poor visualization comparatively.
And, Desktop Applications
- Can provide Rich and highly Visual interfaces. If you think about user experience, think about desktop clients.
- are faster and easy to work with.
- Can work offline. You don’t need internet connection always to work with. Seriously important for many of us.
There is no single solution for all. We must choose based on what we need. With all the hype around Web2.0, it would be tempting to make everything an online application. Which is absurd. Everything can not be an online application. And neither a desktop application. Who would want to use an online Photo Editor instead of desktop PhotoShop? It would be better to create the best of both worlds when user interaction need to be essentially rich and needs ability to work offline (as neither online nor offline desktop alone can not take advantage of the situtation) and also need all of that an online application offers. But for all other applications, online applications will serve the purpose without any doubt.
Revisiting ‘The 12 Myths of Mobile UIs’- Part1
Aaron Marcus, the founder and President of Aaron Marcus and Associates, Inc wrote an article “The 12 Myths of Mobile UIs” for Software Development Magazine and was published in May 2003. Its been more than three years since then and lots of things have changed in the Mobile world across the globe. So let us revisit those 12 myths and see if there is any change in the stand.
Myth 1: 3G is here! : The original article predicts that “The U.S. will be the last to get the advanced messaging, data streaming, multimedia and fast transmission promised by third-generation wireless standards. Japan and Korea, followed closely by China, are likely to lead the way, with Europe trailing second, as has been repeatedly demonstrated over the last decade in the telecom marketplace”. Let us see how the top 4 US Carriers are doing in 3G as of today.
- Sprint-Nextel : Sprint-Nextel has the largest Mobile Broadband network covering 216 major Metropolitan markets and 486 airports. (Source: Sprint Mobile Broadband Network ). Average speed is around 400-700kbps. Sprint is also upgrading its network with a new revision of EVDO for better speeds. Sprint-Nextel was in the news on 8th of August 2006 for its bold initiative to launch 4G network based on WiMAX technology. The company’s deployment plans target a launch of the advanced wireless broadband services in trial markets by the end of 2007 with plans to deploy a network that reaches as many as 100 million people in 2008. (No figures available on how many of its customers are 3G customers.)
- Verizon Wireless : Verizon Wireless, the first to build a national wireless broadband network based on CDMA EV-DO (Evolution-Data Optimized) technology launched BroadbandAccess in October 2003 and announced a national rollout in January 2004 (Source: Verizon Network Facts). Currently serving around 181 cities at average speeds of 400-700 kbps. By the end of the second quarter, 2006, 10 million customers had broadband-capable devices, including phones, PDAs, Blackberries and laptop PC cards. (Source: Verizon News Release Aug 1 2006)
- Cingular Wireless : As per a News Release from Cingular on 22nd September, 2006, Cingular’s 3G network is currently serving customers in the following markets: Austin (TX), Baltimore, Boston, Chicago, Dallas, Houston, Indianpolis, Las Vegas, Phoenix, Portland (OR), Salt Lake City, San Diego, San Francisco, San Jose (CA), Seattle, Tacoma (Wash.) and Washington, D.C. (No figures available on how many of its customers are 3G customers.)
- T-Mobile : In September, 2006, T-Mobile won a bid for large portions of the 3G Spectrum. The 3G network will be based on a UMTS/HSDPA solution and should be launched sometime in 2007.
Clear number of total 3G subscribers in USA is not publicly available, but reading between news and reports, it can be some where around 7-12 Million. Which is quite low compared to 218 Million of total Mobile subscribers in USA.
As per a news release by UMTS Forum on 13th Jun 2006, worldwide subscriptions to 3G networks exceeded 100 million. The 100 million subscriber milestone represents almost 75 million UMTS/WCDMA customers and more than 25 million CDMA2000 1x EV-DO customers. It is unclear, what is portion of USA in those 25 Million CDMA2000 1x EV-DO customers. (May be around 7-10 Million). But when it comes to WCDMA, Western Europe represents just over half of the world’s total WCDMA subscribers. The region currently holds 50.4% of the global WCDMA subscriber base, with Asia Pacific contributing 47.8%. The remainder – less than 2% – is contributed by subscribers in the Middle East, Eastern Europe, USA/Canada and Africa.
The statistics and recent news stories clearly indicate that 3G Customers and services are much more prevalent in Japan, Korea, and most part of the Europe. And USA is trying to catch up.
So, myth is still true. 3G Services are NOT yet ready. Though networks seem to be available to a greater portion of Consumers, it seems not many are taking the bite.
In the upcoming posts, let us see how the rest of the 11 myths stand out.
[tags]Aaron-marcus, 12-Myths, Cingular, Verizon, Sprint, TMobile, USA, 3G[/tags]
INSTANTMOTO – Motorola Mobile Phones on a Vending Machine near you
Motorola, the No.2 in Mobile phones will be the No.1 to offer its Mobile phones and accessories through a Vending machine. The stores are operated by San Francisco-based Zoom Systems, which also operates iPod vending machines. Currently these vending systems are in the San Francisco International Airport and Macy’s on State Street, in addition to more locations across the country.
The vending machine-like “Instantmoto” stores will sell 12 kinds of phones and 18 accessories. Shoppers will be able to use credit cards to purchase mid- to high-end models, including the Razr and the Q, and can buy with or without a service plan for T-Mobile, Verizon and Cingular service. Using a touch-screen, customers can pick a phone’s style, color and accessories, such as car adapters and chargers. Then go-online to the carriers website to register for the service.
The machines are about three times the size of a typical beverage vending machine, so one can spot them easily. These machines are being installed in nearly 20 malls and airports nationwide by November, 2006.
[tags]Motorola, Mobile-Phones, Nokia, Zoom-Systems[/tags]
Virtual Keyboards are no longer safe
To fight with keyboard loggers (the spyware programs which record your key strokes) some banks started using Virtual keyboards. When using virtual keyboards, you will not enter your password using your keyboard. Instead, you will use your mouse to enter the password by clicking on the alphabets and numbers that appear as images on the screen. It seemed to have worked so far. But not any more.
As per a news item, virtual keyboards are no longer safe, and trojan horse programs have been spreading that can log partial images of the virtual keyboards along with keystrokes without notice of users, enables to break the code. Unfortunately, only 6 of 30 anti-virus programs could detect the trojan horse program.
A Spanish security company, Hispasec Systems, has revealed details of “Trojan horse” programs that can capture video imagery of an unsuspecting person’s computer use. If the user enters a PIN on a bank’s virtual keypad, the dastardly program is a witness.
Gartner Inc. security analyst Avivah Litan said screen-capture programs that attacked virtual keypads emerged as early as 2003, when banks in Brazil fell prey. She said the technique has remained relatively rare because the programs consume a lot of bandwidth and storage, and there have tended to be a lot of easier targets.
But that may be changing. Quintero said Wednesday that a newly detected Trojan combines keystroke-logging and video-capture functions — and instead of recording the entire screen, the program just grabs images of the immediate area near where the user clicks the mouse. The spy receives a smaller file, making the attack easier to pull off.
