Oh please. It has displaced C and C++ for the vast majority of programming. And call me when people other than a few rabid fans and academics are actually using Haskell and OCaml for real software development.
713 karma · joined December 28, 2012
Oh please. It has displaced C and C++ for the vast majority of programming. And call me when people other than a few rabid fans and academics are actually using Haskell and OCaml for real software development.
Wind, solar, and hydro are your easiest routes to electrical energy. From there lots of things become easier.
Good examples though. If you were building them from scratch, I would still question the choice of C++ for these as opposed to C#, Objective-C native UI layers combined with a C core.
I'm not sure the state of consumer Windows apps but almost all desktop business apps are in C# or VB. Unless of course they are accessing legacy C++ stuff.
First off, that is incorrect. You underestimate the number of VB, C#, and other apps, not to mention OSX based apps. Most business apps are either in Java on the backend or if they aren't web based they are in proprietary languages and frameworks that likely use a mix of C and C++ at the core. They are mostly shit nowadays though which is why everyone is re-writing them in the Cloud. They're unmaintainable.
But yes there are a lot of high visibility popular desktop apps in C++ and yes, it is just inertia. When were all of those desktop apps you're thinking of first built (or came of age)? The early 90s! Microsoft Office, the Adobe suite, Visio (bought out by Microsoft), desktop databases, etc.
That was the age of the desktop and briefly, C++ was the best choice. I'll grant you a few very small niches still exist and they are in the desktop domain e.g. web browsers and very complex image editors. But how many people are writing browsers? And simpler image editors are better off being mostly in Objective-C or C# (minus some core libraries which are best off in C).
There was one brief stretch in history around 1994-1998 where C++ was the best choice for application level programming. And even then only a very narrow type of app programming.
Before that brief timeframe and since then it has been a poor choice for every single type of programming. There are better choices in all cases. It has no niche anymore where it is the best fit, not anywhere.
Nevertheless, there is still a need for that role in large organizations whether they are called that or not. A typical project or product at a large company has many people over multiple sites involved and/or significantly affected by the project.
Someone with enough technical depth needs to coordinate, make decisions, and be accountable for the overall technical cohesion.
Most developers either aren't interested in spending their time on that or aren't good at it. The ones that are end up playing the role of architect. If they don't have the authority to back it up, either by reputation or granted by title, they will get nowhere when they try to convince other groups all work towards the same vision.
The specific connections he makes aren't important. It is getting others to think and make connections themselves that are actually meaningful.
The author of the article does a good job of pointing out the ulterior motives for tech culture elites wanting to get him involved e.g. grasps for authenticity. I like how she also points out there may be positives to these ulterior motives like actually getting back in touch with its counter-culture roots.
In any event, thought provoking article...
As others have pointed out, the complete opposite is true.
Now it is very clear the neats have lost and the scruffies are on the rise. http://en.wikipedia.org/wiki/Neats_vs._scruffies
One good point from the essay though is Knuth's example of 12% speed increase for low effort is definitely worth doing. I agree.
A better way of putting things is:
Considering low effort, small performance improvements that don't affect other factors such as code readability or system maintainability is not "premature optimization".
If you are considering performance "in the small" and it affects maintainability you are indeed prematurely optmizing.
But this is actually a cool little language with well thought out features. I can see it being very useful for embedding.
A separate question is whether we have a duty to help _other_ cultures in their quest for self-preservation. I think there are altruistic reasons for doing so stemming from the fact that most people value their own culture so we can empathetically understand why others would want to preserve theirs.
There are also interesting biological and sociological arguments around diversity and resilience of the species that don't rely on altruism.
The question specifically about language is asking something different though. So this conversation should just be about languages where the group that spoke it no longer has enough interest to continue that tradition. So the question becomes should we save the language of other cultures for them? I don't think there is a strong case (other than academic preservation).
Arguments about the intrinsic relationship of language to culture are valid but fall apart when the members of the culture itself don't care enough to preserve the language.
If the above is true should that cause us Bayesians to slightly believe their conclusion more? Or are they so influenced by governmental interests (who may want cyber warfare) that it really isn't a factor?
https://hbr.org/2010/04/the-myth-of-shareholder-capitalism
Jack Welsh never did believe it.
http://www.forbes.com/sites/stevedenning/2013/06/26/the-orig...
I've got a sample size of three and all were gong shows.
I blame the outsourcing mindset -- low cost, high volume of people. No focus on quality and accountability. Because the individual engineers I've worked with have on average been excellent. Most of the time though you just get a pool of "resources" rather than actual named people with clear responsibilities.