Being a manager is like being a jester, juggling with projects, ressources, tasks... Welcome to Jester Management.

Wednesday, October 14, 2009

Getting back in shape 2

I told you a few weeks ago that I decided to get my feets wet using Ruby on Rails to work on a little project.


However, I soon realized that it was going to take more time than expected.

Even if I understand how Rails works, having a backgroung using other MVC frameworks, there is a wealth of things to know before starting.

Since I'm alone, I can't peek on an existing project, starting slowly by correcting bugs and so on, as I would do if I worked for a company: I have to learn enough about Rails before starting. Fortunately there are some very good books, so it's only a matter of time.

In the meanwhile, I still need to practice my Ruby. A programming language is like a foreign language: even if you know the grammar, if you want to be fluent, you have to use it.


I was thinking about what I could do: I needed a little project, self-contained so that it has a begining and a end, if possible with a deadline in order to prevent it from going out of hand. After all, I'm still looking for a job, and that has to be my main occupation.

I don't even know how I stumbled upon it: but I discovered the Ruby Programming Challenge for Newbie: every 2 weeks, you have a problem to solve, in Ruby.


It's a very cool idea: you work on a problem that you wouldn't necessarily have thought of (so it pushes you a bit out of your usual zone), you have a deadline, the solution can be pretty short which means that in my case I don't sacrifice too much time from my job searching, and you get reviewed by your peers (well in that case, your elders, since you are supposed to be new to Ruby), which is at the same time very scary and the best way to learn.

So I gave it a go, and finished yesterday. I'm submitting my solution today for review.

As expected, I learned a lot in the process and had a lot of fun. Being an hardcore perlist, I kind of got frustrated at Ruby sometimes but that's okay, the more I get the hang of it, the more I like it.

Now I have to wait till next week for the review! It's going to be a long few days :).


Read more!

Thursday, October 1, 2009

Good tools to work well

You know, it is something that my grandfather repeated over and over: "A good worker needs good tools in order to work well".

In the particular field of development, we have two kind of tools: hardware and software. I'd like to focus a bit more on hardware tools.

Looking for a job in Seattle is a very interesting "job". I basically spend my time finding companies, trying to learn everything I can about them and figuring out if I'd like to work for them or not.

More often than not, I am able to find pictures of the offices, where the developers work. And there is one constant: they have the most amazing workstations ever.

Here, you wouldn't think of letting a developer code on a four years old 17" monitor. The absolute minimum I've seen is 22" single monitors, the average workstation is dual 24", and Google has the most humongous screens I've ever seen (bellow, Seattle office of google).



In France, I remember struggling for a few month to upgrade the ram for my team, and changing the monitors was just out of question. The only guy who had a wide-screen was the front-end designer. Don't even ask me about the CPU power of the workstations.

How crazy is that?

Here, when you pay somebody $75k+ you provide him the best tools money can afford. It is just common sense, really. If he spends 10 minutes a day more than necessary compiling an application, by the end of a month he lost 3 hours, more than the value of a CPU upgrade.

At one of the companies I worked for, I had such a slow PC that launching Eclipse took 15 minutes. No kidding. I launched it, and went for coffee.

I don't know where this 'cheapness' comes from in the french culture. I think that it is partly because the guys who decide how to spend the money don't have a clue of what is a developers job.

And the developers don't even complain. I don't think they even realize it! It's a cultural thing.

Well, guys, if you read me: this is not normal. Your work is the blood of your company. You deserve the best tools money can buy.

I already talked a bit of the psychological impact of having cool gear on a developer. But the truth is, you don't even need this reason. You need cool gear, because it makes you more efficient by an order of magnitude. And in the U.S where efficiency is the most important criterion, this was understood long ago.


Read more!

Tuesday, September 22, 2009

Getting back in shape

Ok, let’s start with a little piece of advertisement: I am now allowed to work in the U.S and am therefore looking for a job in the Seattle area. My perfect kind of company would be a small start-up working on an interesting project, but I am open to pretty much anything. Please do not hesitate to contact me if you have any opportunity for a young manager that loves coding, making opinionated software, playing with nerf guns and that has a funny French accent ;).


Looking for a job is an excellent way to get to know what kind of technology is used on the market, and to my surprise, in Seattle, one technology is very popular: Ruby on Rails. It’s funny because I don’t think it is widely used in France, so I was never very interested in it. I thought “Pretty much another scripting language and another MVC framework” and archived the data in a corner of my head.

When I saw the sheer number of positions where you have to be competent in RoR, I had to revise my judgement, and decided to test the framework. At the same time an idea for a little website popped in my head, so that was the perfect project to get back in shape.

One objective: finalizing my little project (codename “Powerade”, don’t sue, I have no money), using as much unknown technologies as I can: Ruby instead of Perl, Subversion instead of CVS... Ok I’m keeping MySQL and Apache.


So a few days ago I installed an Ubuntu VM, set it up with all the necessary software, and got to work. By the way, if you know a good lightweight Ruby IDE with a vi plugin, I’m interested, as Eclipse seems a bit too much for my VM.

And getting back in shape it is!

After 3 months of forced inactivity, where I didn't code because I was to busy discovering Seattle, it is kind of funny to see how quickly things that where a reflex fade from memory, and at the same time how some things are imprinted in my fingers. For example using svn instead of cvs is a pain since when I do any revision control operation I just type cvs something without even thinking about it, but at the same time, I completely forgot the most common cvs options and had to browse quickly through the manual to do the most basic operations. Using the CVS plugin for Eclipse the last year probably didn’t help by the way...

I kind of like Ruby on Rails.

I am not necessarily a Ruby fan yet, but I can see myself becoming one. I had a good laugh when I discovered that you can write things like “dog.isHungry?”, but I somehow miss Perl. Maybe it’s just a matter of fluency.

On the other hand, I am amazed by Rails.

In 5 minutes of toying with it, I had a web page enabling me to create a user and edit it, and this is incredible.

I still have to use it more to do a comparison with another framework such as Cocoon, but I am already seeing why Rails is so popular.

It enforces a proven project structure that is very clean. A framework like Cocoon doesn't and it's very easy to do messy thing. It automates tedious tasks like creating databases schema, updating them, creating test cases and test data, and test database. It has it's own server embedded which is nice because you can work on your project pretty much anywhere without having to go through tons of configuration beforehand. The list goes on and on.

We’ll see if this good impression persists after a prolonged use, but I already convinced ,).


Read more!

Friday, September 18, 2009

Book Review: "Leadership Jazz"

I wanted to write a review of Leadership Jazz by Max de Pree for a long time but somehow never managed to do so. It is one of these posts where you exactly know what you want to say, but somehow it doesn't come out, because it is more a gut feeling than a very intellectual opinion that you want to convey.

"Leadership Jazz" is not a technical book, that is to say there are no articles on how to organize yourself, to lead more efficient meetings or to hire a team. Instead, Max de Pree explains his vision of what it is to be a leader little by little, drawing on the considerable experience he had while being the CEO of Herman Miller.

This is what makes it hard to review. It is not a manual. It is more like the advice of a wise grand father, who tries to convey a part of the experience of a lifetime to the younger generation. It is not a book about being a manager, it's not a book about being a leader... It is more a book on how to be a decent human being.



It is filled of little gems of wisdom, and reading it was a strong experience for me, filled of little epiphanies where I just had to stop reading and go for a walk to digest what I just read.

I love so many quotes that I can't even begin to choose one, so I'm just going to pick a few at random.
  • Leaders ought never to embarrass followers
  • Equity is the special province of a leader
  • We have much to learn from jazz-band leaders, for jazz, like leadership combines the unpredictability of the future with the gifts of individuals
  • The servant-hood of leadership needs to be felt, understood, believed, and practiced [...]
  • You never want to go to sea with a captain that would rather be in port.
I basically found those quotes by picking a different page each time at random and scanning it quickly.

This book truly is the best I ever read on leadership. It applies to everybody. Managers of small teams, CEO's of multinational companies, parents, political figures, teachers... To me it is no wonder that Bill Clinton calls it "Astonishing".

When I read this book, I get the same feeling that I get when I read old chinese taoist classics like "The book of Leadership and Strategy". It seems profound, timeless, which is rare enough to be mentioned.

Read this book. Even if you are not a manager of any kind, it will make you a better human being.

You can find it on Amazon.


Read more!

Friday, July 24, 2009

Google Wave, continued

Some links that have a little info on them about what Google Wave is about

About Page from Google
A guide to Google Wave
The Google Wave API
There are already Wave widgets
Wikipedia's page on Google Wave which as interesting info on why Google wants to open source it.
Some news about the public Beta

That's pretty much it for now, every article that I can find is pretty much a copy paste of those pages.


Read more!

Thursday, July 23, 2009

GWave

You can have a look on a nice video over Google's new project here:

Wave

I don't know what to think of it yet, seems nice but I have to lay my hands on it to have an opinion about if it has a purpose at all in the first place.

From a technical standpoint however, it is pretty impressive. Huge huge "Holy Sh!t!" factor in there. It is really impressive to see what they can do in HTML and JS (and gears for the drag'n drop feature).

I can't wait to test this. If it is half as good as it looks, it's gonna be HUGE.


Read more!

Friday, July 10, 2009

Use the same environment for dev and prod continued

As Amaury points out in a comment of my previous post, using the same environment in dev and prod makes sense from a technical standpoint.

You use the same libraries, you don't have to go to extreme length to make your code run on different platforms (as portable as the language may be, there is always differences you'll have to address), etc etc etc. I'm not going to write about it, he sumed it up well.

What I wanted to point out earlier is that it doesn't only makes sense technically, it also makes sense from a manager's point of view.


As a manager, one of your permanent concern should be to make your team grow. If they are not used to Linux, and it's your production platform, well you have to teach them.

What better way is there than making them install their computer, and then work 9 to 5 on the target platform?

You have to push them out of their comfort zone. They only ever coded in Windows? Is that a reason not to learn how another OS works? No!

They are going to struggle for a while, and yes, you'll pay that in productivity. But they'll also learn far more and in the end they'll be way better at writing code for the target platform.

I am aware it is kind of a rant against Java. Don't take me wrong, I like the language. I just think people misuse it. They'll go for the easy way if you let them, and you don't want that. Because in the end you want to build a team of experts, not of people that will go the easy way.

It reminds me of my school years. One of my teachers would insist on us using vi. We were used to "more evolved" editors, and we didn't understand why we had to use this editor from another age, instead of our favorite editor of the moment.

When I started working, and I had to work on a production server guess which was the only editor? Vi.

I was glad then that I already knew how to use it and that somebody had pushed me to learn athing that I didn't thought I would ever need.

(Furthermore it turns out also that vi is not an editor from another age, it's one of the best technical editor ever. This post is written using vim).

BTW, I still don't understand how you can be let out of school without being proficient in Windows AND a flavor of Unix, but that is another rant, for another day :)


Read more!

Search Results


Free Blogger Templates by Isnaini Dot Com and Architecture. Modified by Lo�c. Powered by Blogger