Posted on 04/06/2023 6:35:29 PM PDT by SeekAndFind
1. Java is the de facto enterprise standard. Having worked in some large enterprises, I know they are absolutely resistant to quick change and will keep Java for decades, like they did with COBOL. Java comes with enterprise and team features that other languages envy.
2. Javascript: depends on Web Assembly and transpilers. Even today, you can write in PHP and transpile in Javascript. It could become “the new JVM”, that is something that gets less used over time but everything use it as intermediate codebase. A big issue with Javascript is that if you exploit its strengths (ease of use, small code, available in browsers) you end in compatibility issues and you’ll need tools and more tools. I know I am in the minority thinking what I am about to say, but I think jQuery has been the most “Javascript soul” library ever created. What came next, are “frameworks” and “language improvements” that take out JS nature and make it another thing. Make it a “regular language”. Add burden and intermediate passages. Look at the ever growing tools chain needed to deploy what used to just require “Notepad” to code and run. Look at the verbose, “classic” newest JS syntax to declare classes etc. At this point we may as well use any regular language and transpile it to JS.
3. Python: it sort of failed to become “the general purpose language”. Paradoxically, I’ve seen more Go general purpose small apps in such a short Golang life time than Python. However Python has picked up the AI and finance analysis niches and is going to stay strong in them for many years to come.
4. C++: a staple for lots of lower level software, I always developed in C++ in two fashions: the “durable” and the “cool guy” way. The first, makes use of “moderate” C++ features and has stood the eras. The latter, using templates to the fullest, overloaded operators in the most extreme ways etc., is very neat and advanced but makes it hellish to maintain such codebase. By maintain I mean the 10 man years applications I had to upgrade and upkeep for years when I worked for large compaines. Whereas classes, inheritance etc don’t change much over the years, we had an hard time adapting templates and other stuff to (usually proprietary and barely standard) implementations for advanced constructs. Regular C: close to immortal. It’ll last until we’ll have such a grand technological revolution (quantum computers? Programmable DNA?) that C won’t be able to represent its basic structures any more.
5. C#: a totally cool and great programming language, but came late. Came late and for years it got imprisoned in the Microsoft ecosystem. We had mono and little else to work on C# outside of Windows. Add the fact you need a runtime and that the runtime has been really Windows oriented for years and you get a situation where a very nice language (I love it!) remained under-represented compared to its potential. I fear its usage will further decline in the future.
6. Kotlin: I feel it’s overhyped. True, it’s cool and “functional looking” so it’s 2018 fashion too. However it’s been developed by one small company and Google supported it because it was instrumental in their huge litigation with Oracle. Will it survive in the next years? Who knows.
7. Go: initially I dismissed it (despite its Google support!). Whereas I don’t see it as the “PHP / Java killer” some believe it to be, it has its uses. I haven’t done a lot with it, but have used and installed software made with it. It’s rich but still immature, especially when dealing with certain lower level O.S. (Linux is what I have seen) operations. I am not sure it’ll have everlasting success, but it’s here to stay for a while.
8. PHP: always mentioned last and shown like its only virtue is to show the others how something should not be done. PHP is not fashionable, it’s not “cool intellectual friendly”. It’s a workhorse, powering the large majority of the net since 20+ years. I love it. When developing large apps, it’s easier to keep backwards compatibility with PHP than in C++. It just works. Since version 7, it just works and fast. And cheap. If you want to ever work with overseas people, C and PHP (and Python in a lesser way) are the languages to go, period. If you want to create a website or an app that is compatible to African budgets, PHP is the answer. If you want to toy with TONS of stuff spanning from the eldest “C-like” functions a la “strpos()”, PHP does it. If you want to play with Interfaces, traits, contracts, behavioral and unit testing, iterators and maps, PHP does it. If you want to play with generators, fluent functions, lambdas, PHP does it. If you want to write a 1000 Java piece of code in 300 lines of code, PHP does it. Now with types hinting and strict checks “like a good language should do”. If you want to hack a 10 liner for a shell operation, PHP can do that. If you want to write a Fail2ban script, PHP can do that. If you want to develop an uber fast MVC backend, you can use Phalcon (C compiled speed). You could also achieve compiled speed by using HHVM but nowadays PHP 7.2 is so fast that it’s not really worth the hassle, just use the latter.
Needless to say, PHP evolved over > 20 years. Like Java, and Javascript, PHP is “the English language” for the web and there’s no reason for it to stop adapting and evolving for another 20 years.
I bet I’m the only one here who remembers “Promal”? ref. https://en.wikipedia.org/wiki/PROMAL
“From the management perspective, you have to think in terms of, If my entire team left today, which language/platform allows me to replace them quickly and cheaply?”
Yep. So many Stanford kids wanting to launch the next big thing pick some obscure language for the project.
They have a hundred reasons why their chosen language is perfect and so superior to the big ones, but it all falls apart when you ask them how they plan to add 100 Groovy programmers per year.
Wait, where’s Ada?!
I loved the time I spent with osCommerce, and learning and using PHP. I wrote a good number of sub routines and custom codes in PHP and dealing with alternative operating systems like puppy linux.
For those who can catch a clue, we weren't a large profitable hardware store in Detroit before we launched an international website based entirely on an osCommerce website. And although our success in the website business did float our profits and encourage further development, we eventually came to understand that it wasn't sustainable.
I was just thinking the other day how happy I am that I retired and sold the store just before the Covid nonsense began. There's no way I could conduct that business with everyone wearing masks, just no way.
If the work project is database intensive I tend to do as much code as I can in either PLSQL or TSQL to better integrate the database engine’s optimization for caching query results. I like that style of design also for cross platform (I.e. fat client app and web app calling the same back-end DB code to generate the same results for both apps).
RE: Wait, where’s Ada?!
I used to program in that language working with a defense contraactor in the 1990’s.
Ada is a mostly-dead programming language that lives on in legacy systems. The language aimed to replace the hundreds of languages used by the US Department of Defence.
Ada, though complex and ambitious, is still used for some critical systems, alongside a minority of projects or functions.
RE: I’ll guess that you had a problem with Fortran?
Not at all. I used to program in it on the SUN Microsystem Computers in the early 1990’s.
Many will be surprised, but Fortran is the oldest commercial programming language, designed at IBM in the 1950s. And even though, for years, programmers have been predicting its demise, 64 years later it’s still kicking, with users including top scientists from NASA and the Department of Energy using it on the world’s most powerful supercomputers.
Ondřej Certik, a scientist at the US Department of Energy’s Los Alamos National Laboratory (LANL), is on a mission to resurrect Fortran via two key projects.
LANL was key to the US’s World War 2-era Manhattan Project to develop the first atomic bombs, and is also home to the Cray XC40-based Trinity, the world’s 13th fastest supercomputer.
Many of Certik’s projects are written largely in Fortran and he’s trying to make Fortran more appealing to developers.
I definitely agree. It’s been years since I have used it professionally, but last year I wrote a few utilities to transform some trading data feeds - massive amount of ticks and speed was required. Visual Studio still supports C++. Visual Studio is feature rich.
What? No LISP?
What’s a S0C4?
To keep your feet warm.
Learned to program in Fortran IV, BASIC, and Algol. Taught COBOL, so I guess I programmed in it, and much later had to teach JAVA to teach AP Computer Science. Some how, skipped C and C++, and Python, although we used Ada to program some defense dept ground systems. Note, that I was an engineer, not a programmer.
You had to hurt my brain, didn’t you? It’s either my index wasn’t initialized correctly or the end on my loop went too far.
who really cares what programming language is being used? The interesting part is solving the business/science problem at hand.
- - - - - - -
You describe the issue well. I will say it in a different way. What is harder, solving the shortest path problem, or looking up how to translate the program to a language?
Fortran is what I first learned on mainframes then Basic on desktops. Engineering process and sometimes capital cost modeling.
I never learned any of the languages mentioned in the top post. I imagine some of them were the code used in some or all of the commercial software I used over the years.
This should horrify the processional programmers and definitely prove I'm not in their league. LOL! A number of times from the late 1980s thru the 2000s, I used a spreadsheet as the backbone to create process models. Originally I used the QuatroPro spreadsheet and later Excel after it matured.
I used the leftmost columns for input into and output from calculation cells on the same row. Think of these as subroutines exchanging data in and out. I could functionally set up do loops and used Boolean functions heavily. One simple thing to make this work is to turn off automatic recalculation. It drives you nuts with error codes when creating this variety of model.
Depending on how complex the scenario, the shortest one took about 3 weeks from concept to validated, polished product ready for prime time. The longest took me 7 months because of the huge amount of plant data I had to manage plus the results had to be summarized into a detailed format for use by plant engineers and a bottom line summary used by management and regulators.
Tabs changed the game with spreadsheets. This is what dropped Lotus 123 out of the spreadsheet market, they were late to the game.
I had Crawley (Author) as a prof for cp 1. That class was a pain the ass. The compiler on the mainframe was WATFOUR, but the book was written for FORTRAN-66. The computer was an old Sperry running VS-9, and it ran an emulator for IBM 360/370. I think the WATFOUR compiler ran on the emulator, since in a later class we had projects that were coded in WATFOUR with calls to 370 subroutines/functions. To make things even more fun, we had to use deckwriters, at least it wasn’t punch cards.
You Pascal guys had it easier after colleges switched to Pascal. If I recall correctly, they switched over from FORTRAN to Pascal, compiled on Apple IIe’s at my school. They didn’t have all the middle of the night waiting for some mainframe time … wonderful memories coming back now. The computer center was a great place to pick up girls late at night.
Bookmark
How does one graduate from knowing the basic features of c++ but still to developing real applications outside of the doggone console window? I'd like to program a "roguelike" with simple tile graphics. I guess I need a game engine? What is the best way?
Wait. Did something happen to Z8000 Assembler?
I only know: Jibberish : )
No one has mentioned WATFIV...
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.