Slavo Ingilizov

Switched domain and hosting

Posted by: Slavo on: September 5, 2008

This blog has been moved. I finally managed to get my own host and domain, something I’ve been planning for a long time. You can start reading the new one here. The current blog will be deleted after a few months, so don’t expect updates.

What to love in a job?

Posted by: Slavo on: April 24, 2008

Let me begin with a quotation: “If you love your job, you’ll never work a day in your life”.

This has been attributed to Confucius, James Worsham, Mark Jackson, and Anonymous. I don’t know who the credits go to, but it’s someone of the above.

It is a fact that people who love their jobs are in general more productive than others and get things done. I see a strange phenomenon here, though. This one has to do with how programmers love their jobs compared to normal people.

Why do people love their jobs? I would imagine the answer to this is that they love what they achieve through them. A manager loves the teamwork spirit he has established in his team. A salesman loves the revenue coming from the many products he sold. A craftsman loves the product he created. I can go on like this forever. Until… I reach the obvious exception – programmers. Programmers don’t like what they create – they like the means they used to create it. I know most of them don’t admit it, but what programmers like is code and coding, not the outstanding web app coming out of it – or the slick 3D game.
I might be wrong at this one, but the longer I think about it, the more real it seems. We (yes, I consider myself a programmer) love the means we use, not the final product. I’ve tried to explain this to myself since I realized it, but I reach dead end all the time. Finally I just decided to accept it, like anything else that seems weird about programmers.

Here are some examples:

  1. Programmers fall in love with development practices (Agile or TDD)
  2. Programmers fall in love with frameworks (.NET, Ruby on Rails)
  3. Programmers fall in love with programming languages (like… you know)
  4. Programmers fall in love with operating systems (Linux)

Recently there’s been a lot of hype on similar phenomena. I’ve witnessed brutal debates on what practice to use, or what framework to use when developing a product. The question I ask all the time is “Does it really matter?” What if we concentrate on what is coming out as a result and see what happens? What if we try to use what we create and constantly improve it until we love it? This is what our customers and users do and this is what causes the gap between us and them. We can try and change, but then we would be going against the community. After all, we’ve always done it this way.

Programmer Ethics

Posted by: Slavo on: April 3, 2008

I read a lot of blogs. Everyone’s definition of “a lot” is different, what I’m saying is that I have too many feeds in my reader to follow. This is why I delay reading some of them. I usually disregard the ones I know are not that interesting and then come back to read the ones I really want. Jeff Atwood’s blog always remains the last one – the reason: I know everything he writes is worth reading.

Today, I started catching up on reading his blog, and I was astonished. WOW is the least I can say. So I know this is a little old, but you already know the reason. I know posting links is not that good for a blogger, but I couldn’t skip this. Please read the article and if you’re a developer – DON’T DO THIS.

Thank you!

Scrum in 5 minutes

Posted by: Slavo on: February 7, 2008

Most agile developers out there already know the advantages of Scrum. I did a little bit of reading on the subject these days, and I found a great beginners’ guide to Scrum. Here’s the link:

http://www.softhouse.se/Uploades/Scrum_eng_webb.pdf (opens as a PDF in new window)

All of you who want to become better developers or do something about the team they are part of, should read it.

Seam Carving on Google

Posted by: Slavo on: February 1, 2008

As I mentioned, I started implementing the Seam Carving algorithm as a Senior Project at school. Here is the link to the project, hosted on Google. I’m going to update the Wiki and Description soon. In the meantime please comment on everything you find interesting or wrong :)

Here’s the link: Seam Carving on Google

Comparison of Project Hosting solutions

Posted by: Slavo on: January 30, 2008

If you’ve read my previous post, you know that I started my Senior Project recently. One thing I decided to do for the first time is to put it under source control, no matter that I might be the only one working on it. This decision came gradually after I came upon some people who actively advocated doing that. The first who come to mind are the Pragmatic Programmers – Andy Hunt and Dave Thomas. There are many reasons for that – automated backups, free unlimited undo, and others, but don’t expect me to elaborate on those here.

What I wanted to share is something else. Basically I had two options – install a Subversion server on my home PC, or host the project online with a hosting service. I chose the second one because I wanted to get used to it and probably get some people working with me on future projects. I found several such services with different features and I want to compare them in this post.

1. Google Code Project Hosting

This was my choice of hosting. It is simple, lightweight and doesn’t get in the way. I only wanted some source control and probably a wiki, so the Issues system and Downloads don’t really strike as “annoying features I don’t need” :) . With the rest of project hosting solutions, I always had the feeling that the UI is too complicated for my needs and would most probably distract me instead of letting me do my work in an instant.

2. Unfuddle

I think they got something wrong in their attempt to deliver more for less. They’ve included features which I don’t really understand, probably attempting to please all the agile developers out there (e.g. Milestones). Otherwise their free plan is pretty limited – 15MB source control space, only 1 project, 1 user, no SSL. Still they might fit into someone else’s expectations.

UPDATE: As Josh mentioned in his comment, Unfuddle’s free plan now includes 200MB space and 2 people.

3. Assembla

They’re good. Probably the only reason I didn’t go with them is over-delivering. They have things like Alerts and Scrum, which I don’t need and I can’t turn off. Otherwise for an agile development team I think they are a very good choice and they are free, no size limits.

Please note that I’m only discussing services which provide Subversion source control. Other don’t fit my search as they would probably be paid. I thought about Codeplex, but I rejected it only because I remember seeing a link to download Codeplex source client, which I don’t want to do. Forgive me if I’m wrong, but I don’t think they use SVN for source control.

Anyway, I hope you find all this useful. Please share anything I haven’t found or any comments you might have on the services above.

Seam Carving Implementation – Senior Project II

Posted by: Slavo on: January 29, 2008

I’m starting my Senior Project at school, which is going to be an implementation of the seam carving algorithm. I plan to write this in C# as a WinForms application first. This effort alone is going to take a while and probably take a lot of the time I have this semester. If I finish the project successfully I think I’ll try to port it to Ruby. The reasons are many, the most important ones being my quest to discover ruby development and the fact that I haven’t seen a Ruby implementation of seam carving to this day.

Mike Swanson has a project hosted on Codeplex named SEAMonster which is exactly what I’m about to do – a .NET implementation. I don’t plan to plainly copy his code, I’ll do it myself and then compare how I misinterpreted some things and did some others wrong, as opposed to his version.

I plan to blog here about the project during development, so if interested drop by periodically or subscribe to the RSS feed and be my first reader :) .

Another test – countries this time

Posted by: Slavo on: January 22, 2008

Let’s see who studied Geography in school. On another funny test I could name 57 countries in 5 minutes. Try yourself.

Tags:

A Geek Test

Posted by: Slavo on: January 22, 2008

I am 38% geek. How about you?

(Link to a new site with a geek test)

Tags:

Guy Kawasaki

Posted by: Slavo on: November 13, 2007

A friend of mine once shared a link with me. He said it was a guy named Guy who talked about entrepreneurship and startups and I might find it interesting. This was about two months ago and what I did was paste the link in a new text file and save it on my desktop. Yesterday I decided to clean up my unused icons and I saw the link. It’s not that I didn’t want to watch the video at first, I just didn’t have a 40-min block free. So last night I made myself watch it, and immediately felt sorry for not doing it earlier.

The speaker is Guy Kawasaki, former Apple Chief Evangelist and a great presenter. For those of you interested in entrepreneurship he might not have anything new, but you must watch it. Here’s the link, enjoy:

Guy Kawasaki talk