5 ms·
> We are currently in a state of paralysis with respect to educating decision-makers within applied software development because the arguments made for one lan
by kruhft 13y ago
> We are currently in a state of paralysis with respect to educating decision-makers within applied software development because the arguments made for one language or another are small incomparable islands that admit only buzzwords.
In my experience, decision makers don't want to be educated about the benfits of your favorite language. They want to use a 'full stack' supported solution that has corporate backup and industry acceptance. They want to be able to hire someone to take over your code when you leave.
In the end, you can compute anything compuatble with any Turning complete programming language, although some are more elegant than others at certain problems. Human psychology will lead you to desire what you don't have, which in this case is your ideal niche language for solving your current problem at your shitty job. In the end languages are just tools and decision makers are providing you with the tools you are to use to do the job which minimizes their risk and maximizes their return.
And if your language is so great and will solve all your problems in an elegant and productive way, then make something with it and start a successful company. Then, if you make it for 20 years, wait for the articles saying how 'uneducated' you are having used it and you should be using some university ressearch language based on n-th level hyper-metalogics because you can write fib in 21 symbols.
- mjburgess 13y ago>In the end, you can compute anything compuatble with any Turning complete programming language Well it's this defeatist position i'm arguing against. > you should be using some university ressearch language I'm largely a PHP developer / "architect" by trade; I'm not in the business of pushing Haskell onto CMS developers. I am interested in the programming language debate, and I'm not convinced "the market" is the best judge of what the most useful language is. That it happened to be, for example, the internet was coming of age during PHP's invention which gave us a generation of script-kiddes (98 - 06) seems to me an accident of history. This accident is being corrected by Zend Framework and corresponding language changes (06 - 13), so by today PHP is a language which resembles a pythonized java, rather than a javascripty perl. The market in this instance is doing precisely what has been recomended by the leading theoretical voices in this area: coming from Zend, Sympfony, etc. My intended contribution is to provide a conceptual framework in which to make sense of these changes, to advocate for these changes, and to compare potential changes. Mailing lists are abound with favorite features, I've yet to see a feature suggestion with a complete argument of the kind I would advocate. Though some of the very best do actually get 95% of the way there (ontology: showing the new feature in other languages to "get a sense of what it is"; epistemology: showing how to reason about it in different areas; abduction: showing how it represents problems better than current technologies): if you look at a modern high quality PHP-RFC today you're getting very close to what i'm proposing. The open source market of merit is putting these individuals in positions of power over the evolution of languages, it would be useful - i suggest - if we could have a standard which provides the means for establishing good arguments from bad arguments in this area.
- kruhft 13y agoThe market will never be the best judge of what the most useful language is, but it is a correct judge. 'Best', being a relative term, takes an idividual's ideals into account, 'correct' being what is actual in practice. The Best is chosen by the market that which is used to create the most successful product. By that measure, PHP is the best because Facebook is written in it. Best to the individual is much more complicated. The two will rarely coincide due to the uniqueness of the individual and the typical rejection of authority by intelligencia. I would never say that PHP is the 'best' language for doing high abstraction, but it can be done. I also would not use it for such things, but you said you have (if you are the author of the article). The 'Best' language is what you do your best work in, whether paid or not. Just don't expect to use it at work, and if you could, you would think something else would is best and pine for that. It's the job, not the tools.
- mjburgess 13y agofacebook is not written in PHP, it's written in a PHP-like language developed by them which is then transcompiled into C++ and then to binary. > It's the job, not the tools. Again, this is what i disagree with. There really is something objective, independent, and "true" to be said about the utility of various languages in various problem domains. There really is a language which represents the problem space most accurately, for example. It's just defeatism to suppose that "it's all the same, whatever works". Innovation is, of course, the opposite drive. It is at the innovative egdes of programming languages that these debates are had. If you arent part of this innovative edge then it may seem to you that the things youre using are just "market decisions", they are far from it. Every programming language you are using has not been created by the market, it has been shaped by the very debates i am talking about. The market cannot create languages, it does not improve them, the market merely plays out a baggage'd history which language-theorists have to cope with. This is why PHP has changed so much: it is the force of the people who engage in this discussion on the market, to drive it towards "better".
- kruhft 13y agoFacebook was originally written in PHP. It's true there are awesome specific language tools for your specific problems, that when tied together to create a total solution creates an unmaintainable mess that even the creator doesn't understand. Look at the web. I saw Kerrnigan talk about 'little languages' and I fully agree that a specific language designed to solve a problem is the way to go for small problems, like the ones when Unix was designed. Tying all these text based interfaces together is a maintenace nightmare. Maintenenace is a much bigger problem than the actual problems being solved, at least for businesses. Then there's Lisp, which is a mini-language designer's tool kit and the super glue to tie them together all in one integrated package using a well designed, common binding agent. Unfortunately the market has choosen not in it's favour. The market will improve languages and in end game is that they'll all have the same features, and then it comes down to syntax and performance. They'll all be 'better' by today's standards. The problem is at that point is that the better bar will have moved. And the guy that truly innovated during that time won't be found until the next century.