COBOL, because I loathe myself and don’t want to be happy
I try to stay language agnostic but if I’m honest JavaScript is my favorite because of the speed it provides. Also I like to build we based things so it’s always in the stack
Can’t believe I scrolled all the way down and didn’t find Scala. It’s the only language with decent traction that beautifully and elegantly combines functional programming and object oriented programming. Scala makes it such that the language does not limit you into a certain paradigm. You can translate your algorithm in your mind into code regardless of how you thought of it. Incredibly flexible where you need it to be.
Very few people use Scala. I think it’s used in some data transformation pipelines and that’s it…
There’s a good number of companies that use it. Off the top of my head, Twitter, databricks, hopper and tubi TV all use it.
Yeah very common in Spark world, but haven’t seen it used much elsewhere.
Perl. I can use it after awhile away without having to look up how to do things. It adapts to the best style for what I need to do.
Brainfuck !
Not meant to do real things with it, it’s more of a puzzle game, but a really brain hurting one
I also enjoy brainfuck, its a nice mental challenge, similar to solving riddles. On Codewars they even support it as language and there’s a lot of challenged written specifically for it, it’s good fun.
PHP.
It picked a niche and fits exactly into it. It’s a language for server side web pages. It’s not a general purpose language shoehorned into the task, so it wisely sets boundaries. PHP could avoid a lot of async/await/promise hell because you can work in the mindset of HTTP requests-- terms of short lived requests that are compiled elsewhere. You don’t have fragile runtime environments (see: server-side JS), since it just plugs into Apache or Nginx, which are at least battle tested and known quantities to operate.
It’s batteries included. Hell, it’s the entire Duracell company included. The standard library is rich and centrally documented, including decades of community nitpicks, even before you go into composer repos.
It’s non judgmental. You can write procedural code, or object-oriented code, based on preference and fit to task.
It makes ad-hoc easy and formal possible-- If I need an array of [227, “Steve” => “meow”, 953 => new FreightLocomotive()] I can get it, or I can enforce types where it’s relevant and mitigates risk.
PHP really is such a forgiving language and easy to understand and get in to. My favorite part is that every time I have a seemingly very niche and specific use-case, there is a function that just does that thing perfectly and is already included in the base library.
You said it and I’ll reaffirm: the documentation and online library of SO questions/answers is absolutely priceless. Most of the older versions are still compatible with the latest version, so upgrading is simple and usually just means there are more features you can use now.
Lisp.
It just feels extremely natural to me, so it’s difficult to pinpoint specific features I like. But two such features stand out: the parantheses-based syntax and the extreme interactivity.
You ask a carpenter what his favorite tool is? I like languages that are fit for purpose, and I enjoy using them for that purpose.
I used bin/bash when I automated the backups at work and happy doing it. I was pulling my teeth out when I had to write code for communicating with Bluetooth devices in /bin/sh because that was what was available from factory on the router.
I picked Python for when I needed to scrape a Romanian phone book (to win an argument on the internet about something completely unrelated to programming). I once tried doing parallel programming and threads, it did not work out very well and I switched to some other language before I got too deep into it.
My guilty pleasure is the voodoo magic of C. I don’t really have a use for it in my job so I never get around to really do anything with it.
Kotlin.
Take the good parts of Java.
Remove the bad parts of Java.
I thought that was c#
C# adds a bad part called Microsoft (yes, Mono exists, it’s still Microsoft Java)
Kotlin > c# > java
Ok but why?
No one else said it… I like Java, and more than the language all the tools available around it. They have been adding to the language to cut down on the traditional verboseness, and it can even natively compile now** some of the time.
The tools are also great, with Springboot for web services and jOOQ for databases, you can very quickly have a web app with strong typed database objects.
matlab 😈 because I love figuring out how to vectorize code! I’ve used it for various art projects (see below) and it manipulates images beautifully. and the documentation and error messages are easy to follow.
Julia.
Where’s the love for VBScript?!
Right here, will spend way to long writing a vba macro when i could have done it without quicker 😂
In 2008. (The year PowerShell 2.0 came out)
I wrote VBScript for about 7 or 8 years professionally, starting in 2010. I don’t miss it.
I started in 2019 and write almost exclusively VBScript. It might be a bit limuted in some ways, but it’s quite useful in other ways. And it’s easy to learn!
Ease of learning is about all it has going for it these days. There are many many languages that are as easy to learn, but much more powerful and, frankly, useful.
R. The Rstudio ide is awesome and the data wrangling packages are unmatched. It’s also pretty fast as long as your dataset fits in your RAM.
Probably the most unpopular opinion here but PowerShell.
My main reason is that it’s extremely easy to learn and is a good intro to object orientated programming.
People bash it but it’s extremely easy to inspect objects, get any properties and methods associated with that object or class, walk through all the properties of the object and transform that into whatever you need.
It has a very fast turnaround time when developing code as you can run tiny snippets at a time and understand their outputs before moving to the next bit.
I’m not a Dev and end up having to write python from time to time and I hate it. At one point I just needed to understand an object in a variable and I couldn’t do it, the command
dir
exists but it didn’t give me any of the info I needed. There’s a function in PowerShell calledGet-Member
(alias:gm
) that you can pipe anything to and it will show you all those details of the object.It helped me tremendously when I was just starting out.
Its super powerful, it can do anything C# can do because it’s built on it, you can also run inline C, C# and C++ code with on the fly compilation.
It’s also OSS and cross platform.
I write code in C# but I love PowerShell. it’s just elegant even if the syntax can be a bit clunky
The syntax is often terrible (how it handles escape characters, for instance) but there’s usually a well-meaning backwards compatibility reason for that. It’s also flawed in many many other ways (classes, package management, variable scoping just to name a few).
But god damn if I can’t bash (no pun intended, har har) out code to do most things very quickly in it. It’s a fantastically accessible language, and it’s a lot more powerful than it gets credit for.
💀 powershell …
I owe a large portion of my career to PowerShell.
Oh Jesus no.
But I knew there must be someone who likes it.
In python you may have wanted the repr command to see how an object looks like.
Thanks for the tip!
I’m a developer with 30 years experience in lots of languages and honestly PowerShell one of my favorite. Of course anything is an improvement over batch file scripting but it’s so much better than bash. An object-oriented command line is amazing - such a huge improvment over having to use text-processing tools to parse output. Built-in support for virtually every text file format, easy access to web and rest services, and now that it’s cross-platform and open-source I’m using it consistently on Linux and Macs. I’ve been using it for almost 15 years and it’s sad how few people outside of the Windows eco-system are familiar with it, and even more resistant just because it’s from MS.
Yep, the disparaging comments you get on anything where you mention PowerShell are a sign of some deep rooted prejudices and the unwillingness to learn something new because of them. They’ll rather scoff and pretend that they’re morally superior because hurry durr Microsoft.
I’m glad that there are people who appreciate it for everything it can and does do. I cringe every time I have to use bash because of just how bad and cumbersome it is to use.