Tidbits: Webmachine, Ngnix, and More
March 24, 2009
Webmachine
Thanks to alert correspondent Jamaal we’ve just learned that Justin Sheehy has released version 1.0 of Webmachine.
Justin positions Webmachine as “an application layer that adds HTTP semantic awareness on top of the excellent bit-pushing and HTTP syntax-management provided by mochiweb, and provides a simple and clean way to connect that to your application’s behavior.”
He further notes “From the way that Webmachine’s decision core works, it follows that Webmachine’s HTTP behavior is transactional. Each HTTP Request is fully received, and the resulting HTTP Response is then fully constructed before being returned. This means that while Webmachine is suitable for a great many Web applications it is not a good fit for an application that will gradually or continuously stream responses back to clients inside the context of a single HTTP Request.”
Jamaal is smitten by Webmachine, finds it easy to work with. He’s promised notes on his experiences to date; we’re eagerly looking forward to them.
I’m thinking about moving Webmachine up the list as a Newbie Test candidate, but first need to finish up explorations of iserve.
Erlang and Ngnix and ???
Nick Gerakines is experimenting with a C/C++ Ngnix module as a front-end to Erlang.
JLouse says “Pre-process the data in other languages and make them into erlang terms which can be read fast by erlang.”
And adds “… don’t get bitten by the mnesia bug, please. It is almost always the case that mnesia and ETS are the wrong way to go.”
As a Newbie, one the attractions of Erlang was the impression that I didn’t have to pile heterogeneous software environments atop one another to get a job done. But these writers, and others, suggest that Erlang is not up to my hopes and expectations.
So what gives? What’s a Newbie to make of this? Is Erlang:
-
1) Immature? Give it time and it’ll deliver on the promise.
2) Incomplete? Give it time and it’ll embrace ever more functionality.
3) Specialized? It is what is; can’t be all things to all people; live with it.
4) OK as is? These guys may have a point, but by and large it’s sour grapes.
Love to hear from the gray-beard wizard contingent on this topic.
Best Practices
While we’re on the subject of Nick Gerakines, bookmark his list of Erlang Library Best Practices.
Can’t tell you how much this Newbie appreciates words of wisdom from the wise.
Formatting Dates in Erlang
Here’s another one to bookmark… a handy little function for formatting dates.