Available for Hire!

ProgFu

programming tips & tricks

Mar 3

ZSH + VIM + RVM

I’ve recently switched to ZSH from Bash which was all in all a great decision, but there are some consequences.

One thing I stumbled upon today, is that Vim and MacVim don’t load the ~/.zshrc by default, which means if you’re using RVM it won’t work.

However they do load ~/.zshenv, so you can easily get around this by sourcing your .zshrc from within the .zshenv

$ cat ~/.zshenv                                                                        
source ~/.zshrc

More info can be found on the RVM website


Mar 2

What is a Closure and the JavaScript module pattern

In this article, we’ll take a look at closures in JavaScript, and how can we use them to our advantage to write a better code.

Let’s start off with an example

var counter = function() {
  return ++count;
}

Read More


Feb 28

You can’t change the history - the story of Git

Working with Git can be scary, especially once you get into the more advanced commands, such as reset, rebase and merge. Even little things like deleting branches can cause fear of losing some data.

Not so long ago, when I had to do something a little bit destructive (rebasing), I always backed up my whole repository in order to be able to undo any possible damage.

Read More


Feb 26

Why I prefer request specs over cucumber

I’ve always liked the idea of doing BDD, and especially Cucubmer, as it just makes everything super clear. Writing scenarios feels so natural, especially when you’re not sure about the project, writing down specific steps of the scenario can help you figure out what is actually going to happen.

The problem is, at least for me, when I have to implement the steps. In an ideal case, I would start with a Cucumber scenario, then realize that I need some more, fine grained tests in RSpec, write those and then get the whole thing pass.

Read More


The journey to NoSQL

Disclaimer: I’ve never used a NoSQL database before for a real project. I’ve heard about them, and I tried some little things, such as using a MongoDB (MongoHQ) as a hash-in-the-sky storage, I used Redis as a cache for a while before going back to memcached and that’s basically my whole NoSQL experience.

However as I’ve been recently discovering, there’s a lot more to NoSQL than just the hash-in-the-sky.

In the following series of articles, I will write about my journey from NoSQL noob to hopefully a somewhat proficient user. These won’t be very in depth and explanatory articles, but more of a this is my learning experience and how my point of view changes over time.

Read More


Feb 9

Should we write specs for validations?

When I was starting with TDD in Rails, I had times when I wasn’t really sure what to test for. Some of the apps were so simple that there wasn’t really that much to test, but I wanted to practice. I wanted to keep writing code.

I had this inner conflict about testing validations. At least for me, validations were kind of like getters and setters in their complexity. You don’t generally write a test case for a getter unless it has some additional logic inside.

Read More


Feb 3

Why am I never using PrestaShop again, ever!

For some reason, I thought that widely used opensource projects will have clean and easily maintainable code, but I was wrong.

I’ve been using PrestaShop for over a year now, generally for clients who just wanted a cheap e-commerce and didn’t really care how it gets done. At the time I needed to do this for the first time, I asked around among my friends who have some e-commerce sites, and almost everyone pointed me to PrestaShop, so I didn’t really ask questions and went with it.

Read More


Feb 1

theconfusedtraceur said: What theme are you using? It looks really nice. (Found your blog through Pinboard's top bookmarks)

The theme is called Easy Reader v1.2, but I’ve customized it quite a bit, especially typography.

It still isn’t final, I have plans to improve it quite a bit over the course of the next week, so stay tuned for some awesome changes :)


Jan 31

A story of me becoming not-totally-noob VIM user

This article is a followup to the initial story of editors, this time focusing on VIM. It will also be a multi-part series because there’s just too much ground to cover

As almost every cool kid trying to be a hacker in high school, I learned VIM basics when toying with Linux on my desktop machine. Working isn’t the correct word, because I wasn’t really doing anything serious. I felt totally badass for being able to compile a kernel from source and actually make the machine boot up after that.

Read More