· ten by six dota

dotablaze is live

ten by six update!

dotablaze, a.k.a. prototype project number 4, is “complete”.

Now before you say: “But wait! That site is terrible!

Yes, yes it is terrible. But it’s also a prototype. And as a prototype, I reserve the right to update it at any time, with the possibility of making it better or worse during that update.

(probably worse)

Additionally, it might become the :1 project, which would allow me to significantly improve upon what’s currently there.

So the code

The backend can be found here: gotablaze.

It’s called gotablaze because it’s for dotablaze, but it’s written in Go. As far as I can tell, all projects written in Go must include the word “go” in them somewhere, otherwise Go will throw a compiler error or something.

The frontend is here: dotablaze.

It’s called dotablaze because the project is called dotablaze … and I couldn’t come up with a cooler name. It’d probably have to be a portmanteau of Node, Socket.IO, or RethinkDB and Dota. It’s written in NodeJS because that made using Socket.IO for realtime updates suuuuper easy. I’m also decently familiar with Jade and Handlebars, which I used for templating.

Also because it’s not written in Go, I didn’t have to add “go” to the name anywhere. Again, I think the Go compiler will throw errors in other projects not written in Go if they contain “go” in the name.

(The Go compiler reeeeeally likes to throw errors. Like, all the time without ever stoping.)

It’s using RethinkDB because I like RethinkDB. Also because RethinkDB made it really simple to write a query which got the game data changes as they occured and just sort of pipe them to the frontend.

Wooo open source!

All this code is open source, though I haven’t gotten around to fixing up or adding the READMEs and LICENSEs. All parts of it are (or will be) ISC licensed (it’s like the MIT license, but not affiliated with MIT, just like me).

← And then there were 10 Make lots of short urls really really fast →