<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 26, 2015 at 7:45 AM, Leandro Ostera <span dir="ltr"><<a href="mailto:me@leostera.com" target="_blank">me@leostera.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>What I did was start a project that I'd already know how</div><div>to build with another set of technologies (think RESTlike</div><div>API on Express/Rails/Flask) and then look for a way to</div><div>build it with Erlang. Think "backend for To-do app" in Erlang.</div><div></div></blockquote></div><br>I agree with this. When learning a new technology, try to retain as much knowledge you have from other technologies, so you don't need a grand leap of faith or a hail-mary pass.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Erlang often challenges newcomers in several ways:</div><div class="gmail_extra"><br></div><div class="gmail_extra">* functional programming in a mostly-pure environment</div><div class="gmail_extra">* distributed computing</div><div class="gmail_extra">* concurrency</div><div class="gmail_extra">* error handling through asynchronous monitors/links</div><div class="gmail_extra">* language syntax and semantics</div><div class="gmail_extra">* how to build large erlang systems: module composition, releases, configuration, deployment</div><div class="gmail_extra">* how to test Erlang programs which have the above distribution/concurrency traits</div><div class="gmail_extra">* learning the performance model of Erlang: what is fast, what is slow</div><div class="gmail_extra">* all of the OTP stack, its idioms, design choices and how it influences program architecture</div><div class="gmail_extra"><br></div><div class="gmail_extra">If most of these are new to you, then you don't want to throw in a complicated problem you don't know as well. At least not until you have some proficiency in the above.</div><div class="gmail_extra"><br clear="all"><div><br></div>-- <br><div class="gmail_signature">J.</div>
</div></div>