<div dir="ltr">I've done a little bit of web stuff in Erlang recently as part of learning Erlang and the components mentioned by David is (mostly) what I used. This is a great answer.<div>I think the only thing I would love to add is that Apache Thrift JSON protocol seems to be the most approachable way of transforming to and from JSON in Erlang. I'd definitely play with that.</div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr">Kind regards,<div><br><div>Radek Gruchalski</div></div><div><a href="mailto:radek@gruchalski.com" target="_blank">radek@gruchalski.com</a></div><div><p style="margin-bottom:0cm"><font color="#999999"><font face="Helvetica, sans-serif"><font size="1" style="font-size:8pt"><span style="font-style:normal"><b>Confidentiality:</b></span></font></font></font><font color="#999999"><font face="Helvetica, sans-serif"><font size="1" style="font-size:8pt"><span style="font-style:normal"><br>This
communication is intended for the above-named person and may be
confidential and/or legally privileged.<br>If it has come to you in
error you must take no action based on it, nor must you copy or show
it to anyone; please delete/destroy and inform the sender
immediately.</span></font></font></font></p></div></div></div></div>
<br><div class="gmail_quote">On Mon, Feb 16, 2015 at 12:31 PM, David Welton <span dir="ltr"><<a href="mailto:davidnwelton@gmail.com" target="_blank">davidnwelton@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
> dear erlangers,<br>
> with my plan to build a web app (a yapp was what i had in mind) i have been<br>
> studying tools.<br>
> there seems to be general agreement on rebar.<br>
> but which should i choose;<br>
<br>
This is "asking for it", as they say, as there's nothing that gets<br>
programmers going more than a good discussion of tools :-)<br>
<br>
> yaws or mochiweb?<br>
> mnesia or mongoDB?<br>
> chicago boss or ...?<br>
> XML or JSon?<br>
> intellij idea or eclipse?<br>
<span class="">> and before i buy a server, Win or Linux or ...?<br>
<br>
</span>> while whatever i study seems ok, it is all taking a lot of time and keeping<br>
> me from coding in erlang.<br>
<br>
> there is some good info on the web, but i value your opinions more.<br>
> understanding you will be required to maintain your app, if you were<br>
> starting from scratch, which choice would you make first?<br>
<br>
I'd turn the problem around.  What are you trying to do, and why are<br>
you set on using Erlang for it?  "Learning Erlang" is a perfectly<br>
acceptable response, but it does color the discussion some.<br>
<br>
I've been doing "web stuff" for nearly 20 years, and here's my opinion<br>
about the state of Erlang and "web stuff":<br>
<br>
* It's got most of the pieces you need.<br>
<br>
* There is no really good framework that puts them all together in a<br>
decent way to get started.  Chicago Boss was a valiant attempt at<br>
this, but... it's got some warts.<br>
<br>
* As an example of the kind of thing you'll have to learn about and<br>
put together yourself, consider using a database: at a minimum, you're<br>
going to want to integrate something like fuse and poolboy to make it<br>
work at any kind of scale, and make it work robustly.<br>
<br>
* The bits and pieces I would use: cowboy web server, Postgres<br>
database with epgsql, erlydtl for templates, jiffy for json, poolboy,<br>
fuse, lager, recon, relx and a few other bits and pieces.<br>
<br>
* If putting all that together is not your thing, and you are more<br>
interested in getting something up and running as soon as possible,<br>
you might look at other languages.  Elixir's Phoenix framework runs on<br>
the same VM as Erlang.  Going further afield, you have all kinds of<br>
choices, which have their own advantages and disadvantages, depending<br>
on what you want to accomplish.  I'm personally a fan of Ruby on Rails<br>
for how much stuff you can do by including various libraries.  People<br>
have managed to build businesses on PHP, Node.js, Java, Python, Perl,<br>
Tcl and all kinds of other systems.<br>
<br>
* Don't buy a computer, rent a VPS via something like Linode, and run<br>
Linux (or maybe some BSD system if you feel adventurous).<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
David N. Welton<br>
<br>
<a href="http://www.welton.it/davidw/" target="_blank">http://www.welton.it/davidw/</a><br>
<br>
<a href="http://www.dedasys.com/" target="_blank">http://www.dedasys.com/</a><br>
</font></span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</div></div></blockquote></div><br></div></div>