One day at work I noticed that emails were taking much longer to be sent out from our app. I narrowed down the problem to our background queue which is responsible for sending out the emails. The solution prompted me to write this DelayedJob “survival guide”to help others who may encounter this issue in the future.
One night after a few bottles of beer, a friend asked me about finding your passion or mission in life: “Do you search for it or does it just stumble towards you one day?“. I said to him that I think it will eventually stumble on you, but in order for this to happen, you need to keep moving.
Where are you are going?
Steve Jobs once said in a speech:
You can’t connect the dots looking forward; you can only connect them looking backwards. So you have to trust that the dots will somehow connect in your future. You have to trust in something – your gut, destiny, life, karma, whatever.
In my first job we used Emacs as our main text editor. However, I have no idea how to use it properly so I just used it more like Notepad++ than Emacs. In our team there is one person who refused to use Emacs, instead he was using vi (without the m!). To be honest, it looked painful watching him edit code with no syntax highlighting, no line numbers, and no plugins whatsoever. We tried constantly to convince him to use Emacs but he always refused and stuck to using vi. I thought the guy was crazy.
Fast forward 12 years in my career. I was attending a Ruby conference with my peers and one of the speakers (Brad Urani) demonstrated zshell, vim, and tmux and how he does development in his machine. It looked cool! Some of my peers also uses vim and tmux so its not a new concept to me, however I always decided to use gedit all these years. This time, they probably thought I was crazy.
After the conference I finally decided to jump to the other side. I will no longer use any text editor or IDE for programming and will force myself to use vim exclusively. I also decided to use tmux instead of relying on the guake terminal for more awesomeness.
After two months, am I very pleased with the results: I now have my development environment set up using zshell, vim, and tmux and all the tools that I used to have before have been configured to work on vim. As I feel like I am years (maybe decades) late to the party, here is a simple guide I wrote to help people like me who want to dive head-first into vim and tmux.
This step is not really required to use Vim and Tmux, but it is recommended due to several improvements and plugins that you can use to improve your development environment.
In this guide, I will be using Ubuntu (or other Debian based systems) so I can be lazy and just install it using the package manager:
sudo apt-get install zsh
You can also check the version of the zshell installed to make sure its compatible with the plugins you want to use later on:
Once zshell has been installed, we will want to make it our default shell (instead of let’s say bash). This will make your system use zshell when you invoke the terminal or the command line.
chsh -s $(which zsh)
When you load zshell for the first time, it needs to be configured first and it will prompt you on how to do the initial configuration:
This is the Z Shell configuration function for new users, zsh-newuser-install. You are seeing this message because you have no zsh startup files (the files .zshenv, .zprofile, .zshrc, .zlogin in the directory ~). This function can help you with a few settings that should make your use of the shell easier. You can: (q) Quit and do nothing. The function will be run again next time. (0) Exit, creating the file ~/.zshrc containing just a comment. That will prevent this function being run again. (1) Continue to the main menu. (2) Populate your ~/.zshrc with the configuration recommended by the system administrator and exit (you will need to edit the file by hand, if so desired). --- Type one of the keys in parentheses --- 2
Investing can be daunting especially for people beginning to learn how to manage their money. One way to make it easier to understand the concepts and avoid doing things that can hurt financially is to think that investing is like planting a tree.
You don’t eat it while it is a sapling
All plants and trees start out as a seed and then a sapling. Even the largest trees in existence today started out as small saplings many years ago. This is also true with wealth: all of the wealth today started out as a small investment decades or centuries ago.
I pride myself on being conscious about my time (or at least I like to think I am). I set up a daily routine in the morning when I read my devotionals, do my personal projects, and write something in this blog. I have written posts about time management like “Consistency Beats Intensity” and “How to gain extra time“. I listen to podcasts and audiobooks daily, and give my best to my work every day. I might even like to call myself Mr. Productivity.
I don’t like it when something happens in the day that ruins my routine. Some days there is something that needs to be done, or something unexpected that needs to be fixed and cleaned and it disrupts my schedule. I am also uncomfortable when I feel like I am not doing anything useful, like just lying down to rest or sitting somewhere to talk.