5 ms·
The software ecosystem isn't dry
- banku_brougham 9y agoWelll, yes I think the case is proven for MongoDB and the like, but is the author beating up on the easy ones? Some examples that come to mind: - Postgres. MySQL is great but was eventually obtained by Oracle with a questionable open source future. I think they both originated long ago and evolved in parallel. I wish author would weigh in on which should not have been developed. - Julia is a new dynamic language that intends to perform with speeds like C. But shouldn't we stick with python because that is the current standard? Wait though, the author says Python is just the same as javascript, ruby, and PHP. PHP was first, so I guess I should be doing my data science in PHP? I think languages and ecosystems are more analagous to companies/enterprises. They evolve, arise, and die out. Some succeed.
- alexandercrohde 9y ago[Author] I'll weigh in- MySql, Postgresql [and the other major players] should all leverage the same standardized syntax (they're close, but not drop-in replacements). In this case when one gets acquired the switching cost is 0. In fact, if they follow the same query contract you could database-dump from one to the other. Which one shouldn't have existed? Whichiver came second, I suppose. I don't understand why the authors between the two wouldn't cooperate and build one open-source system and fork it if it got acquired.
- meitham 9y ago"Nobody seems to admit it, but Php, Ruby, Python, and Javascript are the same language"!!! That's a big claim and I bet the author doesn't know any of these languages.
- alexandercrohde 9y agoI'm the author, I know all of them. Php, Javascript, and Python the best. Php well enough to have read add patched the source code. If you'd like to explain what you think some fundamental differences are between them I'm all ears. For any line of python, there's a line or two of PHP to accomplish the same thing (same with javascript). However you cannot say this for Scala vs Java for example.
- babyrainbow 9y ago>For any line of python, there's a line or two of PHP to accomplish the same thing (same with javascript). Python decorators? What is the counterpart of that in Php?
- alexandercrohde 9y agoThe syntactic-sugar form isn't there with the @, but it can still be done in a single line. https://coderpad.io/RWTYEFY3 https://coderpad.io/RWTYEFY3 <?php // DEFINE DECORATOR $decoratorFunction = function($orig) { print "decorating $orig"; return function() use ($orig) { $params = func_get_args(); print "\nCalling a function with: " . count($params) . " arguments"; return call_user_func_array($orig, $params); }; }; // DEFINE A FUNCTION TO DECORATE function someFunction($a, $b) { return $a + $b; } // CREATE NEW DECORATED FUNCTION(s) $decorated = $decoratorFunction("someFunction"); $decorated2 = $decoratorFunction("printf"); echo "\noutput: " . $decorated(1,2); echo "\nOutput: " . $decorated2("\n%s", "cool"); }
- babyrainbow 9y ago>The syntactic-sugar form isn't there with the @.. But those things are differences, right? Certain languages makes certain things easy and idiomatic. The differences in languages are all about that...
- alexandercrohde 9y agoSo there are two options: 1. Join the languages (so PHP would get that syntatic sugar too) [or preferably never have so many in the first place] 2. Be where we are now, where we have redundant libraries, frameworks, languages, package-managers, version idiosyncrasies, and IDEs for mere syntactic sugar.
- babyrainbow 9y agoEh? Two options for what? I was talking about how languages are different...
- tluyben2 9y agoExactly. But DRY does not give you fast github stars nor makes your work sound significantly interesting (I used a perfectly fine but boring 15 year old lib versus I rolled my own). To the Mongo point; investors often want to hear you rolled your own as well. So it will not change soon.