DevHouse Boston Wrapup

Just got back from DevHouse Boston. Thought I’d spill a few thoughts here for reference later.

The day was amazing. Where else would you expect to walk up to a random brick house in the middle of a city at 10 on a Sunday morning and expect to find ten 20-something guys hanging around discussing the finer points of locking in the Python VM? Yep, that’s the kind of day it was – lots of guys who are fairly knowledgable about a wide set of web tools, ready to sling some code at whatever comes their way.

I spent the day hacking with four other guys at an idea that started for me at a blog post I read last week, but mutated in many ways as the day progressed. The blog post I read lamented the lame way that RSS readers do nothing but provide a big list of links to follow (okay, maybe with a snipet or two, but still just a big list).

The idea that finally took us through the day was to use an external site’s popularity metrics (Digg for us, since that was easy), and layout news stories with summaries in a way reminiscent of newspapers. More popular stories got prime placement with larger headlines. Topics were grouped into distinct sections. We were only able to get to proof-of-concept stage, but everyone who saw the demo was interested in seeing it progress.

I’m not sure I’ll be the one doing the progressing, though. We did everything in Python/Django, and I’m just not sure I’m interested in delving deeper into it. Although, it would probably be a good springboard for doing so, since I already understand what the app is supposed to do. The code’s in a Google Project, but I’m going to make you search for it, because if you really want to try it out, the search is going to be the easiest thing you do. You think there’s time to write documentation at one of these things?! 😉

Here’s a screen cap to prove I’m not making things up:

NewsGraf Demo

Anyway, as for the rest of the projects, visualization was a key theme. And, even more specific, simplification of visualization was big. A calendar that does nothing but let you write five lines of text on each day (no categorization, contacts, etc.). A wiki edits tracker that doesn’t bother with the specifics of edits, but only the fact that edits happened, and that they probably related to edits that happened on “nearby” pages. A way to just send REST requests and view their results, without having to get into lots of code. And that’s only covering half or less of the projects that presented – the rest were amazing too.

I have to say, the day made me miss college. There’s nothing like the feeling you get when you and a small group of people focus on some strange goal for a few intense hours. In the “real world”, I’ve tended to let “real world” things (like grocery shopping, car maintenance, a day job, etc.) get in the way of that. It’s good to get it back once in a while.

Anyway, a big thanks to Betahouse for the space, the sponsors for the food, and my team mates for keeping things going. I wish DevHouse Boston many more successful years.

The Middle of Nowhere

I just wanted to warn all those interested that admining will likely be slower than usual this weekend. I have to make a trip to the middle of nowhere. The only internet connection I’m likely to have will be in my hotel room. Even there, I’m rather worried that the connection will be so awful that I won’t be able to handle anything but the simplest tasks.

Actually, the worst part may be that the nearest brewery is hours away.

On the upside, though, the long travel time is likely to be spent hacking at new features. (Provided I don’t find myself stuck without documentation, of course.) So, hopefully, you all can look forward to new things next week.

Erlang Observations

To those who are considering Erlang and Erlyweb as a framework for their website: just go for it.

A couple of days ago, there was yet another blog post on Reddit about the scalability of Erlang, with the same yaws-owning-apache graph we’ve all seen before. There was absolutely nothing new in the entire post.

In my opinion, there are many reasons to use Erlang that have nothing to do with server performance.

Those of you who found BeerRiot through the Ask Reddit thread about Erlang usage already know that it’s built on Erlang and Erlyweb. My experience with them will be different than others’, of course, but I felt the need to list a few of my [completely subjective] observations about this framework.

So, in no specific order:

  • I like the syntax. I got past the comma-semicolon-full-stop confusion that many complain about within the first few hours of coding. It’s different, refreshing, and not too hard to understand.
  • Development cycles go really fast. More than once, I’ve hashed out some new functionality on my subway commute, then polished it at home and posted it the same evening. Part of this is the pattern matching used in function calls and branches – it translates almost directly from my pseudocode.
  • Some complain about the lack of hierarchy and types – I love it. It makes evening coding feel very free-form after eight hours of Java.
  • Erlyweb and Yaws are both very powerful and useful, yet their codebases are small enough that the thought of digging through their code does not intimidate me.
  • Erlang doesn’t have all of the libraries of other languages yet, but they’re not hard to get to.
  • Hot code loading and the ability to open a shell connected to your webserver doesn’t get enough press. I never stop my webserver unless I’m making a huge change that I’m too lazy to plan the transition for.
  • I dislike typing underscore. I do think it’s a good visual representation for “don’t care”, but I just don’t like to type it. I often use camelCase to define my own functions, but it looks a bit messy in mixed code.

So, yeah, some of these are reasons to use Erlang, some are reasons to use any language with similar features, some are just things to note. I just felt like there needed to be some conversation about Erlang other than its scalability.

If anyone has any specific questions about my experience with Erlang, please post them in the comments. I’ll either answer here or write another post to cover them all in a few days.

What’s My Google Rep?

Maybe sometimes it’s better you don’t know…

So, I run stats over my logs a couple of times a day (AWStats, if you’re interested). One of the things it tells me is what people have typed into search engines to find BeerRiot.

Last month, the search terms were pretty innocuous – mainly “beerriot” and the names of a few beers. This month, people have started searching for my name.

I don’t find this that strange, of course. I’ve Googled friends and new acquaintances more than once. What has me a little worried is that I am very few of the hits that either Google or Yahoo search returns.

I have to wonder who people think I am after clicking through a page or two of search results.

Just a few hints to get people closer to the right track:

  • I have no religious affiliations
  • I have never broken a Track & Field (or any other sport) record
  • As a general rule, I do not post pictures of my birthday parties on the web
  • I am not a country singer (or a music student)

Any other new webmasters dealing with similar paranoia?

…yeah, yeah, back to coding, I know…

BeerRiot – The Blog

Hello Rioters! I realized there was a lot more I wanted to say about developing BeerRiot, enjoying beer, and other things, none of which quite fit under the category “news.” So, I’ve set up this blog as an outlet for those things.

As suggested, here you’ll find my thoughts on beer, the reasoning behind some of the features on BeerRiot, geeky discussion of some of the technology used to make BeerRiot, and probably a host of other things. I may even use this as a space to poll you all when I can’t make a decision on new features.

So, if any of that interests you, stick around.

P.S. This is my first blog, so bear with me while I learn the ropes.