June 4th, 2009 Scarcely anything material or established which I was brought up to believe was permanent and vital, has lasted. Everything I was sure or taught to be sure was impossible, has happened.
Winston Churchill
The modern world has a lot of marvels, if you look at it from the eyes of someone who lived a few decades ago.
Posted in information | No Comments »
May 19th, 2009 For years I have wanted a service that would send me updates from various sources on the net to my IM.
I am almost always online. Most services I use frequently have RSS feeds, however problem with RSS always was that you had to poll it for data. Yes, there are readers that will do that for you. But I have always wished for a service that would do this for you.
I found chatterous, it however was a bit sluggish in sending messages and you could only have one feed for per group. Friendfeed on the other hand was fast, worked well, allowed me to aggregate feeds into one channel. With this support for instant messages friendfeed becomes really handy. I am a fan!
If you have not tried friendfeed, maybe you should give it a try.
Posted in information, web | No Comments »
April 28th, 2009 Don’t count on donations is my advice.
Selling consumer software: very tough, but can be done by one individual.
Selling to businesses: very specialized, much easier to make your first $100K, but you can’t be a one-man shop.
Posted in programming | No Comments »
September 29th, 2008
Python is an awesome language. The objective of a programming language is to instruct the computer what you want it to do. Ideally, the lesser instructions you need to give, the better the language. What makes python awesome is not just the ease of programming or readability but the availability of a large number of really useful libraries. You can get directly to what you want to do, and let the machine bother about the rest.
Let me give you an example: Say you want your computer to read out all the post from an RSS/atom feed. Just put together a few lines of code as follows:
import feedparser;
import speech;
import sys;
feed = "http://nunespascal.com/feed/";
if len(sys.argv)==2:
feed = sys.argv[1];
d = feedparser.parse(feed);
for e in d.entries:
print e.title;
speech.say(e.title);
print e.description;
speech.say(e.description);
If you wish to download python you can get it from the official python download page. A lot of flavors of Linux would already have it installed.
You will need the libraries feedParser (To read RSS/atom feeds) and pyspeech(To read out the text). These are not part of python by default. You can download them, or install using easy_install. Here is some very good documentation on easy_intall.
Posted in programming | 2 Comments »
September 24th, 2008 Malcom told me today that my blog looks really old. I couldn’t disagree that the theme has not changed for a long time now.
I did try searching for a new theme, only to realize how much I love the simplicity of this theme. I did find a few bugs that creeped in when I was making changes and fixed those.
So I settled for a change of colors. Hope you like it.
Posted in nunespascal | No Comments »
September 17th, 2008 needs time.
If all your energies are dedicated to just completing a task, you will almost always decide to do it a way you know for sure will work. To innovate; to find better, simpler, faster, or more elegant solutions, one needs to have time to think about the problem at hand. Innovation needs you to experiment, have time to make mistakes and recover from them.
Naturally no one has infinite time to solve a problem. But if you are very hard pressed for time, processes will stagnate. Innovation will almost come to a stop. I believe that one should always be pursue innovation. That means that one should always have more time alloted for a task than strictly necessary.
The road to innovation is not by thinking out the best way. But by experimenting on several alternatives. Making the mistakes along the way. And learning the lessons forever.
Keep experimenting. Keep innovating.
Posted in work | No Comments »
September 1st, 2008 I am sure all those working normal jobs have at some point cribbed about how dumb there bosses are. No boss can be dumber than one who wastes the time of his team. There are several ways to waste time. I will not elaborate on those here. If you get a dumb boss, move on. Smart people are hard to find, but they are always good to work with. Hunt such smart people and work with them. Forget the rest. Respect your time. Someone who doesn’t respect his own time, and doesn’t care about yours; is wasting your life.
It is just your very immediate boss that matters. How do you know if you are working under someone dumb? Well, I am sure most of you can tell, but still: someone who wastes you time in needless tasks, isn’t confident in the skills of their team, takes all credit for things that go right, and blames the team for everything that goes wrong. The easiest way to find someone unfit as a boss is if the person doesn’t take responsibility for his team.
Posted in work | No Comments »
August 19th, 2008 John Resig is the creater of jQuery. jQuery is java-script library. What makes it really wonderful is that it lets you do a lot of dom modification is just a few lines. Additionally most of the cross browsers issues are taken care of by the library. That means you spend more time doing what you want.
No. This site does not use jQuery. But I use it at work, and find it awesome. If I am to redesign nunespascal.com jQuery will surely come handy.
Posted in programming, web development | No Comments »
July 4th, 2008 “Meetings are the best way to kill productivity and crush creativity so keep ‘em short.”
I read this on a blog post today, and couldn’t agree more. Why? Well I have wasted a lot of time in unproductive meetings lately. They have wasted my time, wasted a lot of energy and as for creativity; as a result of those last few meetings I have come to believe that: The creativity of a group in a meeting comes down to that of the least creative amoung the group, maybe even lower…
Sadly meetings cannot be totally done away with. You will surely find a lot of sites that will give you a lot of good ways to conduct meetings. But I prefer them short. Set a finite time so that you don’t get carried on. Communicate what you need to. If something needs to be talked out, and you run out of time, schedule another meeting, the next day if possible. This will give everyone involved a lot of time to think about what they have to say. Should avoid beating around the bush. Ranting away your thoughts in a meeting will very often waste the time of everyone involved.
Yes I know that short meetings and rescheduling is not always possible. But when possible, it will help a lot by increasing the intellectual thought put into the ideas to be discussed in the meeting.
Posted in work | No Comments »
June 17th, 2008 Since computers first appeared, they have gone on to make human life better and easier. What troubles me is that still only a handful of people can really tell a computer what to do. Yes we are way better than a few years ago; but still a lot of people don’t know how to harness the power of a machine to solve their problems. Make their day to day life easier.
There will always be those who know tools better, and can solve problems faster. But if the commoner was able to instruct a computer how to solve a problem, we would be much better off. What keeps the commoner away? Computers still cannot understand natural language. We can reasonably state that it will be a long time before they can understand natural language instructions and code for themselves. However as languages improve and allow people to specify instructions at a much higher level, giving the instructions should be easier. I hope this enables more people to program.
The other remedy to the situation is that we learn to speak the language of computers. Fundamental programming logic should be a part of school education. Just as kids learn languages to talk to other humans, it is necessary that they know how to talk to computers too. What do I mean by fundamental programming logic? Anyone who understands programming in one language, understands how to communicate with a computer. It is then no big deal to learn programming in another language. Just a matter of picking up the syntax.
Why is this knowledge needed? Machines are better at solving certain types of problems. Excellent candidates to carry out repetitive tasks. But people who are oblivious to the world of computers and programming, often don’t realize the many ways in which these machines can help them. As a result a lot of things that can be automated are still waiting for someone who understands both the task and computers to automate the process. Tell the machines how to do it once… and no one will have to waste their time doing it in future. To make that future happen, everyone should know some programming.
Posted in programming | No Comments »