Archive for the ‘Tech’ Category

Why use Creative Commons license?

Friday, December 26th, 2008

Many people have asked me on why I released my Vim book under a Creative Commons license instead of getting it published.

(1) First of all, I did try to talk to publishers, hoping that I would convince them to release the book simultaneously under a free license as well as a printed version (which is true for many technical books these days). All the publishers I spoke to said there is no market for such a book and said no to the idea. But that didn’t deter me, because I really wanted to see such a book out there, so I wrote it anyway.

(2) Technical books readership is on the decline. It seems very few techies buy and read books, they just google it and solve their immediate problems vs. reading a whole book.

If you don’t believe me, see what John Resig, Charles Petzold, Jeff Atwood and Eric Sink have to say on the subject.

(3) I had a concern bigger than not getting it published, it was that nobody would get to know about the book and hence the book would go in vain. Since money was not a motivating factor in this particular case, I was far more interested in seeing lots of readers and widespread usage than to see fewer readers with the published book although the latter would make me more money.

Tim O’Reilly’s words remained stuck in my mind:

“Obscurity is a far greater threat to authors and creative artists than piracy.”

Of course, I did have a printed books option, so I still could have made money just like 37 Signals did with their “Getting Real” book which was free to read online plus available as a paid PDF download. Unfortunately, it seems I lack their marketing pizzazz.

(4) The book was intended to be a contribution back to the open source community. We constantly keep taking and taking - whether it is using Linux, Vim, Firefox, or countless other software, so it felt great to be useful to the community in return.

As Steve Jobs said:

You know, we don’t grow most of the food we eat. We wear clothes other people make. We speak a language that other people developed. We use a mathematics that other people evolved… I mean, we’re constantly taking things. It’s a wonderful, ecstatic feeling to create something that puts it back in the pool of human experience and knowledge.

(5) My experience has been that a lot of people would like to translate such books to their native languages to help more people use the software. So, I’m happy to see volunteers now translating the new Vim book to Chinese, Russian and Swedish languages!

I needed a balanced approach to what I was trying to achieve, and all the above reasons led me to use a Creative Commons license.

What product creation should be about

Friday, December 5th, 2008

I just finished reading “Subject To Change: creating great products and services for an uncertain world”. This book is written by Adaptive Path, the same guys who invented the words “blog” and “ajax”, as well as creators of the Aurora browser concept.

It has been a revelatory book for me, a developer who considers himself to be the last person to know about “design.” The book mainly focuses on the lessons learned from their experiences in working with clients to design and create products and services.

Design

They define design as an activity, as opposed to a look and feel that is added later on. The activity incorporates:

  • Empathy - Design must serve a human purpose, and so design requires an understanding of how people will interact with whatever you’re designing.
  • Problem Solving - Design really shines when it’s used to address complex problems where the outcome is clear, many stakeholders are involved, and the boundaries are fuzzy.
  • Ideation and prototyping - Design produces things, whether they’re abstract (schematics, blueprints, wireframes, conceptual models) or concrete (prototypes, physical models). Design is a creative activity and thus requires actually creating something.
  • Finding alternatives - Design is less about the analysis of existing options than the creation of new options. Sometimes that means looking at existing options in new ways, and at other times that means creating from scratch. An effective design process typically offers many solutions to a problem.

They repeatedly explain that the experience is what matters to the end-user and that’s the real product rather than how it is delivered.

(more…)

Great response to ‘A Byte of Vim’

Saturday, November 29th, 2008

It has been three days since I released my Vim book. I’m very happy with the response.

For starters, there has been 5003 PDF downloads, 14,715 unique visitors and 35,129 page views. That’s in just three days!

Second, I’m glad to see the kind of responses that I was hoping for:

@raseel says “Great Book !! Although I use vim everyday as an editor as well as an ide, the book makes u realise how much more it can do.”

@techpickles says “have been thumbing through ‘byte of vim’. learning a ton even having used vim for years.”

I’m happy to see people discovering that Vim can do more, way more than people know about. There is a lot of power underneath the hood and it is a tragedy that it goes unnoticed even by long-time Vim users. Years ago, I started to wonder if I could change that situation and that’s when I started writing the book.

Regarding the responses via Twitter, it was interesting to see how fast the information was spreading. I could see retweets (linking to the book) being passed on from someone in Switzerland to someone in Ireland to someone in USA and so on, in quick succession.

Most of the traffic came from Reddit and Hacker News, so many thanks to those readers who submitted the news to these discussion sites. Seeing ‘A Byte of Vim’ as the top link on Hacker News for more than a day put me on a geek high.

Most of the feedback was from the vim.org mailing list where people were really happy to see the news. I’ve added some of these feedback to the What Readers Say section of the book’s front page.

There has been a lot of contributions to the wiki in terms of “bug fixes” i.e. typo corrections, grammar corrections and procedure corrections. It feels like a ton of editors are holding a magnifying glass to the book :)

One of the more exciting mails I received was from Yeh, Shih-You who wanted to start a Chinese translation! He said:

My name’s Yeh, Shih-You, a programmer and a Linux-lover from Taiwan. Having been using Vim for about 3 years, I found out that getting the most out of Vim suddenly becomes a necessity, in order to improve productivity as well as efficiency. Your book came out at the perfect time.

I’m interested in contributing translations in Traditional Chinese. Thanks for all the effort you’ve put into this book.

Now that is awesome.

On a side note, it’s amazing to note that even for my previous book, the number of mails from Chinese readers have increased dramatically in the past couple of years. So, in a way, I shouldn’t have been surprised that the Chinese translation was the first one to be started for the new book as well. The Chinese guys are already on the forefront of hardware manufacturing, but now seeing firsthand that they are so hungry to learn and devouring information online, it is hard not to imagine them at the forefront of software in a few years as well.

To sum it up, I’m happy with the response, although I would’ve been happier if a good number of print copies were sold, as well as more community contributions in terms of content such as new topics and chapters.

Many people are surprised and curious on why I choose to release my book under a Creative Commons license, I shall explain that in a different post later.

Announcing my free book on Vim

Tuesday, November 25th, 2008

Today is the first day of foss.in/2008, and on this occasion, I’m happy to announce the first public release of my Creative-Commons licensed book on the Vim 7 editor.

This book is meant for both beginners and advanced users.

For beginners, it walks you through the first steps to learning about modes, discusses about typing skills to be effective and moves on to the editing basics.

This book will definitely appeal more to people who are Vim users already because it helps add a huge number of tricks to their arsenal, whether it is more efficient editing, personal information management, coding your own plugins or making Vim a programmers’ editor.

I hope that fellow Vimmers will find these notes useful. Even though it is in a book format, the writing style is more like a tutorial and is informal, which should be familiar to readers of my Python book.

Both books are under the Creative Commons Attribution-ShareAlike 3.0 license, so you’re free to download it, email it, share it and improve it. In fact, the book is on a wiki, so you can just click on ‘Edit’ in the left sidebar of any chapter to improve the book in a matter of seconds. When in doubt, please use the ‘Discussion’ link to add your suggestions and comments.

For those who prefer reading books they can hold in their hand, please consider purchasing a printed copy of the book. This will also help support the continued development of the book.

For those PHP gurus familiar with GeSHi syntax highlighting, I would greatly appreciate any help in improving my vim syntax highlighting source, especially in handling Vim-style comments, etc. Please mail me if you can help.

This book has been in the works for several years, so I’m glad to see it finally in good enough shape for releasing it. Although I haven’t done as many rewrites as I would have been satisfied with, I decided it was better to <insert cliché of “Release Early, Release Often.”>

I dedicate this release to foss.in and GTD principles.

Thought for the Day

Wednesday, November 12th, 2008

Look at the design of a lot of consumer products—they’re really complicated surfaces. We tried make something much more holistic and simple. When you first start off trying to solve a problem, the first solutions you come up with are very complex, and most people stop there. But if you keep going, and live with the problem and peel more layers of the onion off, you can often times arrive at some very elegant and simple solutions. Most people just don’t put in the time or energy to get there. We believe that customers are smart, and want objects which are well thought through.

– Steve Jobs on the design lesson of the iPod in Newsweek, 2006-10-14

Internet usage in India

Monday, November 3rd, 2008

Every startup needs to do some market research while working on their next big idea. And part of this market research is looking at demographic and economic data to find out the size of your target audience.

For most of those who are reading this, the audience probably is people who use computers. Now, how do we find out such numbers? That’s where the Internet and Mobile Association of India steps in with their “Internet in India 2007″ report (PDF).

Some of the high-level overviews from that report:

  • The numbers are based on a survey across 30 cities and 65000 individuals.
  • The breakdown of the urban population is explained nicely in this funnel graphic:

internet_in_urban_india

  • 70% of people who know how to use computers have accessed the Internet at least once.
  • 70% of these at-least-once users become regular users.
  • Claimed internet users have risen from 32.2 million in 2006 to 46 million in 2007.
  • 38% are from the Top 8 urban cities, 12% from 5-10 lakh population cities, and 29% from 2-5 lakh population cities!
  • Young Men and College Students are the major chunk of the growing Internet user base.
  • There has been a decrease in usage by older men and non-working women.
  • PC ownership increased by 48% last year! Thanks to slashed PC prices.
  • With Government of India declaring 2007 as the Broadband Year, Internet ownership has increased by 32% last year!
  • The difference in increase of PC ownership (48%) vs. increase in Internet ownership (32%) is probably because of broadband penetration and availability
  • 36% use a cyber-café, 30% from home, 25% from office, 7% from school/college and 2% others.
    • The cyber-café is still the most prominent point of Internet access.
    • This is a valuable data point to consider regarding security when designing applications - people are NOT necessariliy using their own desktops all the time.
    • Usage from home and cyber-café has decreased vs. Usage from office and schools/colleges has increased. Note that these are percentages, the absolute numbers might paint a different picture, but I couldn’t find them in this report.
  • Usage can be classified into three broad categories:
    1. Communication - Email, chat
    2. Infotainer - Gaming, news, blogs, encyclopedia
    3. Sticky applications - Online banking, online ticketing, online shopping
  • 61% state communication as the main reason they access the Internet. 25% for information and e-commerce. And 13% for entertainment.
    • What’s interesting is that percentage of people with information as the main reason has decreased from 32% in 2006 to 20% in 2007.
    • I’m guessing that percentage of entertainment will increase with better broadband access.
  • 2/3rd of users access Internet 2-3 times a week.
    • 25% access daily, 19% 4-6 times a week, 23% 2-3 times a week, 18% once a week, and rest 15% about a few times a month
    • (It should be strange for us always-on people to see 75% of people not use it on a daily basis!)

These are very interesting numbers. I wonder how they compare with the growth graphs of Internet-advanced countries such as USA or Japan.

The IAMAI have many more interesting reports on topics such as Online Banner Advertising Market in India, Consumer E-commerce Market in India, Online Gaming in India, Mobile Value Added Services in India, and so on.

A Byte of Python in hard copy

Wednesday, October 1st, 2008

If you’re the kind of person who prefers to read a physical book vs. online books, then you’ll be happy to know that the A Byte of Python book is now available as a printed hard copy.

The best part is that the hard-working translators can also publish their translations and sell the printed copies, benefiting both the readers and the translators.

I had received many requests from readers for hard copies of the book and I’m glad to finally get this working. Interestingly, I was previously trying to get the book printed via CreateSpace because the book would automatically get listed on Amazon.com (since CreateSpace is owned by Amazon). However, their process was not streamlined and confusing. Worse, I couldn’t get the PDF in their required size formats because of a bug with mwlib.rl.

I got tired and decided to try Lulu and I was very surprised. They are miles ahead in terms of usability of their service as well as wide range of options and sensible defaults. For example, it was a pain waiting for manual approval of the book by the CreateSpace staff and it is an unnecessary delay every time I upload a new version. On the other hand, Lulu made it very easy to design a rudimentary cover using their process. Overall, I was able to make the printed copy available for purchase in a single evening.

Of course, all this is possible because of the ability to generate PDFs from a wiki, thanks to the nice people at PediaPress.

Update: For Indian readers, the book is now available via pothi.com.

Ideas are Cheap : Better email

Friday, September 26th, 2008

I was just browsing through this paper on “Generating summary keywords for emails using topics” and was fascinated by its usefulness, especially because it “selects words that describe each message in the context of existing topics rather than simply selecting keywords based on a single message in isolation.”

Imagine if we had a smart email client which will automatically show the summary of the email in a few words rather than simply junk/not junk classification. That would help us a lot to triage our email.

On another tangent, how about an email client that sorts your inbox by importance and not by time? Importance can be automatically determined by how often you reply to the sender, what topics you reply fastest to, whether the sender is from the same company, etc.

We have websites like Amazon and Yahoo! that automatically customize their websites based on our usage patterns, why can’t email clients do the same?

Email clients have been around for so long, can they become smarter than a sorted grid with folders?

P.S. While email is the big fish, there is a lot that can be done for personal information management.

IONLAB - The Next Experiment

Saturday, September 20th, 2008

It’s been nearly 5 months since I last quit my job. Five months. Wow. It’s weird because it doesn’t feel that long.

I spent most of the first few months whiling away, and I thoroughly enjoyed it. I did have some plans though. For one, I was hoping to go for an M.S. in the USuAl places but the American universities didn’t think well enough of me and asked me to stay back, heh.

I wasn’t disappointed though. I thought I’ll spend some time in gaining some skills and get back to another job in the computer science areas that I wanted to explore.

But as John Lennon would say “Life is what happens to you while you’re busy making other plans.”

Vikram and I were working on reviving our iPod Charger business and since I didn’t have anything in particular to do, I did some of the running around. However, we still didn’t have a big picture in mind, just that we wanted it to continue.

Suddenly one day, Vikram called from USA and said that he had a brainwave to improve one of our ideas. We had last discussed it nearly six months earlier and shelved it because we didn’t think it would work. It suddenly dawned on us that the improved idea passes all our viable business criteria, especially the parameter that it is actually useful to people, it is doable, and it belongs more in the must-have category as opposed to the nice-to-have category.

After that conversation, everything changed.

Vikram quit a nice cushy job in USA, ditched his H1 visa and is back in Bangalore. He was so sure about this that his colleague Varun also got convinced about the idea and moved back to India.

Here we are, three people who have quit their jobs and working to create a new product. I hate using the latest buzzwords, so I’ll just say, yes we have our own company now. We don’t have any salary and we have lot of work.

A domain name I had registered long ago suddenly came into use. It was going to be the name of our company - IONLAB:

The ion was our first product we created, manufactured and marketed during weekends. Excited by its success, we are now working full-time on making our own products. Hence the “ion” in our name.

We are focused on designs and ideas, and match them to our capabilities. Hence the “lab” in our name, which emphasizes that we are about taking ideas to execution.

We have been having a ball of a time working on our own ideas full-time and gaining experience in expanding our ion business.

Regarding our specific idea, there’s no point in talking about it this early but we’ve described it a bit on our products page.

FWIW, I have no idea how far we will go and what will happen in the future. You may never even hear about us or our product. But one thing’s for sure, we’re going to give this our best shot and we’ll work to make it happen.

As we wrote in our company weblog’s first entry:

We love putting in effort. After all, it’s our dreams and ideas. What can be more exciting than that? As Mark Cuban once said, “The one thing in our business lives is effort. Either you make the commitment to get results or your don’t.”

Singapore Day 05 016

IONLAB is our dream, our destination.

The next experiment has begun!

How to make a website

Tuesday, September 16th, 2008

When making a website, there are simply so many aspects to consider. I’ve been gathering some useful links and information on the same, right from How to Evaluate a new Product Idea to choosing color schemes.

I’ve put all of these links together into a Website Making Howto on my wiki.

Discussions and contributions are welcome.