[Ilugc] Hardware and Software Bloat in Tablet Computers

  • From: lug at chandrashekar.info (lug@xxxxxxxxxxxxxxxxxx)
  • Date: Tue, 04 Dec 2012 13:42:19 +0530

Hi, 
  

 Tablets are the latest consumer computing devices. It requires no
 introduction. What I want to discuss is their hardware requirements, mainly
 their CPU/GPU power and their RAM and the software that use them.
[snip]    
 1. What part of the software drives the hardware requirements so high to
 the tune that 2X RAM than I had for PC is considered insufficient and most
 devices have 4X or even 8X?

Culprit #1: Virtual machines and interpreters (Dalvik VM, Java, 
HTML5/JavaScript engines, etc...).

In good old days (and I remember 8086 based IBM PCs to 80386 based 
PC-AT machines), men were men and wrote programs directly in 
in assembly language for most needs. Programs are small, succinct, 
fast and very efficient. Then, later when the newer generation 
programmers took over (in the early 90s), they moved over to compiled 
languages like C and Pascal. The mid-90s witnessed the rise of
so-called RAD tools (Visual Basic, PowerBuilder, Delphi) which demanded
more hardware power to get their jobs done. 

By late 90s, everybody were talking, drinking, eating  OOPs, virtual 
machines, XML and so on - all of which claim to make programmer's 
lives "simpler" at the expense of huge processing power and memory.
 
Year 2000 and beyond, we are moving towards web services, distributed
architectures, cloud computing - all of which ultimately demand tall
layers of framework overhead. Coupled with them, we are looking at 
"refined" UI and human-computer interface (multi-touch gestures, 
voice-recognition, face-recognition and what-not) - which again hikes up
the processing and memory requirement.

Culprit #2: People are "trying" hard to become lazier. They want to learn
less and make the computing devices adapt to them. But unfortunately, 
I doubt it if this is working at all. 
  
 2. If tablets are meant to be portable and lightweight, in terms of
 hardware, how come they become heavy weight in terms of software?

Most tablets are fundamentally flawed by their design/architecture and
choice of OS/software stack.

 3. Have the programmers messed up somewhere and have bloated things beyond
 control and there is no going back?

Yes. Read Java, .NET, and layers of frameworks on top of them. If the
entire user-space stack were completely and carefully developed in C/C++,
a tablet with a modern specification would feel like a super-computer our hands.
This whole baggage of web stuff (HTML5, Javascript, CSS, XML, JSON) are
slowing things down due to layers of abstractions to make designers/programmer's
lives easier.

But the bigger problem is, we lack smart programmers - they take at-least a 
decade (or a couple of hundred-thousand useful SLOCs ) to form. And they 
are expensive. The world is willing to live with many not-so-smart 
programmers/developers guided by a sophisticated programming/development 
framework to safeguard them from their own mistakes. This is all part of the 
software-hardware-business-and-programmer-job economics :-)

Cheers,
Chandrashekar. 

-- 
Chandrashekar Babu.
http://www.chandrashekar.info/

Other related posts: