9
03
2010
“It’s just a web page. ”
“It’s just a text box.”
“It’s just an email notification.”
I have heard and read so many of these. “It’s just a… ” you name it!
This usually comes from someone who wants you to be 10 times more optimistic about the task at hand than you would be. Programmers are inherently optimistic. So there is no need for more optimism.
We, as software engineers, need to explain to clients why it’s not “just a web page” or “a text box” or an “email notification.” For example, web pages need to be cross-browser compatible (ie. Firefox, Internet Explorer, Safari and now.. Chrome on both Mac and Windows)
There are a lot of aspects that we consider and clients don’t. That’s why they pay us to do it. It’s always positive to explain these aspects when presenting an estimate.
Always be realistic about your estimate. Don’t let the “It’s just a…” influence your estimate. Follow a process. Separate the task in sub-tasks. Estimate effort for each sub-task. Add up your estimate.
And most importantly, support your estimate with your expertise. You will always get the “12 hours?!? I thought it would take 2 hours.” from a client or boss. Stand behind your estimate and defend it with facts and your expertise.
Comments : No Comments »
Categories : programming, software engineering
5
03
2010
I work on a Mac with Aptana. Sometimes Aptana crashes and then, after restarting it, it shows this error when I try to access my application:
Errno::EPIPE in Site#home
Showing layouts/_banner_headers.html.erb where line #11 raised:
Broken pipe
The line doesn’t matter. The problem is that Webrick continues to run even after restarting Aptana. So, when you go to http://localhost:3038/ it is actually accessing a ‘zombie‘ Webrick. Not the one you last launched.
Here is the solution:
1. Fire up a Terminal
2. [etagwerker@gesell trunk]$ ps aux | grep ruby
etagwerker 22930 0.2 2.0 165156 84312 ?? S 2:53PM 0:48.88 /usr/local/bin/ruby -e p(Process.pid.to_s) -e load(ARGV.shift) -I … etc…
The first number is the PID
3. Kill the zombie process
[etagwerker@gesell trunk]$ kill -9 22930
4. Restart your Aptana.
That’s it. You should be able to continue using Aptana.
Comments : No Comments »
Categories : developer tools, linux/unix world, web programming
4
03
2010
I expect programmers to be perfectionists but also pragmatic. I expect them to love Chess, Go or any other strategic game. I expect them to be nerds. I expect them to love to build cool things.
I expect project managers to be well versed in software engineering, project management and motivation. I expect them to have some technical knowledge. I expect them to be people persons.
I expect technical team leaders to be programmers with strong communication skills. I expect them to coach other programmers and encourage them to write great code. I expect team leaders to always look for the best answer to hard questions.
I expect my team members to be respectful of other team members’ time. I expect anyone in the team to interrupt me, only when they really need my help. (Because interruptions kill productivity)
That’s what I expect from my team to build great software.
Comments : No Comments »
Categories : IT services business, entrepreneur life, software engineering