We ran into an interesting problem – at some point of time our Rails application started to fail occaionally because of REE segfaults on startup. Even starting the console with ‘script/console production’ was occasionally failing with REE segfault. Application was growing, new features were added and segfaults started happening more and more often. There was …
Fragment caching is a powerful technique for improving performance of your web application. Rails site describes in detail how to apply this technique. Rails are providing developers with really excellent abstractions, but it’s always good to know what’s under the hood and how it all works. There are a few things that might potentially cause …
I’d like to say big thanks to the organisers of the conference (especially CJ @cjkihlbom) – everything went really smooth, even though there’s been 150 people attending this year compared to 90 last year.
Some points that I’d really like to highlight are:
- a lot of time to meet people and discuss: 30 minutes talks followed by 30 minutes breaks, no q&a – those who had questions had an opportunity to talk to the speakers during the breaks
- venue was great (of course, the boat 🙂 – there was enough space for everyone to move around, but at the same time it was compact enough not to get lost also everyone had an opportunity to have lunch and dinner together
- “job board” a huge white board where anyone can post information about open positions in their companies – it got filled withing firts few hours – job market is really hot
- lightning talks that any participant can give – 5 minute talks in the end of the day – it was really great
- real coffee 🙂 espresso, latte, cappuccino, americano – you name it – professional baristas were at your service
- 5K Nordic Ruby run organised on the second day’s morning
vim is a natural choice when you’re starting a new programming project (if you’re emacs or textmate adept – you can stop reading now
Even though there’s Ubuntu nginx package available (which works perfectly when you’re running PHP apps using FCGI), if you want to take into use Phusion Passenger, you’ll need to recompile Nginx from sources.
Instructions below were verified on Ubuntu 10.04 (Lucid Lynx) Server Edition.
Conference has drawn very interesting speakers and international crowd – from Finland (naturally), Sweden, Poland, Germany, Russia and other countries. I made a few notes from selected talks on the conference.
Chris Wanstrath / GitHub (@defunkt)
- Slides: http://www.slideshare.net/err/inside-github
- Linus Trovalds Google tech talk about git – where Linus tell you that you’re stpid if you’re not using git
- rack-mobile-detect – is used by GitHub, super useful if you’re planning to create mobile optimized version
- GitHub uses Unicorn as an application server – personally I’m not sure if that’s better than Apache + Passenger. Chris tells that Unicorn is cool, because does fair load balancing on Linux kernel level, also Rails are loaded only once – and then required number of processes are forked – and this is very fast, a lot faster than loading rails separately for each Mongrel. And when one of the processes dies – there’s no need to re-load Rails, but just fork another process.
- GitHub doesn’t use delayed_job anymore since they needed several queues with different priorities – so far they use resque, but are considering developing a real queue management system
– Redmine installation on redmine.mydomain.com
– Several Git repositories on git.mydomain.com with different access rights to each one
This proved to be a non-trivial task. There is a number of tutorials on the net, but none of them described the full solution. So after getting it all to work, I decided to share all the tips and tricks. Feel free to comment, if you will find problems with the following set of instructions.
Continue readingSetting up Ruby, Rails, Git and Redmine on Dreamhost
Easter weekend didn’t start well – I decided to upgrade Joomla on one of my sites to version 1.5.1 from 1.0 and upgrade just totally ruined the entire site – content was lost, template wasn’t compatible with version 1.5.1. At first I thought that the reason is Dreamhost‘s automatic one-click upgrade that I used, but …