Nate Abele’s profile

Lead developer & chief fanboy of Lithium, the light, fast web framework for PHP 5.3. Inefficient things upset me. I don't like Mondays. Or socialism.

Latest Comments


As usual, I didn't really follow the rules. Here it is anyway. :-)

Posted in Ideas of March.

Wed, 16 Mar 2011 at 14:25:09 GMT


I also highly recommend GitX, which is a GUI client for OSX. It isn't full-featured by any means (you still have to push and pull from the command line), but I find it very useful for reviewing histories and staging commits. It's much more Mac-friendly than git-gui.

Posted in Git on Snow Leopard.

Tue, 17 Nov 2009 at 08:06:26 GMT


Hi Kaloyan, thanks for the questions; I'll do my best to address them. The "swap" that appears to take place actually has nothing to do with fixing parameters which are "incorrect". What it actually does is allow you to pair each rule with an array of options, rather than a single threshold value, making the API flexible enough for future use-cases and modifications.

As far has having to parse special syntaxes, in the case of the network rules, I started implementing a small DSL because it's the best and most flexible way to specify how strict you want to be in matching IP addresses or host subnets. Based on the rules used, a custom regular expression will be generated using the current remote host setting.

As far as the other string transformations, the reason for that is that I prefer more readable, human-friendly code. It makes my development experience more enjoyable, and, as they say, processor cycles are cheaper than developer cycles.

Now, I know PHP-land is full of people who'd try to debate me on this point ad infinitum, and you're entitled to your opinion, I simply disagree. :-) If a case-change and a string replace seem "expensive" to you, then might I suggest implementing your next project in C?


Posted in PHP Advent Calendar Day 24.

Wed, 26 Dec 2007 at 22:06:03 GMT


You can tell this was edited. If I wanted to do a holiday-themed sign-off, I'd have at least said something politically-incorrect like "merry Christmas".


Posted in PHP Advent Calendar Day 24.

Tue, 25 Dec 2007 at 06:07:38 GMT


Oh, Mike....

So what does this say about the sites that try to do it all (Yahoo, Amazon) Or closed off systems with lots of components (Facebook)?

Yahoo! is a portal, not singular, coherent application. And, uh, Facebook Platform, have ya heard of it?

The barrier to usage is just memorization, which any 3rd grader can do.

Two problems with that statement: (1) you could say that about pretty much anything (2) I don't know any 3rd graders who can pipe a tarball over SSH and have it come out untarred on the other end.

Posted in The Internet is the New Unix.

Tue, 23 Oct 2007 at 16:49:18 GMT


Hey Chris, thanks for the write-up. A few clarifying comments:

(1) The reason we decided to go with an array-based approach to ActiveRecord had to do with PHP4, but it also has a lot to do with the fact that even in PHP5, the array support, (i.e. all the great things you can do with arrays really simply) still outweigh PHP's ability to manipulate objects.

(2) As far as the scaffolding not being demo'd, it was only because it is basically the same in Cake as it is in Rails, and I just assumed that everyone had seen the "screencast seen 'round the world".

I guess that's about it. Thanks again for the write-up, and for taking an interest in the project.


Posted in CakePHP Visits New York.

Wed, 27 Sep 2006 at 22:54:20 GMT


  • Twitter: @nateabele
  • Location: Brooklyn, NY
  • Joined: September 2006
  • Comments: 6