<html><head><style>body{font-family:Helvetica,Arial;font-size:12px}</style></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">Marketing matters - true.</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">So lets look at the reality of the market.</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">Every java project that gets worked on probably creates an ongoing demand for, int(X/5 + 3) new java developers, where X is the number of developers on the original project (1).</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">From an economics perspective, this translates to a market where</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><div id="bloop_customfont" style="margin: 0px;"> - it pays to write applications in java (they may break, but you can probably find people to help fix it)</div></div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"> - it pays to be a java consulting firm (you have no trouble finding clients)</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">- it pays to learn java (‘cos you’ll get hired by a consulting firm for a pittance, no matter how terrible you are…)</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><div id="bloop_customfont" style="margin: 0px;">In short, the Markets for Java are constantly expanding - new projects being worked on, leading to new developers coming in the mix, etc.</div><div><br></div></div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">On the other hand, every project that gets written in Erlang probably (and typically) creates an ongoing demand for rem(1/Y) + 1 developers, where Y is the number of DevOps people you already have..</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">From an economics perspective, this translates to a market where</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><div id="bloop_customfont" style="margin: 0px;"> - it pays to write applications in erlang (they don’t break, so you don’t really need to find people to hire) (2)</div><div id="bloop_customfont" style="margin: 0px;"> - it DOESN’T pay to be an erlang consulting form (with apologies to ESL)</div><div id="bloop_customfont" style="margin: 0px;">In short, the markets for Erlang are *not* growing - there tends to be a fairly stable supply of developers moving from project to project, and the number of <i>new</i> developers, while growing, is by no means growing rapidly - and thats largely because there is no *need* for large numbers of new developers. (And Garrett - thats the answer to why you don’t see more uptake)</div><div id="bloop_customfont" style="margin: 0px;"><br></div><div id="bloop_customfont" style="margin: 0px;">What does this have to do with marketing?</div><div id="bloop_customfont" style="margin: 0px;">Basically that kraythe may be on to something here. If we want a large uptake for erlang, it is *not* going to be because of the inherent quality. If anything, the very stability that erlang is diametrically opposed to its market expansion!</div><div id="bloop_customfont" style="margin: 0px;">In short, erlang needs to be sold on *other* merits, on polish, on gleam, on lustre, on coolness. T<a href="http://www.theatlantic.com/magazine/archive/1982/02/have-you-ever-tried-to-sell-a-diamond/304575/"><span style="color: rgb(0, 0, 0);">ake a lesson from DeBeers</span></a> - sell the shine, not the content.</div><div id="bloop_customfont" style="margin: 0px;"><br></div><div id="bloop_customfont" style="margin: 0px;">Cheers</div></div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><br></div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><br></div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><br></div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">(1) Maintenance, JDK management in production, bug fixes, support, and god-forbid, any issues in it being a distributed system</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">(2) Ok. Yes, they break. But that doesn’t really matter, because in the Erlang world, “good enough” is actually a feasible construct, and one that you can get away with. Its also one of the reason that so many of the erlang projects tend to be about 80% of the way there - because they’re Good Enough, and you’re productive enough that you don’t need to worry about the remaining 20%. Let It Crash actually works as a philosophy (and kids, don’t try that with Ruby. Or Assembler. Or C++. Or, well, anything not Erlang)</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><br></div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:12px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><br></div> <div id="bloop_sign_1392308642318598912" class="bloop_sign"><div style="font-family:helvetica,arial;font-size:13px"><div style="color: rgb(34, 34, 34); line-height: normal; font-family: Helvetica; word-wrap: break-word;"><div style="margin: 0in 0in 0.0001pt;"><font color="#1f497d" face="Calibri, sans-serif"><span style="font-size: 15px;"><b><div style="font-style: italic; margin: 0px; font-family: Calibri;"><b style="color: rgb(17, 85, 204);"><a href="http://www.gravatar.com/avatar/204a87f81a0d9764c1f3364f53e8facf.png" target="_blank" style="color: rgb(17, 85, 204);">Mahesh Paolini-Subramanya</a></b></div><div style="margin: 0px; font-family: Calibri;"><span style="font-weight: normal;">That tall bald Indian guy..</span> <br>
</div></b></span></font></div></div><div style="color: rgb(34, 34, 34); line-height: normal; font-family: Helvetica; word-wrap: break-word;"><div style="margin: 0in 0in 0.0001pt;"><font color="#1f497d" face="Calibri, sans-serif"><span style="font-size: 15px;"><b><div style="margin: 0px; font-family: Calibri;"><div style="font-family: Helvetica; word-wrap: break-word;"><div style="margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 11pt; font-family: Calibri, sans-serif;"><div style="margin: 0px; font-family: Calibri; color: rgb(1, 108, 226);"><a href="https://plus.google.com/u/0/108074935470209044442/posts" target="_blank" style="color: rgb(17, 85, 204);">Google+</a><span style="color: rgb(31, 73, 125);"> | <a href="http://dieswaytoofast.blogspot.com/" target="_blank" style="color: rgb(17, 85, 204);"><span style="color: rgb(1, 108, 226);">Blog</span></a></span> <span style="color: rgb(31, 73, 125);"> | <span style="color: rgb(1, 108, 226);"><a href="https://twitter.com/dieswaytoofast" target="_blank" style="color: rgb(17, 85, 204);">Twitter</a></span></span><span style="color: rgb(31, 73, 125);"> | </span><a href="http://www.linkedin.com/in/dieswaytoofast" target="_blank" style="color: rgb(17, 85, 204);">LinkedIn</a></div></span></div></div></div></b></span></font></div></div></div></div> <br><p style="color:#A0A0A8;">On February 13, 2014 at 5:20:47 PM, kraythe . (<a href="mailto://kraythe@gmail.com">kraythe@gmail.com</a>) wrote:</p> <blockquote type="cite" class="clean_bq"><span><div><div>
<title></title>
<div dir="ltr">
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<i>Java as a language is big and complex, because it has a lot of
concepts directly inside the language.</i></blockquote>
<div> </div>
</blockquote>
Ahh but here you are wrong. Java itself is analogous to Erlang
without OTP. you don't HAVE to use the JDK libraries beyond
java.lang. You would be a bit crazy reproducing the wheel if you
did so but it is not a requirement of writing java. In fact many
Java controlled micro devices only allow a very small subset of the
JDK to be used. So there is essentially no difference.
<div><br></div>
<div>So Elang is to Java as the Java Development Kit is to the Open
Telecom Platform. And there is where we have the "marketing"
disconnect. Its not about changing functionality or a triviality to
be scoffed over. If we start with the premise that we want more
developers to learn and use Erlang then we have to consider how the
language and its nomenclature comes across to our audience. You
don't name a language the Scalable High Integration Technology
because the impression it leaves with adopters is ...
unfortunate. </div>
<div><br></div>
<div>So if you DON'T care about people adopting the language, then
the discussion is academic and simply, as one reply put it, a waste
of time. Of course if you don't care about adoption then you are
wasting your time here because you wont be able to staff a
development crew, replace developers that leave or push the
language into an organization which isn't currently using
it. </div>
<div><br></div>
<div>If you DO care about people adopting the language you have to
consider its marketing. If I many were to take Erlang to management
and propose it for a product the management would see "Open Telecom
Platform", object that the company isn't a telecom company and that
Erlang is mainly for telecom and that would be the end of that.
In fact, if you really care about adoption you are better off
renaming it "Fred" than leaving it as "Open Telecom
Platform".<br></div>
<div><br></div>
<div>Naming matters and it is also pretty easy to fix.</div>
<div><br></div>
<div class="gmail_extra">
<div>
<div dir="ltr">
<div style="font-family:arial;font-size:small"><b>Robert Simmons
Jr. MSc. - Lead Java Architect @ EA</b></div>
<div style="font-family:arial;font-size:small"><i>Author of:
Hardcore Java (2003) and Maintainable Java (2012)</i></div>
<div><i style="font-family:arial;font-size:small">LinkedIn: </i><font face="arial"><i><a href="http://www.linkedin.com/pub/robert-simmons/40/852/a39" target="_blank">http://www.linkedin.com/pub/robert-simmons/40/852/a39</a></i></font></div>
</div>
</div>
<br>
<br>
<div class="gmail_quote">On Thu, Feb 13, 2014 at 9:03 AM, Anthony
Ramine <span dir="ltr"><<a href="mailto:n.oxyde@gmail.com" target="_blank">n.oxyde@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
That’s a *HUGE* difference. Erlang as a language is very small; OTP
is a very complex piece of software, as is BEAM. The three
shouldn’t be conflated.<br>
<br>
Java as a language is big and complex, because it has a lot of
concepts directly inside the language.<br>
<span class=""><font color="#888888"><br>
--<br>
Anthony Ramine<br>
<br>
Le 13 févr. 2014 à 15:59, Vlad Dumitrescu <<a href="mailto:vladdu55@gmail.com">vladdu55@gmail.com</a>> a écrit
:<br></font></span>
<div class="">
<div class="h5"><br>
> On Thu, Feb 13, 2014 at 3:46 PM, Anthony Ramine <<a href="mailto:n.oxyde@gmail.com">n.oxyde@gmail.com</a>> wrote:<br>
>> Java without OOP is a different language.<br>
>> Erlang without OTP is still Erlang.<br>
><br>
> IMHO the only difference is that OTP is implemented as a
library and<br>
> doesn't have dedicated language syntax. I make difference
between OTP<br>
> as design/system building guidelines and its implementation.
The<br>
> former is more like OOP for Java. The latter is more like the
JDK.<br>
><br>
> /Vlad<br>
><br>
>> --<br>
>> Anthony Ramine<br>
>><br>
>> Le 13 févr. 2014 à 15:21, Vlad Dumitrescu <<a href="mailto:vladdu55@gmail.com">vladdu55@gmail.com</a>> a écrit
:<br>
>><br>
>>> On Thu, Feb 13, 2014 at 2:09 PM, Benoit Chesneau
<<a href="mailto:bchesneau@gmail.com">bchesneau@gmail.com</a>>
wrote:<br>
>>>> I also say Erlang/OTP and often I add to the one
that ask that OTP is<br>
>>>> a framework, but then people are more puzzled than
they were before.<br>
>>>> Maybe rust did the right things by clearly
separating the language<br>
>>>> and the runtime from the standard library and
other libs ?<br>
>>><br>
>>> I would say that OTP is to Erlang what OOP is to Java.
You can write<br>
>>> Java programs that are not object-oriented, but why
choose Java for<br>
>>> that in the first place?<br>
>>><br>
>>> OTP is in my opinion a design philosophy that guides
us when it comes<br>
>>> to structuring and developing distributed
fault-tolerant systems. It<br>
>>> comes with library support that is intimately tied to
the Erlang<br>
>>> libraries: the most basic Erlang apps (kernel and
stdlib) are also the<br>
>>> ones that implement the OTP concepts. Even more,
Erlang code is<br>
>>> structured as applications, and an "application" is an
OTP concept!<br>
>>><br>
>>> I can only see meaning in trying to separate the
language from OTP<br>
>>> either as an academic exercise or in order to
implement a different<br>
>>> language on the beam runtime and the new concepts
would collide<br>
>>> implementation-wise with OTP. Or one wants to create
OTP 2.0 without<br>
>>> interference with 1.0.<br>
>>><br>
>>> regards,<br>
>>> Vlad<br>
>>> _______________________________________________<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>
>><br>
<br>
_______________________________________________<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>
_______________________________________________
<br>erlang-questions mailing list
<br>erlang-questions@erlang.org
<br>http://erlang.org/mailman/listinfo/erlang-questions
<br></div></div></span></blockquote></body></html>