What makes programming languages easy and why you want one that isn't
What is it with all the language picking and language wars? Maybe I just grew up in a good learning environment because I had to, computers were simply not fast and had very little memory; on my first home computer it only had built-in Basic so I started with that, but it was slow, so went to assembly but that was annoying for anything but games so went to Pascal and later C but that was annoying for business software, so I went to DBase&#x2F;Clipper etc etc. I would say that &#x27;a good programmer&#x27; is not that bothered by switching languages when it is the right thing to do for the job at hand. Whatever language that is, easy or hard is not very interesting in my opinion and experience.<p>Like I said in another thread; I picked C# for a project because the software needs to run in banks and deal with bank IT departments. That&#x27;s Java&#x2F;.NET and, because we needed apps as well and we were already proficient in Xamarin, we chose C#.NET. Not because I like the language (I do, especially for later versions) or think it is hard or easy, but because it fitted.<p>We wrote a prototype in Python before that and the first bank we worked with had the CTO looking very puzzled and then, after some research on their side, said they cannot have that in their infrastructure; Windows servers with Java&#x2F;.NET they had. And the IT staff to manage that, not other &#x27;esoteric&#x27; stuff. However, already before that, we started rewriting that prototype to C#, this was just an extra sign we did the right thing.<p>I do a lot of coding in PHP ; not because I particularly like it, but my clients ask for it, I have 100s of 1000s of lines of legacy code in it going back the end 90s. For my embedded work I would not (and cannot) use either C#&#x2F;PHP so I would not try; assembly or C&#x2F;C++ (or a Java subset).<p>Programming languages are tools; they are fun to play around with, but when doing real work (which includes side project), just pick something you can get shit done with the fastest&#x2F;best (some balance between those) (that can be Haskell, Coq or Prolog as well; they do not have to be &#x27;traditional&#x27; languages).