Programming languages - likes and dislikes

Hmm. Just noticing there’s no developer category to post in… Anyway…

This is partly inspired by the bug-bounty discussion in recent DL show.

Which programming languages do you know quite well and which do you use regularly? Of these which do you like most and like least and why? Are there any languages you’d like to learn and are there any you dislike enough to never want to use really? I’d be interested in your reasons in each case.

My favourite language is Java, which I believe I’ve previously mentioned. My reason is it was the first language I used that had was object oriented, fully documented, and had an extensive standardised library (API) including for GUI programming. I’ve also done significantly sized projects in C++ and C, and know quite a few other languages though I don’t use them anywhere near as much. (For web development, HTML, CSS, JavaScript and PHP with MySQL, obviously.)

1 Like

I studied C++ and OO in college, but I don’t care for compiled languages because my needs were just scripting tasks. After learning the syntax for C++, I picked up perl very quickly and used it for many years, again, just for basic scripting tasks. I consider myself a scripter, but not a full on developer. I’ve played with vbscript back when it was popular, but the lack of things like a sort function kept pulling me back to perl.

Today, I’m using python. I didn’t care for the lack of syntax like end of line terminators, brackets, etc, but I’m learning to live with it. In my current role I am using python to access API’s to gather data and/or integrate applications.

I intend to brush up on shell scripting at some point, but only so that I can read and understand others work. I would always pick python over the shell due to the portability and power.

2 Likes

Well - my daily job is in cough cough windows developing in VB.net with some C# sprinkled in occasionally… I’m trying to learn python as it seems a great ‘general’ language that is powerful enough to do everything…

Of course, I also do some minor BASH scripting…

2 Likes

I’ve been in web development for many years so the languages I know well are related to that. Though, not all of these will be programming languages exactly.

PHP - incredibly flexible, very fickle so small mistakes creates big issues.

Python - simple yet powerful . . . sometimes too limited

HTML - not programming but vital for webdev

CSS - not programming but vital for webdesign

JavaScript - I am not great at it but it adds all of the dynamics of the modern web

honorable mention to Bash scripts :smiley:

2 Likes

I only learned BASIC and Pascal in school but plan to teach myself Python.

4 Likes

Well - after reading @MichaelTunnell’s post, I guess I should clarify a bit more…

College/University languages:
Cobol - haven’t done much since college
Pascal - see later
C++ - don’t do much with this, although I do more in C#

Job-wise:
Delphi - this is basically a RAD version of Pascal… my first programming job was using this language
PHP - the company that had the Delphi product made an online version using PHP, along with…
HTML/Javascript - the front end side of said online product
jQuery - while it is technically a javascript library it varies enough - when I moved to a new job (2015), I originally started using Delphi [why I was hired - had experience], but the product I was working on was sunset and a new tool we started developing was all web-based, using HTML/CSS/Javascript/jQuery on the front, and C#/ASP.net for the API data access level.
CSS - like Michael said - vitally important for webdev
C# - for API Development

Then I moved to my current job in 2018, and that is all:
VB.net - as I said earlier… this is really just an older style version of C#

I’m wanting to learn python - mainly because I want to get out of being in a Microsoft shop - I’d rather have the option of using Linux at work…

3 Likes

This shirt says it all. Python is king.
On a slightly more serious note, I really do prefer Python over anything else. It’s simple, versatile, and powerful. I’ve been doing some C++, which has been… interesting. I’ve tried Java a few times and never liked it, though I see its appeal. Go might be an interesting option to look into, since I use the Go-based Hugo for websites (which, I suppose, lumps HTML/CSS into the mix). I’ve even done some iOS app development with Swift, which is beautifully simple and easy to work with, but is highly Apple-dependent.

1 Like

To clarify for Javascript (JS)…

  • JS is a webpage scripting language interpreted or compiled (using JIT) by a browser.

  • JS is a desktop GUI scripting language interpreted or compiled (using JIT) with Electron through Chromium.

  • JS is a server-side scripting language compiled with Node.js (vaguely similar to how PHP works)

The JS runtime is used for other things but that’s the mainstream.

I adore it’s versatility and the prototypical inheritance is extremely powerful.

My gripes are it’s weakly typed, the syntax rules are too flexible so you have to be very self disciplined.

JavaScript - Wikipedia
Electron (software framework) - Wikipedia
Node.js - Wikipedia

1 Like

If I were to write an application right now, I’d pick either c++ or python, depending what I’d want from it.
At first python really didn’t speak to me, but as I started using it in a project at work I learned how to use it better.

Aside from those two, I really like D, but don’t use it due to lack of popularity.
Never really got big with Java. Although I can use it fine and I like writing code in it, it always felt sluggish and nowadays if I don’t care about performance that much, I’m just gonna use python instead.

I also do a lot of js (typescript) in my work and I mostly don’t like it. When writing webpage for myself, I use pure js and relay mostly on HTML5/css3 which works great, but at work we have electron application where js is doing most of heavy lifting and I think that’s backwards.

I used to work a lot in php and I don’t hate it as much as most people seem to, but now when I can do web back-end in python I’m never going back.

Pascal - no.

1 Like

Anyone worked in pyside2 (qt5 for python)? I’m thinking about trying it for my desktop application, but wonder if I should use C++ qt5 or something else for python instead.

1 Like

I will be controversial perhaps, but the languages I have done plenty of work in are: C++, C#, VB, Java, PHP, Perl, Python.

After all of this, the winner is Python for me. I disagree with Michael - I find it can do more than other languages. I was asked to integrate with a VOIP phone server to analyze phone calls and found a Python library - built the thing in one day. Customer was expecting 1 month of development. Since, I have used Python for Web sites and also just solving problems very quickly.

As an aside, I was offered an interview for a Python job straight out of graduating from Computer Science - I turned it down because I did not know much about the language and that was that. About 10 years later, I was forced to learn IronPython (which is exactly the same as Python, but Microsoft’s open source version which integrates with .Net). I found the language worked well and was quick to learn and I have managed to teach non-programmers how to write software and games, plus it can just do anything you want it to (as far as I am concerned).

So there you go!

3 Likes

Only language I’m any good at (and even then I wouldn’t claim to be good) is C, spent most of my time writing client/server type stuff back when people still used telnet for things. I still tinker.

As a student I did BASIC, Pascal, COBOL, Modula-2, Java, pretty much all forgotten now.

Have written at least one thing in each of Perl, JavaScript, PHP, VBScript, Prolog, Haskell, maybe some others, can’t claim to ‘know’ those either though.

Would like to learn Python and maybe Rust, and I really need to get better at Bash scripting, and awk, if you count that as a language.

Virtually no GUI programming has happened except for Java (swing?) and FLTK with C.

In terms of likes and dislikes, I dislike whitespace-sensitive, which has stalled my python interest. I love minimal languages that don’t act like a toolkit on top of the real language, which is why I like C I suppose.

1 Like

Java. I’m still recovering.

3 Likes

I was against it at first as well, but it makes ifs and fors so much nicer to read.

1 Like

Agreed - use Python daily for 2 weeks, and you’ll miss the spacing when you go to something else!

1 Like

I’m a hobby programmer and, as comparing different languages is part of that hobby, I’ve tried tens of languages (including many obscure ones). My favourites are:

  1. Lua - the easiest language to learn and use ever. Projects like LOVE or raylua are pure fun.

  2. Go - simple, fast, batteries included. The only issue is that, at the moment, it’s not very popular outside web development.

  3. HTML/CSS/JavaScript - well, you have to go with them if you want to build a website by yourself.

  4. Ruby - I’ve always liked Ruby more than Python and still can’t understand why it’s the latter that is much more popular.

  5. NewLisp - the easiest to learn (but not to use). No syntax and just three rules.

1 Like

Until a few years ago I spent the majority of my career doing Java development. I dabbled in C# and Objective-C for a couple of work projects but they were more one-off kinds of things. I got my degree in C/C++, but my first love was Pascal which was my initial introduction to programming in the 80s. I wouldn’t say any of them are my favorite; they all have papercuts or outright gaping wounds that cause frustration. I’m probably most comfortable with Java simply because I’ve spent the most time with it.

1 Like

In university, I learned 14 different programming languages. I hated them all. My strongest hatred was for C++ and Java (and of course, Visual Basic, which went without saying, back in those times). It’s astounding that C++, Java, and Javascript are still so popular. Although it wasn’t taught in University back then, I got introduced to Python then (this was back in like 1999). It immediately was the shining beacon of sanity compared to the others. Python was necessarily readable (quantum leap there), and it avoided needing to understand pointers (which were the bane of my existence).

I wrote a few Python programs for my own personal use. I also used Python a bit professionally as a Sysadmin (but bash scripts often got the job done quick and dirty, which made my bosses happiest, because the quickness was praised as being “productive” in a short term sort of way).

When the Raspberry Pi got invented, with the express intent of being a platform to teach Python, that got me quite stoked.

Lately I’ve been taking an interest in Go, as it’s so damned efficient on a server. For example, Mattermost Team Server shines on a Raspberry Pi 4, thanks to it being written in Go. Comparable server apps like Zulip (written in Python) can’t really hold a candle to Mattermost, in terms of performance.

One of the things I’m marveling at with golang, is how they cleverly use version numbers in a pre-meditated and structured way, to enforce stable API usage, even after major API revisions occur, for a given program. I would call this a “quantum leap”, which makes it worth my while to look beyond Python. The ease of concurrency use, also is a game changer. The static typing is clearly a smart move, something Python made a big mistake of not doing from the get-go (as it incurred a performance hit so bad that it’s not worth it, IMHO). Yes, Python has tried to mend its ways, effectively adding static typing, but not in a way which I found elegant.

Dear Google: you know how you own the largest share of the web browser market? Please make Go the new Javascript, because you can afford to push on that in Chrome and Chromium. May Javascript go the way of the dinosaur (and the same goes for any Java “apologist” languages like Scala and Dart).

1 Like

I used to love experimenting with languages too, must have done that for a couple of decades, perhaps. These days I’m just looking for getting the job done, though anything fairly different and innovative does get my interest from time to time.

1 Like

I started with Commodore 64 BASIC many a year ago - apparently a version of Microsoft(!) BASIC then had to move to 6502 Assembler to get around many of BASIC’s limitations. Pascal was the first structured language I taught myself and I really enjoyed it. At college the first imperative language we did was Modula-2, follow-up to Pascal, of course, and I loved it, though it never really took on in industry… Although I learnt a lot of other different languages of different paradigms, I eventually ended up coding most in C, C++ and Java.