I have been working with Radiant for the past couple of days. It is definitely impressive. But I simply hated the fact that you need to work within the confines of the browser's textarea to fill in content. This is just plain lame. I am so used to Vim that typing within that small window is just plain irritating. You can of course copy paste stuff from and to vim but that is equally lame. Luckily there are a couple of ways you can work around this.
The first being the "Its all Text" extension. Its all text enables me to type anything that I type in a text area in vim. It is actually pretty cool.
The second being radiant-file-system-extension. It allows me to use the file system and version content with git. Happy hacking with radiant.
Saturday, September 26, 2009
Wednesday, April 29, 2009
Git Branch on the command prompt
It is sometimes very useful to know the git branch you are working on right from the command prompt. You can do this by editing the ~/.bashrc file.
This will show up a prompt which looks like this and fails gracefully when you are not on a git repo.
This saves a lot of "git branch" when you are coding.
This will show up a prompt which looks like this and fails gracefully when you are not on a git repo.
vagmi@deepthought:~/work/testproj[master]$ git checkout new_feature
Switched to branch "new_feature"
vagmi@deepthought:~/work/testproj[new_feature]$ cd ..
vagmi@deepthought:~/work$
This saves a lot of "git branch" when you are coding.
Wednesday, April 22, 2009
Liquid and Sinatra
Liquid is a templating language used when you need safety for your templates. I was planning to build a CMS and Liquid fit the needs of a templating library really well. I also like Sinatra for its simplicity. Unfortunately, Sinatra did not have support for liquid yet so I went ahead and built one. You can get that from my liquid topic branch on github.
There are few significant changes that you need to care about when using liquid instead of ERB or HAML.
And finally a "hello world" sinatra app with liquid.
Do let me know if you like it.
There are few significant changes that you need to care about when using liquid instead of ERB or HAML.
- None of the local members or class members declared will be available in your template
- The locals hash is respected even for the layout.
- You have to use {{ content }} in your layouts, instead of yielding.
And finally a "hello world" sinatra app with liquid.
Do let me know if you like it.
Wednesday, April 15, 2009
Star wars a cappella video
I just have two words for this. Bloody Brilliant.
Wednesday, April 01, 2009
Lets build something already
Have ever had the feeling that when you wanted to get started with something, something else had to be done first. If you are a lone hacker banging out code, you are probably fine as you know what you are building. You do not ever have to write it down. But in teams it is vitally important that everyone knows what they are actually building.
This is where product managers and project managers come in. They are supposed to have a holistic view of where the project is and where it is heading to. They are the communication hubs who deal with all sorts of information about a project and protect the team as virtual filters. The team then gets information from a single source. But you might ask what happens when there are multiple project managers and product owners but no developers in a planning meeting. The meetings tend to be something like this.
Fortunately, there is an easy way to deal with this. Get building something already. It is far easier to figure out if the presented solution fits your needs than to speculate on how it would look like. So to all the teams that are suffering from this analysis paralysis, this is my advice. Stop discussing and start building.
This is where product managers and project managers come in. They are supposed to have a holistic view of where the project is and where it is heading to. They are the communication hubs who deal with all sorts of information about a project and protect the team as virtual filters. The team then gets information from a single source. But you might ask what happens when there are multiple project managers and product owners but no developers in a planning meeting. The meetings tend to be something like this.
Fortunately, there is an easy way to deal with this. Get building something already. It is far easier to figure out if the presented solution fits your needs than to speculate on how it would look like. So to all the teams that are suffering from this analysis paralysis, this is my advice. Stop discussing and start building.
Wednesday, February 11, 2009
An interview with Ayn Rand
Objectivism is very relevant, especially in today's context.
Part 1
Part 2
Part 3
Sunday, February 01, 2009
A video on the monetary system
Apart from the conspiracy theory part in the end, this is by far the best explanation of the current monetary system.
Wednesday, January 07, 2009
India, say hello to Corporate Greed
I was browsing the net about the Satyam fiasco when I saw this. What infuriated me were the comments on the blog. They are asking people to stick to the company. This is the time the talented people should extend their middle finger and say FUCK YOU to the management. Make sure you enunciate that properly. It works best if told in groups. Tell it with enough intensity to make them die in shame.
Stay with Satyam... Are you crazy?? Jump the ship now. Don't commit a career suicide. If the man had an ounce of dignity he would not have jeopardized the life of so many people. Indians do not have social security. If a guy in India does not have a job, he is literally on the streets.
Ramalinga Raju was sure as hell not maintaining family accounts. The CFO, other senior managment and the financial/controlling staff would have known this. I am sure PWC would have spotted this and would have been duly silenced. Corporate Greed has entered India.
If you are a good programmer, you would not have joined Satyam in the first place. But if you are there, jump now. You may not get a raise, but what the hell. You can get out of the depressing situation and have a chance a save your soul.
The following days to come in an organization like Satyam would be extremely depressing and would be enough to demotivate a motivated soul. It would be full of bureaucracy where mediocrity will reign supreme. Sounds like a fun place to work?? Hell no. If you you are a rockstar coder, this is your chance.
Get out of the hell hole now.
Stay with Satyam... Are you crazy?? Jump the ship now. Don't commit a career suicide. If the man had an ounce of dignity he would not have jeopardized the life of so many people. Indians do not have social security. If a guy in India does not have a job, he is literally on the streets.
Ramalinga Raju was sure as hell not maintaining family accounts. The CFO, other senior managment and the financial/controlling staff would have known this. I am sure PWC would have spotted this and would have been duly silenced. Corporate Greed has entered India.
If you are a good programmer, you would not have joined Satyam in the first place. But if you are there, jump now. You may not get a raise, but what the hell. You can get out of the depressing situation and have a chance a save your soul.
The following days to come in an organization like Satyam would be extremely depressing and would be enough to demotivate a motivated soul. It would be full of bureaucracy where mediocrity will reign supreme. Sounds like a fun place to work?? Hell no. If you you are a rockstar coder, this is your chance.
Get out of the hell hole now.
Wednesday, December 24, 2008
An accidental trip to erode
I am blogging from Hotel Le Jardin. This hotel is amazing and has free Wi-Fi. The breakfast was one of the best I had. How I got here is a topic of another blog post. It was a completely unplanned travel. More on this later. If you are anywhere around this area, Hotel Le Jardin is definitely the place to stay.
View Larger Map
Free WiFi Rocks. :-)
View Larger Map
Free WiFi Rocks. :-)
Monday, December 15, 2008
Annual Performance Reviews and Mediocrity
Now that Performance Reviews are hanging around, all managers MUST read this.
http://headrush.typepad.com/creating_passionate_users/2006/02/mediocrity_by_a.html
http://headrush.typepad.com/creating_passionate_users/2006/02/mediocrity_by_a.html
Tuesday, November 18, 2008
HTML Helper Mode and Indentation
This is my third post for the day. I blogged about this and this earlier today. Writing smaller pieces regularly works much better than waiting for the big post. Commenters, do let me know if you like this style better.
I am really irritated with the html-helper-mode's indentation. It flattens the code rather than indenting it. I missed my tidy command from yesteryears when I did not use emacs. But I am coding on emacs now. I do not have to miss anything from within emacs. So, I added a tidy-html function to format the html as properly indented XHTML.
And I absolutely love Gist. It has solved all the quirks involved with posting code on a blog.
I am really irritated with the html-helper-mode's indentation. It flattens the code rather than indenting it. I missed my tidy command from yesteryears when I did not use emacs. But I am coding on emacs now. I do not have to miss anything from within emacs. So, I added a tidy-html function to format the html as properly indented XHTML.
And I absolutely love Gist. It has solved all the quirks involved with posting code on a blog.
Meetings and Boredom continue
I am sitting on yet another boring meeting and have written a script to write it to a PDF. Its not a pretty one but I got it done in 30 mins. That has to count for something. You would need ReportLab and PIL for this.
Beautiful Soup and ReportLab rock.
Beautiful Soup and ReportLab rock.
Meetings and Boredom
I am sitting in a really boring meeting. I was browsing reddit and found a very interesting dilbert script. I am a huge fan of Dilbert and wanted to download Dilbert strips for offline viewing. I know its not entirely ethical but what the hell. I wrote a small python screen scraper to do that. This requires you to download Beautiful Soup. If I am too bored, I will write a script to compose it as a PDF.
Thursday, October 09, 2008
Hello Clojure
; HelloClojure.clj
(import '(javax.swing JFrame JLabel)
(doto (JFrame.)
(add (JLabel. "Hello Clojure!"))
(setTitle "Clojure!")
(pack) (show))
I have a strong feeling that the lisp is all set to make a comeback in the enterprise. Check out Clojure.
Dedicated to all the souls plagued with the horrors of sane concurrency.
Sunday, October 05, 2008
Sunday, September 28, 2008
PMP?.. me?... you must be kidding
I was reading my dilbert strips, when I noticed the ad below.
Seriously! Do they really think that people who enjoy dilbert would like taking a PMP certification exam to become a (better) project manager? People, who know me, know that I have a low opinion of certifications. What they probably do not know is that I have a even lower opinion of these kits that provide improbable percentage of "Unconditional test pass guarantee". I followed the ad and was greeted with the following error.
I did a little more digging to find out about it. They have dropped 50% chance of you passing and the guarantee is no more unconditional. The comments below have "brain dump" screaming all over it.
There is really not much to project management. You have to manage priorities of the stake holders. You have scope, time and cost as your constraints. But what they dont tell you is that you cannot treat people like replacable cogs. The stuff that they teach you in PMP is a bunch of processes and the PMP certification exam is a test of memory. Having a PMP certification does not mean jack about your project management skills. In fact, I would be wary of a person who claims that PMP helped become a project manager. It is not that I have absolute distrust in certifications... oh wait .. I do. They can be cheated very easily. I know of a dozen MCSEs, MCPs (not male chauvinistic pigs), PMPs who do not have a clue of the stuff they have got certified in.
I don't know why organizations pushing for PMP certifications for their employees. I am sure there is some sick demented reason why they are doing so.
If you want your project managers to be better project managers, ask them to read "The Mythical Man Month". That book is quite relevant even in today's context.
Seriously! Do they really think that people who enjoy dilbert would like taking a PMP certification exam to become a (better) project manager? People, who know me, know that I have a low opinion of certifications. What they probably do not know is that I have a even lower opinion of these kits that provide improbable percentage of "Unconditional test pass guarantee". I followed the ad and was greeted with the following error.
I did a little more digging to find out about it. They have dropped 50% chance of you passing and the guarantee is no more unconditional. The comments below have "brain dump" screaming all over it.
There is really not much to project management. You have to manage priorities of the stake holders. You have scope, time and cost as your constraints. But what they dont tell you is that you cannot treat people like replacable cogs. The stuff that they teach you in PMP is a bunch of processes and the PMP certification exam is a test of memory. Having a PMP certification does not mean jack about your project management skills. In fact, I would be wary of a person who claims that PMP helped become a project manager. It is not that I have absolute distrust in certifications... oh wait .. I do. They can be cheated very easily. I know of a dozen MCSEs, MCPs (not male chauvinistic pigs), PMPs who do not have a clue of the stuff they have got certified in.
I don't know why organizations pushing for PMP certifications for their employees. I am sure there is some sick demented reason why they are doing so.
- Hire people with common sense. (This would only work if you have common sense.)
- Promote your developers with a good aptitude towards management to management.
- Don't recruit B-School grads who haven't written a line of code straight off the school to do project management
- And for heaven's sake don't assume that people with PMP certifications are knowledgeable in project management. They have only made PMI wealthier.
If you want your project managers to be better project managers, ask them to read "The Mythical Man Month". That book is quite relevant even in today's context.
Thursday, August 28, 2008
Thursday, July 03, 2008
Open letter to Programeter
Mark from Programeter had left the following comment on my earlier post on Programeter. I started typing out my response as a comment but it was turning out to be too long. So I decided to make it another post in itself.
Hi Mark,
First off, thanks for opening up this discussion. This has done a lot to increase my trust in you. What would really salvage the reputation of Programeter from this situation, is to point Programeter on an Open Source codebase (e.g., subversion) and provide the reports online for the world to see. If they do make sense, we would be more than happy to embrace it and even suggest changes to it.
We (Programmers) are not afraid of being measured. We are insulted by the notion that the decisions on those measures could potentially be taken by some management folks who have absolutely no idea of what programming is about. This tool is dangerous in the hands of bad management.
Bad management already refers to programmers as resources as if they are interchangeable cogs in a system. The marketing material on your site does nothing to change this. We have had several epic fails in our industry because of clueless management. The last thing we need is another earnest effort by smart developers to fuel this trend.
Also, there are other ways in which individuals who code add value to an organization. Interacting with people, making teams gel, sharing knowledge on corporate wikis/discussion boards, having passionate coffee corner chats to keep the spirit of the team and so on. None of these are on source control. People's contribution cannot be measured but it is essential for an organization to judge the value added by an individual to an organization. Not all of these judgments can be based on objectivity and measurable facts. Programeter can only suggest facts about one of the facets of an individual's contribution. Suggesting an interpretation of it should be best left to the manager and not by the tool. There has been a lot of discussion about kLOCs. Is more better or is less better. There are other softer issues like security, performance or just an annoying API bug that had to be worked around. You can only present the facts. You cannot draw conclusions without knowing the whole. And those facts are not on source control. I am not dissing the tool. As a nerd I love statistics. I love generating insight on raw data. I would however take caution in interpreting the reports and weigh other facts before making a decision.
The bottom line is.
Code Checked into Source Control != Value Generated
The marketing material on your site is completely laughable. If anything, it only damages the credibility of your product. It would be bought by wrong companies and will be used to make wrong decisions. I am sure that this would not help the sales of your software in the long run. Reconsider your selling approach and come up with proof that your tool works. If you can do both, I wish you all the success for this tool.
Regards,
Vagmi
(An individual contributor to a big Software company)
Disclaimer: All of these opinions are mine and do not represent the views of my employer.
I am from Programeter - hope I will survive the criticts after mentioning that ;).
There are so many questions in the post and comments, so I can't aswer all of those in just one reply. So if I missed yours, go here and post them.
But some comments are here:
* I am not sure I understand why all programmers so afraid of being measured. Would you imagine all salesmen quiting the company because of introduction of CRM? Good programmers should not be afraid of any indicator.
* Yes, I agree "stupid" managers can get it wrong. But stupid managers will get it wrong with or without Programeter.
* Lots of comments, about cheating the system. Go and try to cheat it ;) if you cheat at least 3 of our indicators during one reporting period - Programeter will quit measuring your company as a bonus ;)
if you have more questions, let me know!
Hi Mark,
First off, thanks for opening up this discussion. This has done a lot to increase my trust in you. What would really salvage the reputation of Programeter from this situation, is to point Programeter on an Open Source codebase (e.g., subversion) and provide the reports online for the world to see. If they do make sense, we would be more than happy to embrace it and even suggest changes to it.
We (Programmers) are not afraid of being measured. We are insulted by the notion that the decisions on those measures could potentially be taken by some management folks who have absolutely no idea of what programming is about. This tool is dangerous in the hands of bad management.
Bad management already refers to programmers as resources as if they are interchangeable cogs in a system. The marketing material on your site does nothing to change this. We have had several epic fails in our industry because of clueless management. The last thing we need is another earnest effort by smart developers to fuel this trend.
Also, there are other ways in which individuals who code add value to an organization. Interacting with people, making teams gel, sharing knowledge on corporate wikis/discussion boards, having passionate coffee corner chats to keep the spirit of the team and so on. None of these are on source control. People's contribution cannot be measured but it is essential for an organization to judge the value added by an individual to an organization. Not all of these judgments can be based on objectivity and measurable facts. Programeter can only suggest facts about one of the facets of an individual's contribution. Suggesting an interpretation of it should be best left to the manager and not by the tool. There has been a lot of discussion about kLOCs. Is more better or is less better. There are other softer issues like security, performance or just an annoying API bug that had to be worked around. You can only present the facts. You cannot draw conclusions without knowing the whole. And those facts are not on source control. I am not dissing the tool. As a nerd I love statistics. I love generating insight on raw data. I would however take caution in interpreting the reports and weigh other facts before making a decision.
The bottom line is.
Code Checked into Source Control != Value Generated
The marketing material on your site is completely laughable. If anything, it only damages the credibility of your product. It would be bought by wrong companies and will be used to make wrong decisions. I am sure that this would not help the sales of your software in the long run. Reconsider your selling approach and come up with proof that your tool works. If you can do both, I wish you all the success for this tool.
Regards,
Vagmi
(An individual contributor to a big Software company)
Disclaimer: All of these opinions are mine and do not represent the views of my employer.
Wednesday, July 02, 2008
The dumbest idea ever
I just came across this product called Programeter. There are only two possible market segments for this product.
Now that I have got your attention, lets move on. This is what is displayed as their sales pitch. Look at the first item on the list.
Most companies should already know this. Any productivity measurement for a programmer can be cheated. If you have made a mistake in your recruitment, its already too late. There is no way around it. So stop recruiting people by the truckload. Look for good people with all round skills. Learning a new language or a technology platform is not difficult for a good engineer. Unfortunately, the entire Indian HR recruiting industry does a little more than keyword match to select potential candidates. Every HR Manager working in a software company must read "Smart and Gets things done".
If you already have the wrong people on board long enough, you are doomed. And one way of knowing that you have a wrong person long enough is to ask your middle management on their views of using Programeter. If they give a glowing recommendation of the product, fire them.
- Managers who have no friggin' clue of what programming is
- PLAIN DUMB FUCKING IDOTS.
Now that I have got your attention, lets move on. This is what is displayed as their sales pitch. Look at the first item on the list.
- Companies have merged and you need to decide what 15% of programmers to let go?
- Your consultancy firm needs an estimation report of your client's programmers next week?
- Need to double check your team leader reports by actual data?
- You are a newly assigned project leader and NEED to know what's going on in your team?
Most companies should already know this. Any productivity measurement for a programmer can be cheated. If you have made a mistake in your recruitment, its already too late. There is no way around it. So stop recruiting people by the truckload. Look for good people with all round skills. Learning a new language or a technology platform is not difficult for a good engineer. Unfortunately, the entire Indian HR recruiting industry does a little more than keyword match to select potential candidates. Every HR Manager working in a software company must read "Smart and Gets things done".
If you already have the wrong people on board long enough, you are doomed. And one way of knowing that you have a wrong person long enough is to ask your middle management on their views of using Programeter. If they give a glowing recommendation of the product, fire them.
Monday, June 02, 2008
For all you PPT-Phobes and PPT-Philes
A hilarious rendering of the common mistakes while (ab)using Powerpoint. Sadly, I have been abused by very many of those and there are still a lot more to come.
I am a PPT-phobe. Don't get your PPT near me. I am allergic to PPTs.
I am a PPT-phobe. Don't get your PPT near me. I am allergic to PPTs.
Subscribe to:
Posts (Atom)