Day in brief – 2011-09-01

Why you should teach yourself WordPress taxonomies

Alex King has a blog post describing the major differences between using custom fields and taxonomies in WordPress.  If you are familiar with the WordPress database, and if you think about it for a couple of minutes, you’ll probably realize why taxonomies are a better choice than custom fields for those situations where you can use both.

The reason to favor a custom taxonomy in these situations has to do with the WordPress database structure. Queries by taxonomy are well optimized as this is a primary front-end presentation feature in WordPress core. Conversely, querying by custom field key and value is slow. The value column in the custom field table is not indexed – you are basically doing a search through data that is not intended for that purpose.

The problem is that too many people, even those who are very well familiar with WordPress database structure, never really think about it.  And since custom fields are an older way of solving problems, many go for them without proper consideration.

Day in brief – 2011-08-31

tmux – Linux terminal multiplexer

I stumbled upon a very useful tool – tmux.  It is a terminal multiplexer for Linux.  If you are using Terminator or screen, you’d want to check it out. If you don’t use either of those, you definitely need to check it out.

With tmux, you can have a single shell in which you can create multiple sessions.  You can split each session into a number of windows.  You can detach from tmux and all your sessions and windows will remain open and running, much like with screen.  Later you can attach back to them again or you can start a totally new instance.  The interface is keyboard driven.  It is simple and intuitive, but as with any other tool, you’ll need a bit of time to get used to it.

If you are a Fedora Linux user, all you have to do to try it out is: ‘yum install tmux‘.  If you can read Russian, here is a quick introduction to most useful shortcuts.  Check the official website for the rest of the documentation.