Reverend Jim has written a pretty critical review of B2 entitled cafelog: a look at bad code. You get the feel for the article from the title. I think he could have done a little more research to be a little fairer, which would have answered a couple of his points. Whilst in essence I agree with a lot of his comments about the code design and quality, I think he neglects to mention the fact that the thing works, and works well (performance notwithstanding) for a lot of people.
Edit: 02:22 Jim has posted a second article about Cafelog/B2 cafelog: a few more thoughts. There is also a continuing comment dialog in the original story.
Short link to this post: https://z1.tl/74
Reading that article and looking and working with the code, I have to say that he is right and wrong. Mostly, I feel that his attitude is wrong. There are some issues with the code, but as you mentioned, it works great.
A couple of things that I’m suprised no one mentioned though is how it handles db connections and does it support other db’s.
Of course, the answer to the second one is no.
On the first one, the handling of the db should be abstracted and additionally, so should the error handling as opposed to just dumping it out to the screen. I think I’m going to put some error handling and db abstraction in. There are ton of Postgres users out there that might like to use b2.
But getting back to RJ, the heat in the attitude was just a little too much in the first iteration of the article. It’s just counter productive. Although, RJ and Mike did seem to get along in the end. That’s good! Maybe the two of them could combine to make some even more spectacular.
But for the most part, I’m happy with it. I think it’s good stuff!