<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Ihe,<div class=""><br class=""></div><div class="">the discussion starts to take too many threads for my brain the be able to wrap around it.</div><div class="">But I’ll answer some of the questions that  came up in your emails, one by one.</div><div class=""><br class=""></div><div class="">1. Scala WILL be used. Spark is implemented in Scala. So there will be millions of Scala instances</div><div class="">running. </div><div class=""><br class=""></div><div class="">If ... Typesafe (the company who does the Scala compiler) will make money out of this: I would say no.</div><div class="">I followed their business plan…. and honestly, I am not impressed. I think they have very good engineers but no clue</div><div class="">how to turn this into money. And that’s unfortunate because they COULD make money out of it,</div><div class=""><br class=""></div><div class="">2. About what’s more important for the success of a programming language: #installations, # developers or #millions$$. </div><div class=""><br class=""></div><div class="">Well, it’s subjective. </div><div class=""><br class=""></div><div class="">Honestly, all I care is that (a) there is an important problem that people need to solve and (b) that programming language is the</div><div class="">best tool to solve that problem.</div><div class=""><br class=""></div><div class="">According to this, yes, XSLT and XQuery do the job.</div><div class=""><br class=""></div><div class="">And, also, I don’t think either XSLT or XQuery or JSOniq are the kind of languages that increase the number of developers to millions.</div><div class=""><br class=""></div><div class="">3. The idea that we need “millions of developers” gets me crazy. No, we don’t.  We just need smarter people with better tools.</div><div class="">(A good tool like Oxygen has more effect on the success of XQuery then anything we cold have done to design it better….)</div><div class=""><br class=""></div><div class="">E.g. today there was an article that made the tour of the Internet: "US needs 5 million data scientists by 2017.”</div><div class=""><br class=""></div><div class="">Now contrast that with the little experiment that I was running recently: here is the simplest statistical problem you can imagine.</div><div class=""><br class=""></div><div class="">You have 3 boxes and 6 balls: 3 white and 3 back. You put the balls in the boxes, 2 in each. I take one ball out of one box and it is black.</div><div class="">What is the probability that the secod ball in the same box is also black ?</div><div class=""><br class=""></div><div class="">I asked this question to CTOs of data science companies, Phd in math, Phd In CS, the head of machine learning at Google, hordes of “data scientists”.</div><div class=""><br class=""></div><div class="">Out of tens of people I asked, I got only TWO correct answers: both where Phd in physics. (not the CTOs, not the head of machine learning..)</div><div class=""><br class=""></div><div class="">Now, tell me : if US hires 5 million (!!) data scientists in the next 2 years, what’s the probability that ANY good data science, and some reliable </div><div class="">results come out of that! ?</div><div class=""><br class=""></div><div class="">You know the story: garbage in, garbage out ?</div><div class=""><br class=""></div><div class="">So, no I don’t believe that hiring hordes of uneducated developers helps. (maybe it’s my ex-communist snobbish view concerning the education, or lack thereof..)</div><div class=""><br class=""></div><div class="">Just hire less developers, but smarter ones, and give them very good tools to do their job, that’s all.</div><div class=""><br class=""></div><div class="">4. However, even I don’t believe that we need millions of developers writing XQuery, the question still remains:</div><div class=""><br class=""></div><div class="">Did we do the best we can to market XQuery ? Of course not. Books are scarce, the little material is badly written, there are no classes, etc.</div><div class=""><br class=""></div><div class="">The W3C XQuery web site had “to be added..” for 8 YEARS !!!!! (don’t even get me started …)</div><div class=""><br class=""></div><div class="">The community is split, and instead of getting together to try to make a common effort to market their common interest, they each one fights for </div><div class="">showing off THEIR muscles, etc.</div><div class=""><br class=""></div><div class="">The XQuery community spent no efforts into marketing, and unfortunately a programming language, like any product, needs MARKETING.</div><div class=""><br class=""></div><div class="">The SQL community spent TONS of efforts for marketing it… long ago….and now you can see the results.</div><div class=""><br class=""></div><div class="">Scala community spends TONS of efforts for marketing. Etc. Etc. </div><div class=""><br class=""></div><div class="">Well. I am not sure how to solve that, other then to open my (big) mouth every time I get a chance. (and yes, usually the results is… "Dana is grumpy" :-)</div><div class=""><br class=""></div><div class="">A more community-based effort would be needed to  better explain to the world what XQuery is and what they can do with it.</div><div class=""><br class=""></div><div class="">And yes the fact that MarkLogic pretends that they’ve never heard of XQuery in their life and sells this as “their” technology</div><div class=""> to their customers  doesn’t help XQuery either. (and honestly, I think it’s dumb business mistake for them too….but  who am I to judge....).</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">===========</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">A separate email about the market of XQuery.</div><div class=""><br class=""></div><div class="">Best</div><div class="">Dana</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><div><blockquote type="cite" class=""><div class="">On Jun 18, 2015, at 12:07 AM, Ihe Onwuka <<a href="mailto:ihe.onwuka@gmail.com" class="">ihe.onwuka@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class="gmail_extra"><br class=""><div class="gmail_quote">On Wed, Jun 17, 2015 at 2:01 PM, daniela florescu <span dir="ltr" class=""><<a href="mailto:dflorescu@me.com" target="_blank" class="">dflorescu@me.com</a>></span> wrote:<br class=""><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"><div style="word-wrap:break-word" class="">Depends what you call “mainstream” (or successful) for a programming language…... <br class=""><div class=""><br class=""></div><div class="">Is it calculated in (1) #developers ?</div><div class=""><br class=""></div><div class="">Or is it calculated in (2)  #instances running it ?</div><div class=""><br class=""></div><div class="">Or is it calculated in (3) #millions of dollars revenue from it ?</div><div class=""><br class=""></div><div class="">==========</div><div class=""><br class=""></div><div class="">A. If (2), the Scala will be a HUGE success — because of Spark. </div><div class=""><br class=""></div><div class="">IBM just offered to put more then 3000 (!! and that’s a LARGE number) of developers on Spark.</div><div class=""><br class=""></div></div></blockquote><div class=""><br class=""></div><div class="">Yes on Spark. Not Scala. Spark. </div><div class=""><br class=""></div><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"><div style="word-wrap:break-word" class=""><div class=""></div><div class="">Cloudera just seemed to have dumped Hadoop to become a Spark reseller.</div><div class=""><br class=""></div><div class="">So…. in terms on number of instances running it, Scala WILL be a huge success.</div><div class=""><br class=""></div></div></blockquote><div class=""><br class=""></div><div class=""><div class="">Spark supports Java, Python and Scala there is an open source SparkR.</div><div class=""><br class=""></div><div class="">Now let me remind you of your opening gambit in the discussion.</div><div class=""><br class=""></div><div class=""><span style="font-size:12.8000001907349px" class="">************************************************************</span></div><div class=""><span style="font-size:12.8000001907349px" class="">"Even though, because it’s functional, it will be restricted to be used only by people with CS degrees, and not by</span><br style="font-size:12.8000001907349px" class=""><span style="font-size:12.8000001907349px" class="">random Joes and Janes who write web sites. The way it is designed it is intended to make a population of educated programmers</span><br style="font-size:12.8000001907349px" class=""><span style="font-size:12.8000001907349px" class="">ETREMELY efficient, and NOT to increase the  total number of developers to hundreds of millions.</span><br style="font-size:12.8000001907349px" class=""><br style="font-size:12.8000001907349px" class=""><span style="font-size:12.8000001907349px" class="">When being reproached this fact in the past, my answer was always the same: building a database application should not be for the uneducated.</span><br style="font-size:12.8000001907349px" class=""><span style="font-size:12.8000001907349px" class="">It’s like building a 30 story building, you don’t do that without a architect ad a structural engineer.</span><br style="font-size:12.8000001907349px" class=""><span style="font-size:12.8000001907349px" class="">E.g. if you want to eradicate a grave neurological disease, you don’t lower the bar to allow anyone from the street to perform a neurosurgery,</span><br style="font-size:12.8000001907349px" class=""><span style="font-size:12.8000001907349px" class="">you just make the existing neurosurgents more productive."</span><br class=""></div><div class=""><span style="font-size:12.8000001907349px" class="">*************************************************************</span></div><div class=""><span style="font-size:12.8000001907349px" class=""><br class=""></span></div><div class=""><span style="font-size:12.8000001907349px" class="">Now you tell me what you think is going to happen.</span></div></div><div class=""><span style="font-size:12.8000001907349px" class=""><br class=""></span></div><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"><div style="word-wrap:break-word" class=""><div class="">(how is Tyrpesafe, the company that does the Scala compiler making money … that’s another story…)</div><div class=""><br class=""></div><div class="">B. If it is (3) — millions of $$$, I can probably give you the most “cost-effective” programming language in the world. </div><div class=""><br class=""></div><div class=""><a href="https://en.wikipedia.org/wiki/K_(programming_language)" target="_blank" class="">https://en.wikipedia.org/wiki/K_(programming_language)</a></div><div class=""><br class=""></div><div class="">It’s used for high end financial systems, and a copy of this compiler costs about $1M.</div><div class=""><br class=""></div><div class="">Not bad ….</div><div class=""><br class=""></div><div class="">Number of developers writing code in this language … probably in the 100s….</div><div class=""><br class=""></div><div class="">C. If it in terms of (1) number of developers …. are we really sure it matters ?</div><div class=""><br class=""></div></div></blockquote><div class=""><br class=""></div><div class="">Yes. </div><div class=""><br class=""></div><div class=""> </div><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"><div style="word-wrap:break-word" class=""><div class=""></div><div class="">Who makes money today out of Javascript ? (arguably the most popular programming language …)</div><div class=""><br class=""></div><div class="">Nobody.</div><div class=""><br class=""></div></div></blockquote><div class=""><br class=""></div><div class="">Loads of people make a living out of it.</div><div class=""> </div><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"><div style="word-wrap:break-word" class=""><div class=""></div><div class="">======================</div><div class=""><br class=""></div><div class="">So, which one do you care about ?</div><div class=""><br class=""></div><div class="">I care about (2) and (3).</div><div class=""><br class=""></div></div></blockquote><div class=""><br class=""></div><div class=""><span style="font-size:12.8000001907349px" class="">If the answer were 2 XML would be deemed to be a raging success. But of XQuery's woes you said "</span><span style="font-size:12.8000001907349px" class="">So…. I think it is simply a question of …. there is no market for XML ……(aka no enough MONEY in the market)." </span><br class=""></div><div class=""><span style="font-size:12.8000001907349px" class=""><br class=""></span></div><div class=""><span style="font-size:12.8000001907349px" class="">Similarly having loads of instances running Scala has to translate in some meaningful way (beyond making money for Databricks and co). Show me the money.</span><span style="font-size:12.8000001907349px" class=""><br class=""></span></div><div class=""><br class=""></div><div class=""> </div><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"><div style="word-wrap:break-word" class=""><div class=""><div class=""><div class=""><div class=""><div class=""><div class=""><blockquote type="cite" class=""><div class="">On Jun 17, 2015, at 10:47 AM, Ihe Onwuka <<a href="mailto:ihe.onwuka@gmail.com" target="_blank" class="">ihe.onwuka@gmail.com</a>> wrote:</div><br class=""><div class=""><div dir="ltr" class="">I wish I could agree with you but I think it is different this time.<div class=""><br class=""></div><div class="">Couple of days ago I saw an update on the Scala group, somebody saying that the upsurge of interest in Spark could be the killer app that catapults Scala into the mainstream. Much as I would like to see it happen for a functional programming language, everybody except Scala dev's knows that the language is just too damn complicated to ever go mainstream. </div><div class=""><br class=""></div><div class="">Even if this criticism could not be levelled at Scala, suspend disbelief for a minute and accept that Spark is indeed this killer app, alas it is not going to catapult Scala anywhere because the people employed in that domain will demand that it is delivered in Python and/or R and the people that hire them will acquiesce and say verily so. </div><div class=""><br class=""></div><div class="">In the 1990's the bell tolled for the Cobol mainframe programmer. It's not like that now. On the JVM, the message is not adapt to Scala/Clojure or die it's don't worry mate stick to what you know and Java 8 will bail us out.</div><div class=""><br class=""></div><div class="">The IT industry has presided over the widepsread and rudimentary amateurisation of  software development. So when the right solution comes along it encounters a rearguard  resistance from people who depend on the technological status quo for their jobs and who roll out their stock in trade objections (performance usually high up on the list). It's not like 1990 when mainframe programmers were saying I need to learn Unix/C and an Rdb and/or 5 years later I need to learn Java and what they thought to be OOP. Hence 20 years later we are still talking Java, Javascript and SQL and 5 years on they will be looking at Java 10 and still writing Fortran with classes. The industry goes along with it because they can continue to source bodies cheaply.</div><div class=""><br class=""></div><div class="">I absolutely agree that what you said should be the way it is goes but I don't see how it is going to happen with the vested agenda's at play.</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><div class=""><br class=""></div><div class=""><br class=""></div></div></div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Wed, Jun 17, 2015 at 1:10 PM, daniela florescu <span dir="ltr" class=""><<a href="mailto:dflorescu@me.com" target="_blank" class="">dflorescu@me.com</a>></span> wrote:<br class=""><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"><div style="word-wrap:break-word" class=""><div class=""><span class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><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"><br class=""></blockquote></div><br class=""></div><div class="gmail_extra">Well I have no particular beef with the format itself other than the lack of tools. Now that we have JSONiq I am less bothered about that (assuming one has the opportunity to use it). <br class=""></div></div></div></blockquote><div class=""><br class=""></div></span>Well, JSONiq is only implemented by Zorba (and another implementation in IBM middle tier).</div><div class=""><br class=""></div><div class="">And Zorba is a dead piece of code.</div><div class=""><br class=""></div><div class="">So, having “JSONiq” as a specification…...doesn’t mean much, isn’t it ? Unless is adopted by other XQuery processors.</div><div class="">(which I cross fingers they will do…)</div><div class=""><br class=""></div><div class=""><span class=""><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="gmail_extra"><br class=""></div><div class="gmail_extra">I agree with your ideals (1 and 2 above) too but it should be evident from the sociology of the JSON community that these things are not going to happen. </div></div></div></blockquote><div class=""><br class=""></div></span><div class="">Well… nope. Not clear at all. </div><div class=""><br class=""></div><div class="">I started working on query languages for XML in 1996. </div><div class=""><br class=""></div><div class="">Same as now, the whole industry was for using SQL for querying XML — including ME, I had </div><div class="">a system running, a bunch of PhD students working on that, etc.</div><div class=""><br class=""></div><div class="">The decision of the W3C NOT to use SQL for that purpose was taken in 2001.  </div><div class=""><br class=""></div><div class="">5 years later. You know how many query languages have been proposed during those 5 years ?</div><div class="">Tons: UnQL, XML-QL, etc, etc.</div><div class=""><br class=""></div><div class="">Those things need TIME. </div><div class=""><br class=""></div><div class="">People need to try SQL first, before they realize it’s a dead end. </div><div class=""><br class=""></div><div class="">MarkLogic needs to try Javascript on the server side, before realizes that’s a dead end.</div><div class=""><br class=""></div><div class="">The industry moves MUCH, MUCH slower that one can expect.</div><span class=""><div class=""><br class=""></div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="gmail_extra">You have people putting stuff in JSON databases without thinking how are we going to get it out and coming up with half-assed solutions for doing so. This is not progress and this is not good.<br class=""></div><div class="gmail_extra"><br class=""></div></div></div></blockquote></span></div><br class=""><div class="">Again, patience is golden :-)</div><div class=""><br class=""></div><div class="">There will be tons of those half baked solutions (MongoDB’s JSON query language, CouchDB’s..), before people realize that this</div><div class=""> is not going anywhere….some of those databases will be acquired, never to be seen again, them or their query languages….etc.</div><div class=""><br class=""></div><div class="">===============</div><div class=""><br class=""></div><div class="">Honestly, I give it 5 years for the JSON query languages to stabilize. 2020 would be my estimate. Even later if there is a database bubble crash in the</div><div class="">meantime.</div><div class=""><br class=""></div><div class="">Best</div><div class="">Dana</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div></div></blockquote></div><br class=""></div>
</div></blockquote></div><br class=""></div></div></div></div></div></div></blockquote></div><br class=""></div></div>
</div></blockquote></div><br class=""></div></body></html>