Down the memory lane with Digit

My tryst with the modern PCs started in the mid 90s when the internet was almost non existent in India. At the time, software and games were not easy to come by and magazines like Chip which have away trial versions and freeware in CDs along with their copies were quite sought after. Chip later became Digit in India but the freebies continued.

Digit magazine July 2019

It was with this thought that I attended the Digit Squad Tech Day in Mumbai today and it was fun to see all the colourful assembled desktops, consoles and mobile phones placed around the venue and fellow Digit Squad members participating enthusiastically in the different contests. Felt quite nostalgic to soak in the geeky environment.

Didn’t sit around idle of course and instead captured a few videos of the front camera fall detection in action for the smartphones on display. You can catch the video here.

OnePlus and Oppo seem to be catching on quite soon and they flash a dialog on screen while Samsung seems to be partially retracting their module. The Redmi K20 pro is similar in terms of responsiveness to Oppo and OnePlus but it closes the camera app instead of showing any alert. The Asus Zenfone 6z provides an interesting experience where you can see the arc on screen as the module rotates to its resting position.

And here are a few more shots from the event

3-D printers for the kitchen

A very interesting concept that has mass appeal – definitely more appetizing than 3D printed guns. Plus, people spend more on kitchen appliances than on printers, and the “ink” should be a lot more affordable:

But Contractor, a mechanical engineer with a background in 3D printing, envisions a much more mundane—and ultimately more important—use for the technology. He sees a day when every kitchen has a 3D printer, and the earth’s 12 billion people feed themselves customized, nutritionally-appropriate meals synthesized one layer at a time, from cartridges of powder and oils they buy at the corner grocery store. Contractor’s vision would mean the end of food waste, because the powder his system will use is shelf-stable for up to 30 years, so that each cartridge, whether it contains sugars, complex carbohydrates, protein or some other basic building block, would be fully exhausted before being returned to the store.

via The audacious plan to end hunger with 3-D printed food – Quartz.

The Road to Artifical Intelligence

Siri and Google Now are but a tiny drop in the ocean that is going to be AI. We’re quite a few years away, but we’ll get there eventually as hardware develops further and our understanding of the brain continues to grow:

But scientists aren’t just aiming for smaller. They’re trying to build machines that do things computer have never done before. No matter how sophisticated algorithms are, today’s machines can’t fetch your groceries or pick out a purse or a dress you might like. That requires a more advanced breed of image intelligence and an ability to store and recall pertinent information in a way that’s reminiscent of human attention and memory. If you can do that, the possibilities are almost endless.

via The Man Behind the Google Brain: Andrew Ng and the Quest for the New AI | Wired Enterprise |

Money can buy happiness (if you do the charts right)

Chart making 101

If you make the charts the right way, you can definitely make money buy happiness. Read How to Lie with Statistics, and you’ll see the above chart as a poster child for most of the tricks explained in the book:

  • The Satisfaction axis is truncated to magnify the increases – most countries have a difference of just 1 point between the lowest and highest scores
  • The income reported axis is on a log scale to compress the differences. In most cases the reported income needs to go up 2-4x for a single point increase in satisfaction.
  • The figures are self reported through an online poll (Gallup or not, after doing assignments during my management education I have increased my dose of salt when reading online poll results).

Check out the original paper for more data along with detailed graphs, and to draw your own conclusion:

While the idea that there is some critical level of income beyond which income no longer impacts well-being is intuitively appealing, it is at odds with the data. As we have shown, there is no major well-being dataset that supports this commonly made claim. To be clear, our analysis in this paper has been confined to the sorts of evaluative measures of life satisfaction and happiness that have been the focus of proponents of the (modified) Easterlin hypothesis. In an interesting recent contribution, Kahneman and Deaton (2010) have shown that in the United States, people earning above $75,000 do not appear to enjoy either more positive affect nor less negative affect than those earning just below that. We are intrigued by these findings, although we conclude by noting that they are based on very different measures of well-being, and so they are not necessarily in tension with our results. Indeed, those authors also find no satiation point for evaluative measures of well-being.

As for my thoughts on the graph? Brazilians and Mexicans seem to do better with what they have than the rest of the world. Then, there’s Nigeria where money doesn’t seem to buy happiness – must be the conscience kicking in after scamming all those thousands of dollars from gullible people in the other countries.

via Daily chart: Money can buy happiness | The Economist.

Interning on FOSS 1: Open Source Development

I’ve been interning at Sun Microsystems in Delhi from May 1st and during this period, I’ve had the opportunity to research a variety of open source applications. My initial project was to explore and research various open source applications suitable for use by students and compare them against each other and with the proprietary alternatives. There are indeed a bunch of alternatives available for the software we use during the course of our day to day work.

I managed to submit a paper on “Components of an Open Source Operating System for Sustainable ICT Education in Schools in Developing Countries” to the HICSS conference, and I’m starting off a multi part post with my learnings on open source software and development.

One of the interesting works that I read on open source development was Eric Raymond’s “The Cathedral and The Bazaar”. This is probably one of the definitive works on open source development, and a number of theories stem from it. In fact, quite a few papers that I referred to during the course of my research cited this work. He has postulated the following principles in the essay:

  1. Every good work of software starts by scratching a developer’s personal itch.
  2. Good programmers know what to write. Great ones know what to rewrite (and reuse).
  3. Plan to throw one away; you will, anyhow.
  4. If you have the right attitude, interesting problems will find you.
  5. When you lose interest in a program, your last duty to it is to hand it off to a competent successor.
  6. Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.
  7. Release early. Release often. And listen to your customers.
  8. Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone. (The full version of Linus’s law – Given enough eyeballs, all bugs are shallow)
  9. Smart data structures and dumb code works a lot better than the other way around.
  10. If you treat your beta-testers as if they’re your most valuable resource, they will respond by becoming your most valuable resource.
  11. The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.
  12. Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong.
  13. Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away.
  14. Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected.
  15. When writing gateway software of any kind, take pains to disturb the data stream as little as possible—and never throw away information unless the recipient forces you to!
  16. When your language is nowhere near Turing-complete, syntactic sugar can be your friend.
  17. A security system is only as secure as its secret. Beware of pseudo-secrets.
  18. To solve an interesting problem, start by finding a problem that is interesting to you.
  19. Provided the development coordinator has a communications medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one.

Most of his principles are for software development in general, and so also apply to open source development. The key learnings form his essay are two-fold. First is that it is important to have a working prototype of the project before making it open source, or at least trying to find other developers who’d be interested in it. Second is that open source attracts a wide variety of talent that can be put to various uses, ranging from bug finding, to improvement suggestions to actual coding. Thus, it is essential to treat the participants in the right manner as everyone could make an important contribution.

One of the other observations to be made about open source development is the vital role that the internet has played in creating the synergy that exists between the developers, users and other contributors of any open source project. In fact, Eric Raymond has said as much in his essay:

… Another (in hindsight) was that the Internet wasn’t yet good enough.

Before cheap Internet, there were some geographically compact communities where the culture encouraged Weinberg’s “egoless” programming, and a developer could easily attract a lot of skilled kibitzers and co-developers. Bell Labs, the MIT AI and LCS labs, UC Berkeley—these became the home of innovations that are legendary and still potent.

Linux was the first project for which a conscious and successful effort to use the entire world as its talent pool was made. I don’t think it’s a coincidence that the gestation period of Linux coincided with the birth of the World Wide Web, and that Linux left its infancy during the same period in 1993–1994 that saw the takeoff of the ISP industry and the explosion of mainstream interest in the Internet. Linus was the first person who learned how to play by the new rules that pervasive Internet access made possible.

In essence, open source development has a lot of potential when used in the right manner. In fact, many companies use it quite strategically and couple them with interesting licenses (I’ll cover licenses in another part). There are also quite a few organizations championing free (as in freedom) software with the FSF (Free Software Foundation), headed by Richard Stallman being one of the pioneers. There is also a bit of controversy in the Free/Open Source world with some preferring the term free to open source. This has however not deterred organizations from leveraging open source development strategically. Open source development may not be practicable in every situation, particularly for routine software development in enterprises, but it definitely has its merits and I’ll be looking at other aspects of open source software in subsequent parts.