[erlang-questions] languages in use? [was: Time for OTP to be Renamed?]

Mahesh Paolini-Subramanya mahesh@REDACTED
Sat Feb 15 16:28:49 CET 2014


I've pointed this out before, but it really bears repeating - "Erlang-based
systems are architected *differently*"
- "Let it Crash" actually works
- "Loose Coupling" actually works
- "Edge Cases" can be dealt with lazily

The thing is, the three items above all work together - each is useful in
isolation, but when put together, the Gestalt is mighty powerful.
Consider a typical erlang-based system, where an obscure condition (edge
case!) gets triggered by a user, and clobbers the component in question.
Thats OK - it crashes, like it is *supposed* to!
Pretty much by definition, these systems are architected so that it is not
only processes that are isolated, but the components that they reside in,
the applications thereof, the nodes, etc., etc. ("loose coupling"!).
 Consequently, supervisors restart the component in question, and life goes
on.
Meanwhile, you (or the developer in question) tracks down the edge-case,
and hot-loads a patch stat.
Life, in short, is good.

In contrast, virtually edge-cases were (and still are) the bane of
virtually every non-erlang system that I've ever worked on.  We'd spend
*person-years* tracking down every possibility, and still watch the whole
damn thing tumble to the ground because some *truly* horrible edge-case
that we couldn't anticipate got triggered.  And that, of course, doesn't
even begin to get into the entertainment which is "Sunday Morning 2AM - its
time to Shut The System Down to load the fix"

And now to the snark part - some stuff that I've seen repeatedly here, and
can't leave well enough alone

"Nobody uses erlang" <--- Except for everybody that does

"Its got only one dominant sponsor" <-- WTF does that even mean? Like Java
has Oracle?

"Erlang doesn't play well w/ <some technology> therefore it is teh sux0r"
<--- Ummm, maybe <some technology> isn't particularly relevant for
virtually everything you do in Erlang?  Writing GUI components is terrible!
Oh Noes!

"Erlang needs standards" <-- Please tell me you don't mean "standards
bodies". Please!

"Erlang needs to shed its telco ties" <--- Huh? *What* telco ties? Yes,
Ericcson. I got the point, and will raise you "99.99% of erlang devs and
projects dont' give a s**t about Ericcson"

"But Java programmers know how to work together." <-- I'll let that one
just kind of stand there by itself.

And finally, I really would like to point out, not everything gets better
with the addition of a coffee-grinder attachment.  Focused systems are
wonderfully useful things in the world of integration and loose-coupling.
Why, one of my favorite cross-platform tools is this wonderful thing called
ZeroMQ, which doesn't really have a built-in database, built-in scripting
tool, built-in web GUI, or frankly, much of anything other than the basics.
 And it rocks...

Cheers



On Sat, Feb 15, 2014 at 2:14 PM, Miles Fidelman
<mfidelman@REDACTED>wrote:

> Pieter Hintjens wrote:
>
>> On Fri, Feb 14, 2014 at 4:39 PM, Miles Fidelman
>> <mfidelman@REDACTED> wrote:
>>
>>  Actually, the demand for both Cobol and analog engineers is UP.
>>>
>> Friend of mine was just laid off from a 15-year Cobol job. One can't
>> make general conclusions from small samples.
>>
>
> Talk about small samples.
>
> How about this for a larger sample:
> http://eandt.theiet.org/news/2013/mar/cobol-skills.cfm (lede: "Dearth of
> COBOL programmers threatens business")
>
> Or Indeed.Com's salary survey:
> http://www.indeed.com/salary/Cobol-Developer.html
>
>
>
>> The argument that keeping technology elitist creates wealth is insane
>> and should be laid to rest rapidly. Who here is building new
>> businesses on LU6.2? Right.
>>
>
> Ask doctors why they specialize.
>
>
>  Erlang needs to shed its telco ties, and get an independent steering
>> committee, and create standards, and multiple implementations, and
>> also reach out to other language communities through distribution
>> protocols like ZMTP, and educate those communities, while also
>> exploiting them and merging with them. Living systems are like the
>> Borg; they grow by merger.
>>
>
> Why?  That's all theory.  In practice:
> - it's been around, and in use for quite some time
> - it's in use in some very large applications
> - it's in use in multiple industries, and by some large players
> - there are some successful businesses that are built on top of Erlang
> (Basho comes to mind)
> - there's a demand for folks who know Erlang (actually, the demand is
> probably more for people who can build highly scalable high-availability
> systems)
>
> Excelling at a niche market is a great success strategy.
>
> FYI: Ada is a good parallel example.  It was pushed, for years, by the
> biggest customer in the world, has standards bodies and multiple
> implementations.  Yet it never has taken off as a major platform. On the
> other hand, it continues to have a significant market in mission-critical
> systems - SCADA, aircraft, oil & gas, industrial control.  It's not going
> away anytime soon.
>
> I'd be a lot more worried about Erlang's future if there were anything
> remotely like it in the market (and I'm somewhat surprised that there
> isn't).  It completely blows me away that there isn't another platform
> that's built ground-up to support massive concurrency and 24x7 operation.
>  Guess 1st mover advantage counts for a lot.  (Maybe Carl Hewitt's
> personality accounts for the Actor formalism's lack of widespread traction.)
>
>
>> Mock Java all you like. It's a hateful language in many ways. But Java
>> programmers know how to work together. There are 6+ different Erlang
>> stacks for ZeroMQ, all one-man projects, all lacking any community.
>>
>>
>>  Who's mocking Java?  I just don't have much use for it.  On the other
> hand, the company I work for these days builds most stuff on top of .NET
> and Microsoft SQL - not what I'd chose, but it works.
>
> As to ZeroMQ - is that not more about market conditions?  But I would
> expect you're in a better position to comment on that then most.
>
>
> --
> In theory, there is no difference between theory and practice.
> In practice, there is.   .... Yogi Berra
>
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://erlang.org/mailman/listinfo/erlang-questions
>



-- 

*Mahesh Paolini-Subramanya
<http://www.gravatar.com/avatar/204a87f81a0d9764c1f3364f53e8facf.png>That
tall bald Indian guy..*
*Google+ <https://plus.google.com/u/0/108074935470209044442/posts>  | Blog
<http://dieswaytoofast.blogspot.com/>   | Twitter
<https://twitter.com/dieswaytoofast>  | LinkedIn
<http://www.linkedin.com/in/dieswaytoofast>*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20140215/993f12ab/attachment.htm>


More information about the erlang-questions mailing list