Skip to main content

Posts

Hungry for Change -- the documentary

Documentaries about food and health are almost always controversial, especially if they include a view on dieting and weight loss. They end up espousing a myopic view of how to lose weight and be healthy, and lose the viewer who is a long time skeptic after seeing a lot of fad diets come and go. The documentary "Hungry for Change" was a pleasant change. It focused on giving out balanced information on how the US as a nation has a high percentage of obese individuals, despite all the health awareness, and diets in circulations. The premise of the documentary is that we have strayed from eating the foods our bodies evolved with through million of years to consuming highly processed foods, and if we change that by eating less processed foods, we'd have a better health. The documentary starts with some eye-opening highlights: Supermarket foods are engineered to have a long shelf life, to be appealing and addictive, and be not fulfilling so that we buy more The proto...

Enterprise Data Workflows with Cascading, by Paco Nathan, O'Reilly Media

For people interested in developing Hadoop analytic applications there is a plethora of options. The options range from writing low-level, hand-tuned Java map-reduce code, to using a higher level language to manipulate the data such as Pig and Hive. There are pros and cons for each option. For the first, the code becomes complex for anything other than the canonical word-count example, and for the latter, to do anything meaningful, you almost always end up augmenting the higher level language with user-defined functions written in a different language to regain power and flexibility, causing maintenance nightmares. A happy medium in between is to use one of the data-flow libraries for Hadoop, of which Cascading is one. Since Cascading has been around for some time, the online documentation is relatively mature, and includes a gentle introduction to the library, with example source code, and a well written user's guide. However this does not obviate the need for a book that desc...

Compiling the Firefox codebase

Out of curiosity, I decided to take a look at the Firefox codebase, and compile it on my Mac. Mozilla's developer pages are great, with elaborate instructions on how to get the source code from the mercurial repository, to compiling and running the codebase on various platforms. You can find the details at: the Mozilla developer guide , and on Mac OS X they are as simple as: Get the source code from mercurial repository hg clone https://hg.mozilla.org/mozilla-central Install a specific version of autoconf (2.13) brew tap homebrew/versions brew install autoconf213 Build Firefox cd mozilla-central ./mach ./mach build The build took roughly 2 hours to finish on my MacBook Air. Run ./mach run The resulting build is similar to Firefox nightly, and includes all the bleeding edge features and instabilities, but is great for tinkering.

Back to Firefox

I have been using Chrome as my primary browser ever since it first came out, and have been pretty pleased with it. At the time I switched from Firefox because Chrome was the faster browser, and arguably had fewer memory leaks, and with its growing ecosystem of extensions and applications, I never felt the need to use any other browser. However, lately I started having problems accessing some legacy sites that I needed for work, that employ Java for some of the content, and starting or joining WebEx meetings. Both problems are due to the fact that Chrome is a 32-bit browser, and the available Java and WebEx plugins are 64-bit for the Mac. Since Safari is a 64-bit browser, I used it for a bit as my backup browser to launch WebEx meetings, and access the legacy websites, but it was a minor inconvenience to use two browsers. A friend sold me back on Firefox, with the cross-device sync feature--one that I heavily love on Chrome, the tab groups feature, and the recent memory leak fixes....

The Shallows

I finally finished The Shallows --a book by Nicholas Carr--about how the Internet is changing our thinking, and how the social network distractions are making us stupid. The book argues that with advances in technology, we have lost our ability to immerse deeply in reading, and consequently the ability for deep thinking. The book traces how knowledge transfer has evolved through the ages: from the early days of oration, where people had to focus hard to comprehend the message that is being conveyed, to writing on the scrolls without the use of punctuation, to the modern printed form, and finally to the digital display of information using devices with continuous scroll. Even though the book is an interesting read, it took me a long time to finish, probably for the same reasons listed in the book. I read the shallows on and off using my Kindle App on my laptop, and during these short spouts of reading, I was distracted by e-mail, social media, and researching topics on the web. What ...

The iPad and the Kindle

Like many people, I love to read, especially when traveling and going on vacation. Because travel space and carry-on weight are always at a premium, I am forced to get a small book that I can carry easily with me. The choice of book is a gamble: either it will be an enjoyable hit, or a disappointing miss. In the latter case all is not lost, since I can usually buy another book at the airport, or at a local bookstore where I am at.  I have always wondered how nice it would be to be able to carry my whole library with me, and read the book of my choosing and mood. So when the Kindle came out, I was very excited, and bought one immediately. The promise of carrying my whole library in the digital device without incurring the weight was overwhelming. The Kindle did not disappoint: the screen was as easy on the eyes as the printed page, the battery life was fantastic, and the added bonus is that I could buy books all over the world and have them delivered wirelessly to the Kindle with...

Switching to Android

I have been an iPhone user for about 4 years now, but have recently been frustrated with the poor battery life on my phone especially with relatively moderate usage--I use the phone for the occasional phone-call or text message, and use it primarily for work emails. I grew tired of having to charge the phone multiple times per day, and started to look at other options. My coworkers have been pleased with the battery life on the Samsung S3, so I decided to give it a try. I went to the AT&T store, and upgraded my phone. Before I did, I looked at the iPhone 5, and while it is a beautiful design, I thought its screen size is a big disadvantage compared to the Samsung. My first impressions with the Samsung were not very positive: the usability is inferior to the iPhone, and things were not as intuitive or as consistent. However as I continued to use the phone, I discovered a lot of features that in my mind overshadowed the usability issues, and the phone started growing on me. Fi...