[Cool.]
Source: Riding Rails
This was kind of how RSD got started. I had a docs page which discussed the settings Archipelago (the blog editing software I had authored) needed for several of the major blogging platforms. As I was updating it for the millionth time with yet another engine I realized that I could write a document that Archipelago could use for setup, and the customer service emails (which is what caused me to update the page) would probably go away to a great degree. All I’d have to do is keep, say an XML file on my server up to date, and having done it once all Archipelago users could benefit.
Happy with the thought, I was dissatisfied with how this wouldn’t reduce the problem to near zero because while I had all the major cases covered, it would always be my problem to keep “database” up to date. I looked for an existing format so that I wouldn’t have to sell anyone on a format and found really dense hard to understand formats that were very general and didn’t seem to cleanly fit the use case. I floated a couple of versions past the indie developers I know, found some support initial support from two vendors I cared greatly about, and the rest as they say is history.
It was a nothing to lose story in that if I had received a big yawn, I could have hosted the file for my users, and they at least would have had a better experience most of the time. But this result was far better since everyone has benefited, and we all continue to benefit from the support of the blog engine folks.
Anyway, years later it comes as little surprise that a lot of software small and large have similar birthing stories…]
I used to love Javascript so much that it would scare me. Why? Because I used to never write any tests. No unit tests. No integration tests (e.g. Selenium). Why? I didn’t know how. Not properly. I didn’t know how to write Javascript unit tests with an autotesting tool, like ZenTest’s autotest command.
[It’s about time…]
Source: Dr Nic
For now it's very basic, but stuff like the following works.
describe("A newly created Tic-Tac-Toe", function() {
with (this) {
before("each", function() {
this.game = new TicTacToe();
});
it("should have 9 empty cells", function() {
game.cells.should( have(9, "items") );
game.cells.each(function(cell) {
cell.should( be(undefined) );
});
});
it("should have 0 players", function() {
game.should( have(0, "players") );
});
}
});
Stay tuned for more :)
Ask questions, make suggestions and post bugs at http://code.google.com/p/js-spec/issues/ [Nice to see BDD spreading…]
Source: Scripteka
Most importantly is SQLite3 as the new database we’ll configure for by default when you run the rails generation command without any specification. This change comes as SQLite3 is simply an easier out of the box experience than MySQL. There’s no fussing with GRANTs and creates, the database is just there. This is especially so under OS X 10.5 Leopard, which ships with SQLite3 and the driver gems preinstalled as part of the development kit.
If you want to preconfigure your database for MySQL (or any of the other adapters), you simply do “rails -d mysql myapp” and everything is the same as before. But if you’re just playing with a new application or building a smallish internal tool, then I strongly recommend having a look at SQLite3. Thanks to the agnostic db/schema.rb, it’s as easy as changing your config/database.yml to switch from SQLite3 to MySQL (or another database) as soon as your load warrants it. [OK. Nice to the tweaks flowing…]
Source: Riding Rails

Ruby 1.9 is just around the corner, so it looks like a good time to create a new edition of Programming Ruby. So, I’m pleased to announce that the Third Edition of the PickAxe has just entered beta.
The book’s home page is at http://pragprog.com/titles/ruby3.
Although 1.9 is largely compatible with 1.8, there are definite differences. And it’s been an interesting ride getting the examples in the book to compile and run with the current 1.9 interpreter. The book pushes the envelope in many different areas, and includes example code designed to illustrate edge cases. When I find these, I’m flagging them in the text and (if they look like bugs) adding them to the tracking system. But, so far, 1.9 is looking like a big win for Ruby.
[The original guide, which so many used to get started with Ruby. Looking forward to 1.9, and now reviewing this edition.]
Source: PragDave