Cultivating work environments

Paul Graham just wrote a very insightful piece that I hope companies take note of. The start of the essay speaks to how important it is for programmers to have the ability to store the entire context of a problem in their head so they can navigate to all the pieces they need to work on. This is key for solving big problems and facilitates effective productivity. Graham goes on to provide 8 ways to help programmers to do this. One of the ways he suggests is to work in small groups. At my work, we do a lot of pair programming and sometimes 3-way programming. I find this to be extremely effective for the way I code. I enjoy being able to constantly ask if this is the right way to approach a problem or am I understanding the problem correctly. With pair programming, I get immediate feedback by my teammate(s) and it helps to spread knowledge of the code base without having to go through code reviews. The second half of the essay is what really inspired me to write this post. Graham makes the claim that companies deliberately try to do things wrong when it comes to dealing with programmers. Graham writes:
One of the defining qualities of organizations since there have been such a thing is to treat individuals as interchangeable parts. ... It's not merely true that organizations dislike the idea of depending on individual genius, it's a tautology. It's part of the definition of an organization not to. ... The weakest point in big companies is that they don't let individual programmers do great work.
Moral of the story: Create a work environment where developers are truly valued. They are the problem solvers. They are the closest to the product. They are the ones bubbling with ideas. Listen to them. Don't act like a big company no matter what your size is. This is how to beat your competitors.

apache2/mod_proxy_balancer woes (part 1)

So I've still been trying to get mod_proxy_balancer installed. I tried just getting a compiled mod_proxy_balancer.so and drop it into my existing apache2 install but upon start up I get: Cannot load /usr/lib/apache2/modules/mod_proxy_balancer.so into server: /usr/lib/apache2/modules/mod_proxy_balancer.so: undefined symbol: proxy_hook_post_request Looks like I have to do a clean uninstall and reinstall of apache2 from source. I'll have to resetup svn (svn_dvn) and all my virtual hosts so this blog is going to be MIA while I go through this process. I can't wait until the Ubuntu repositories update apache2 to 2.2 so mod_proxy_balancer support will be as simple as apt-get install apache2. I think the next step is to remove my existing apache2 install and give kodefoo's tutorial a shot.

Making regular deposits

Since I graduated college and got a real job, I've started to expand my knowledge around the world of investing. I opened up an account at Vanguard and started off with some mutual funds. The problem is I haven't really put any more money in after that one-time lump sum for opening the account. I need to start making some regular investments through direct deposit or something. Get that dollar-cost averaging to work for me.

I need mod_proxy_balancer?

I have been trying to get a rails app served up by a mongrel cluster through apache. All the documentation I've looked at says this can be done with an Apache module mod_proxy_balancer. Looks like my apache install using apt-get does not come with that module. Blah! Guess I have to pull down the source and build from source. Hopefully, I don't break anything! References: