Posted by Vikas Hazrati on Thursday, November 19, 2009
One of my friend operates a cab company. As per him he makes money only when the cabs are on the road. If they are resting in the parking space then they are losing money. This includes depreciation, opportunity cost and the cost of holding inventory. You would have heard the same about airplanes. Their cost is covered only when they are in air. If they are in the hangers then they are just like cabs in the parking space.
Ok let us take this analogy a bit further. Many of us operating in the software industry have burnt our fingers working with con sales guys. Apologies for being so extreme however I have come across so many of them who would promise the moon and then deliver nothing. I am sure many of you would be able to relate to that. So what about the cabs and airplanes? Well, if you see your sales guys spending too much time in the office or at home then they are in the parking space. Sales people should be in the field as much as possible. They shoul be knocking the potential client doors. They should be meeting people face to face. They must be attending and networking at conferences. You should be aware of their moves, how does their day look like, how does their week and month look like.
And last but not the least they should be meeting their agreed upon targets. A cab circling across the city without taking any passengers is of no use. It is just like stepping on the pedal ang going in all directions without a motive. It does waste a lit of gas and you are paying for that.
So next time you see your sales guy in the office or working from home for two consecutive days, then get alarmed!
Ps- this is my first blog using the iPhone, while waiting for my flight to Netherlands. Kindly ignore the spelling mistakes
Posted by Vikas Hazrati on Wednesday, November 18, 2009
Craftsmanship in general is associated with high quality. A software craftsman has to produce high quality deliverables which meet or exceed the expectations of the consumers. Software craftsmanship has more art it to it than science. It has more emotions and passion attached to whatever the craftsman is delivering. Software Engineering on the other had takes a systematic, disciplined and quantifiable approach to software development. It is more mechanical and lacks the emotional, people angle to software development. Agile practices have shown numerous times that with the right set of people, process and tools, it is easier to get closer to the holy grail of better software development.
Practices such as XP, placed a lot of focus on craftsmanship by suggesting what the customers and developers should be doing on a minute to minute basis. It laid down a series of values, principles and practices to help software development be a social activity rather than a solitary job. Practices like XP once again ignited the fact that software development is an art and not a mechanical process. It is a craft and people who are emotionally attached to this craft would become true software craftsmen.
Often software craftsmanship is related to work of a blacksmith. A blacksmith requires a lot of technical knowledge but that technical knowledge is only one aspect. He also requires tools, a practiced skill and an eye for aesthetics so that he knows that what he is producing is clean and beautiful. Similarly a software developer has the right tools and follows the best practices to create software. However, what makes the developer into a craftsman is the passion for doing things right, clean and beautiful.
I am reminded of story that I heard when I first joined Xebia. During the induction program the speaker mentioned that his father was a car craftsman. A car craftsman? Such was the persons passion about cars that whenever a car drove into his garage for service, then not only he would rectify the problem but also clean the car thoroughly and take care of other minor repairs as if it his own car. At first my reaction was that this sounds like gold plating. You should only do what you have been asked to do. However, the passion of this car craftsman made sure that the best reward for his craft is to see the satisfaction in the eyes of the beholder. He was fascinated by the reactions that he got when people got their car back. Needless to say that his passion for cars had a viral effect and his workshop was buzzing with activity all year round. Similarly software craftsman would deliver the best to his clients in terms of a well made software and make sure that his passion for work attracts not only repeat business but new clients who would want to have a better software delivered to help them with their business.
In a series of posts on Software Craftsmanship, we would like to embark on a journey of process, practices and tools which would help us become a software craftsman. One of the other key ingredients i.e the passion for software development is something that we expect from you!
Posted by Vikas Hazrati on Sunday, November 8, 2009
Many sites have good .flv video content that you would rather download and listen to when you are not connected to the internet. Firefox plugin called the Download helper makes it easy.
Just follow the steps
Not sure if it’s legal, but you can:
- with Firefox
- and DownloadHelper extension
- click Play once, so that DownloadHelper can see the video
- then download it with DownloadHelper
As soon as the download helper, sees the video, it would give you an option to download it!
Posted by Vikas Hazrati on Friday, October 30, 2009
What are some of the best conferences that you have been to? What have you got back from that conference? Technology, Management, Productivity …..hmm…may be partially yes but the best thing to get back from conferences is a network. That is exactly why there are breaks in between, extended lunch hours, evening cocktails etc. And here are many of us who were thinking that lunch is for lunch and the coffee break is to wake me up from that boring session.
Here is an aggregation of some of the best conferencing strategies.
Posted by Vikas Hazrati on Sunday, October 25, 2009
We recently had hugely successful conferences at UK and Australia, where people very openly admired the way we develop software and the way we engage with customers. We, here is Xebia, the organization that I work with.
On my flight back home I was wondering that if people admire a small company like ours so much then what stops them from doing business with smaller organizations? The first thought that comes to mind is the fact that most of the people that we probably interacted with were at least one to two levels below the people who would be making the real decisions. Let us consider the decision making population to be at position X. Now, the people with whom we interacted were x-2 or x-1. These people totally understand our story and know for sure that if they start working with us, not only we would be able to deliver better software but also help them succeed.
The problem comes when the x-1, x-2 want to take the proposal to x. After all as they say that you do not get fired to recommend IBM, but how do you convince x. I tried to ask this question to myself. If I were to buy a new house, would i go with an established developer who is big and has reputation or would I take risk with a smaller one. My first reaction was, of course the big , more established one. After all it might be like investing the whole life’s earnings. On second thoughts, what would convince me to go with a smaller one?
A guarantee that if I am not satisfied then I get my money back. A week by week update on the progress of my house infront of my own eyes by providing site visits and reports. Promptly answering all my questions related to my house. Keeping the process transparent and at no time, I should get the feeling that I am being duped or being taken for a ride. And, better still references from people who have already taken a house from this builder and their beaming faces to show that they have made a wise investment.
Now, if I translate this to the smaller software company. A risk free period where if the client is not satisfied then the engagement is allowed to fail fast. Fail fast meaning that instead of getting into a long term contract we end the engagement withing 3 sprints ( typically 1.5 months) and return all the money to the client. Providing daily updates on the progress and transparently showing all the reports as a glasshouse development project. Ensuring that there are no surprises. Provide case studies and references of all your success stories. Ensuring that you have satisfied customers who are able to vouch for you.
After doing all this once you get the foot inside the door, make the best of each engagement. Small engagements lead to bigger and better ones. Well all the last couple of lines need no special mention.
Posted by Vikas Hazrati on Saturday, October 10, 2009
This post takes you through the steps to install Apache 2.2.11 on Ubuntu 9.04 64 bit and make it work with Weblogic 10.3. The post walks through the steps that I followed, the problems that I faced and the solutions ( er..hacks) to get them resolved.
Installing Apache
Is simple do
sudo apt-get install apache2
If you want to build it from sources then follow these steps.
Once you have installed apache2 then the installation happens at the following locations in Ubuntu
Apache config files are in /etc/apache
Apache log files are in /var/log/apache
Apache libs are in /usr/lib/apache
Other files can be in /usr/share/apache, /var/lib/apache
executables in /usr/sbin apache and apache2ctl
Posted by Vikas Hazrati on Sunday, September 20, 2009
On Sep, 5 & 6, 2009 Meetu and I gave a presentation on Scala at the OSSCamp, Delhi. We represented Xebia at the conference. It was a lot of fun with some very enthusiastic people asking a lot of questions. I have linked the video and slides of the presentation for your reference.
Posted by Vikas Hazrati on Tuesday, September 8, 2009
I was reserving this post since a long time. This is the 100th post on this blog and I would sincerely like to thank my dear colleague Balaji D Loganathan who is the co-founder of Spritle (pronounced Spritley) and my current organization Xebia for motivating me to start a blog. Balaji was always an avid blogger and a respected Java rancher. I learned a lot from him in terms of writing and approaching the industry through the publishing route. I still remember the day [April 28th' 2007] when Balaji proof read my first blog and suggested multiple changes. I put that blog post on the blog site of Xebia and my personal blog site. I still remember not having the courage to hit publish and Balaji literally pushed the button for me.
Xebia as an organization has always promoted people to blog, speak at conferences, dive into new technologies, challenge, be challenged and share your opinions. The combination of Balaji and Xebia provided the perfect catalyst for me to go on and do a lot of things that I would have never attempted.
It has been a fine journey so far with 100 posts on this blog. A few days back this blog counted its one millionth reader. It has been slasdotted once and dzoned a few times. I went on to do a few more publications and also became an InfoQ editor.