My daily readings 11/12/2013

    • Obviously, frameworks (and ecosystems…) like Flask, Sinatra, Django and Rails have an advantage in that you can get stuff done today: they do a lot for you. And, for many use-cases, performance will never be a problem.

      Saying that, writing HTTP logic in Go has been surprisingly easy, and the small amount of extra boilerplate you have to write (if you’re sans-framework like me) is nice when you realise how darned fast your application is. Being able to deploy a single binary and front-end it with nginx also reduces a ton of complexity.

      PS: Once I finish this thing off over the Christmas break, I’m hoping to write up a few articles on the bits-and-pieces that took a bit of time to “get right”. Also have a minimalist (i.e. wraps HandleFunc, not Handler) CSRF package in the works.

    • Agreed – if you’re new to programming in Go, I’d recommend using the standard library (supplemented by Gorilla[0] once you get the hang of things).

      If things start getting unwieldy as your app grows, you can always try out something like Revel, but by starting with the standard library (which already has a very clean web server built-in), you’ll get a sense for the way things work “under the hood” early-on.

      If you want to see how a Go web server built with just the standard lib + Gorilla looks, I wrote a simple sample application a while back: https://github.com/ChimeraCoder/go-server-bootstrap . The most verbose part is the oauth2 callback.

      I should get around to updating it (it still even uses a Makefile! Eek!), but it gives the basic idea.

      (Sidenote: When did Github stop supporting the “.markdown” extension instead of just “.md”?)

      [0] http://www.gorillatoolkit.org/

Posted from Diigo. The rest of my favorite links are here.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: