What Lanaguages are still relevant?
-
Most of our stuff is C++, C#, VB.Net or Delphi that our Dev Ops team does. They get told all the time that Delphi is obsolete and too old to be using, Is it really?
-
Those are all still relevant, except Delphi pretty much is on the way out and has been for years. Keep in mind though, when a language becomes obsolete, it tends to mean that if you're starting a new project you shouldn't use it, but usually for years you can find employment maintaining or converting old projects. You can still find COBOL jobs, but I don't know of anyone who would say you should start a new project with it, because it's so obsolete.
I personally like to think VB.NET is obsolete, it obviously is not, but I think people should focus more on C# because it has a syntax with some transferrable skill built in, i.e. it's easier to go from C# to C++, Java, PHP, Perl, JavaScript, etc than it is to go from VB.NET to basically anything which isn't based upon BASIC, which is very few things.
So this rings true with Delphi, while you're basically using a fancy version of Visual Pascal, that too really isn't transferable, though maybe some old Object Pascal jobs are still out there some place.
But, does that mean it's too old to be using? Only if it's for starting a new project, because you're simply creating something with a higher maintenance cost later on due to fewer professionals with knowledge of it. Whether or not a language is good has no barring on whether it's obsolete. You should pick languages based upon issues like: platform(s) it may run on, typical use cases for the language, and future maintenance of it, as in I wouldn't suggest starting any Perl projects either.
Unless you have a cost/benefit reason to do so, porting your project to another language is usually a bad idea, not a good one, and you can still find actively maintained Delphi (or open source alternatives of it) IDEs and compilers. Once you can't find any of those any more, it may be worth officially calling it dead and porting things.
-
I'd say that for the most part the older languages don't have the tools that make programming quicker and easier today. Quick, horrible, example. In Flash you can write the code to play a movie or sound file in less than 200 characters while Delphi/Pascal you'd have to go direct to the hardware.
Also, friends don't let a friend use Flash!
-
I agree that new projects on Delphi are a bit ridiculous. It's nothing against Delphi itself and there isn't, generally, a need to change old projects. But if you are starting something new and decide to use Delphi, I think that you need to have a pretty good bit of logic there. Delphi resources are hard to find today and will be effectively impossible tomorrow. No one even knows what it is anymore. Don't use dead languages, no matter how nice they are. You need to be able to hire people to support them down the road.
-
@Jason said:
Most of our stuff is C++, C#, VB.Net or Delphi that our Dev Ops team does.
C++ and C# are just fine, although why C++ and not C? VB, same as with Delphi, okay for legacy support but don't start anything new with it. VB people are getting harder and harder to find and those that you do find are less and less the people that you want to be hiring and will be far sooner than C++ and C# able to demand anything that they want because no one else will touch the code.
-
I love microsoft technologies so i prefer F# or C# which are still relevant in IT Industry
-
@gdrealspace said in What Lanaguages are still relevant?:
I love microsoft technologies so i prefer F# or C# which are still relevant in IT Industry
I prefer F# insofar that I think that it is awesome. But I loathe myself for not being able to use it
-
I'm going to vote that Delphi, while not bad per se, is not a good idea to use for new projects.
-
I have a number of relatively simple web database applications written in classic ASP that I want to re-write this year. Should I learn C# or JavaScript to do this?
-
@Carnival-Boy said in What Lanaguages are still relevant?:
I have a number of relatively simple web database applications written in classic ASP that I want to re-write this year. Should I learn C# or JavaScript to do this?
It's not that simple, however both are perfectly fine options. C# is powerful, flexible, well supported, commonly known (you can get others to support it for you) and not going anywhere for a long time. Microsoft is more focused on C# than any other language and has been for a very long time and it has no competitor but F# (which is never going to eclipse it.)
JavaScript is the hot new kid on the block and has the momentum and really simple toolsets to make doing this kind of stuff really easy. However most development using JS focuses on NoSQL, not traditional databases. C#'s community focuses the other way. But these are just trends, both do both just fine.
The huge advantage to JS is that it is going to be naturally cross platform and totally agnostic. Write anywhere, run anywhere. Really easy to host on Windows, even easier to host on Linux, trivial to move up to a PaaS platform like Heroku, Elastic Beanstalk or OpenShift. That's really important. Likely you can even run on a free tier. C# rarely gets those options as it costs a lot to run Windows for C# to run on. It locks you in and increases costs not just today, but for forever.
Microsoft says that they are committed to getting .NET onto Linux which will help a lot. But they have a long long road to get there for the full platform. So if you write carefully to Linux today, it will work. If you don't, it likely won't.
-
Doing "by convention" work, JavaScript will likely be easier and will definitely be far faster and more flexible.
-
As a VB programmer, would I find the learning curve less steep for either?
-
@Carnival-Boy said in What Lanaguages are still relevant?:
As a VB programmer, would I find the learning curve less steep for either?
If VB = VB.NET using Visual Studio tools, then definitely C# will be the softer learning curve. Very little to learn, in fact. Mostly syntax. Same libraries, same performance, same tool sets.
If VB = VBA or VBScript, then C# holds no learning advantages and they are probably about equal.
-
And in case I made it sound otherwise, you can certainly use MS coding tools for JavaScript. Both Visual Studio and Microsoft's new free VS tool will do JavaScript just fine and, in fact, their newest coding tool is written in JavaScript itself!
-
@scottalanmiller said in What Lanaguages are still relevant?:
Microsoft's new free VS tool
What's that?
-
@Carnival-Boy said in What Lanaguages are still relevant?:
@scottalanmiller said in What Lanaguages are still relevant?:
Microsoft's new free VS tool
What's that?
Visual Studio Code. It is written in JavaScript and uses the Electron library so is basically an extension of the Atom code editor from Git Hub. It's not just JS, Node and Electron, but it is fully open source as well. It's a nice tool and it runs flawlessly on Linux desktops, too. Absolutely zero Windows or even .NET dependencies. Doesn't do nearly what VS Standard does, but it is a good tool and really good for JavaScript / Node development for sure. MS is really embracing JavaScript on the server.
-
I do not use VS Code, but I have it installed to play with on Linux Mint. For me, Atom, which Code is based on, makes more sense and I use it all of the time. Atom does pretty much any language that you want and is older (so I was using it long before Code came about) and has gobs of resources. I come from a background of just using vi for everything, so Atom is a pretty big leap forward.