Understanding the Nature of Objects

Recently, I was reading an article that demonstrated how to organize your code by building a jQuery plugin. It had all the goodies you expect from high-level JS articles: modules, exposing APIs, private variables, etc. etc.

The problem was the author created the plugin using the following syntax:

$.somePlugin = function() { //// plugin code }

Why should you even care? It’s just a jQuery plugin, right? Not so fast though, because understanding the “nature” of the code we use will make us better developers, and the tendency to overlook best practices will eventually lead to all sorts of chaos in your codebase.

{ Read More }

5 Things a CMS Would Need to Succeed Today

As much as we try to “trick” WordPress or topple Drupal, the current ecosystem of CMSs leave a lot to be desired. Especially if you want to deploy your content in an SAP (single page app) or use the content in a non-PHP environment.

There is no reason to revolutionize the blog, nor will there be for quite some time; but some of the weaknesses to the landscape of CMSs include:

{ Read More }

The Inevitability of Node.js

It seams like increasingly my build tools are powered by Ruby or Node. Guard, Sprockets, Compass, Jasmine, all technologies that have very little to do with PHP. Even the new MVC frameworks for JavaScript tend to place nicely with Ruby and Node.js. So why use PHP, is there a case? Or should I just leap-frog to the Node.js Bandwagon?

I’ve been using PHP the power APIs and apps to power the back-end of apps for years now but I feel that choice coming to an end. One of my reason for sticking with it for so long was my comfortability with CodeIgniter, availability on hosting and the fact that I am more of a front-end developer by nature and have been reluctant to learn another backend language.

But the time has come for all of us to bite the bullet and ditch PHP as a util for building APIs. Not that PHP doesn’t it’s place in the web ecosystem. It is easy to learn, easy to install, easy to upgrade and is a great web templating language. (It’s revised OOP support is ok as well; hello 5.3)

{ Read More }

In-Browser Design and Photoshop

In-browser design is all the rage and for a good reason. For one it’s a huge time-saver, being able to get approval on a design without the move from Photoshop to HTML land allows you to focus more time on building the site and cuts down on double work.

With the advent of advanced developer tools in Chrome and FireFox and advances in CSS, in-browser design has become even easier. We no longer have to fallback on Photoshop to create a drop shadow, rounder corners or even gradients. We can make pixel perfect adjustments using the “inspect element” feature in Chrome and adjust the CSS dynamically without having to refresh the browser.

{ Read More }

Sencha Touch – Growing Pains

Sencha is a very exciting young company but still has a lot to learn. It has an interesting business model where it allows people to use a substantial amount of their core products for free and offers support and training on those products as a means to generate revenue. 10 years ago, in the age of MicroSoft and compiled software, this approach might have been akin to some kind of software socialism but now this approach is actually working if not becoming the industry standard. Nevertheless, this new model comes with some pitfalls, and eventually it’s novelty has to grow into maturity.

{ Read More }