Anyway, I saw something interesting in the graph. If you just look at C and C#, then in 2011 you notice that where C made a sharp decline, C# made an almost equally sharp incline.
Are these movements correlated? What happened in 2011 that made a bunch of wannabe (since they look for C tutorial) C programmers suddenly turn to wannabe C# programmers?
I realise it may very well be two randomly occuring uncorrelated events that causes these jumps. But I'm very much interested in what kinds of events move the worldwide interest in programming languages.
Being a user of WCF, I'm sorry to say, it's terrible. Don't ever make the mistake of thinking WCF is fit for production.
This goes for pretty much the whole C#/.NET ecosystem. The Microsoft tools are severely lacking in good design principles and the open source tools are amazing and life changing but don't have the mindshare to be revolutionary. This is mostly just a fact of Microsoft being unfit for open source workflows.
Instead of WCF, try ServiceStack (or SignalR if it makes sense). Instead of ASP.NET MVC, try NancyFx or FubuMVC.
If i had my choice, I'd do it in Go.
Do you have any sources that confirm that this system is in fact reliable?
That all of Europes police departments, foreign ministries and embassies use this for international communication puts it at the scale of a smallish web application.
The people that use these systems come from a system where data like this is requested by telephone and supplied per fax. If WCF were slow and unreliable they'd probably still take it for granted, everything beating the old way of doing stuff.
The users being used to telephone and fax being the reason they are okay with WCF? Maybe in the 80's, but it's been a while since then.
We are talking 10 mill+ daily transactions as a low brow estimate. A transaction in this case being a bit more complex than the page viewing of a cat picture. These are systems with dev and maintenance teams of hundreds and hundreds of deveLopers globally, working for 5-10 years. To refer to this as the scale of a smallish web app, well...
And would you really say that a technology handling such an amount of transactions in such a critical setting is not ready for production?
When searching for Go related information, use "golang" instead of "go".
e.g., golang channels; golang web sockets; golang slices; etc.