47 ms·
Ask HN: What “old” programming languages will you still be using in 2017?
And what is the purpose?
I'm still using bash, awk, and a bit of FORTRAN for scientific computing.
- grimmdude 10y agoI'll be using good old PHP
- miguelrochefort 10y agoProlog is an old language from the future.
- paulrpotts 10y agoLots and lots of C. (I'm mostly an embedded C programmer these days). Some C++ for a bit of higher-level "business logic" that benefits from a class-based approach, but a fairly limited subset of "modern" C++.
- greenyoda 10y agoLots and lots of C for me too. A huge pile of legacy business software which is still being extended to do new stuff.
- sdegutis 10y agoMy only real gripe with C is that you have to write your own functions/macros (or use someone else's) to make dealing with strings intuitive. The stdlib is perfectly fine from an algorithmic standpoint, but I always have to look up every string function's manpage, every single time I use them.
- yawaramin 10y agoCheck out https://github.com/antirez/sds https://github.com/antirez/sds
- randomthrowr88 10y agoSerious question: How does one get into this C embedded stuff? I'm addicted to low-level "embedded" type work. But all I hear back from are Django, RoR, $HOT_JS_FRAMEWORK, DevOps teams/recruiters. Is there some buzzword or special topic to know and do a project in? Any suggestions for projects to display on GitHub, topics to know through and through (domain specific knowledge)? I sit at work thinking all day about RasbPi sensor projects sitting on my workbench collecting dust due to job+young kids.
- alfalfasprout 10y agoLook by industry. In the financial sector, knowing VHDL/Verilog is becoming popular (given the rise of FGPAs everwhere). In sectors like robots, defense, aerospace, etc. you'll find a lot of traditional embedded roles. These aren't "sexy" areas so don't expect to get recruited. Like, mainframe programmers, these positions are in demand but just aren't widely advertised at all.
- ereyes01 10y agoSearch for companies that need to design sophisticated hardware at very low cost. This pretty much guarantees they need to hack microcontrollers, which are usually programmed in C. One I've worked with in my past life as an embedded developer is TI MSP430 (costs pennies), but there's many others. Another route to code in C close to the hardware is to find work writing Linux kernel device drivers. Of course, you have to know the Linux kernel fairly well in addition to being a good C programmer to land that sort of job. Companies that need this skill include server manufacturers that design their own network interfaces and such, and perhaps phone manufacturers, or companies that design their own SoC's (Qualcomm, TI, etc). Maybe some IoT startups need this skill as well. Yet another way to code in C is to work in a place that needs to program DSPs. Usually, this also requires knowledge in video/audio engineering. Companies that need this skill design and sell devices that do some sort of video / audio encoding (like video conferencing devices, etc). I'm sure there's many others I'm not thinking of. I hope this helps...
- ryandrake 10y ago+1 for device driver writing. That's how I got my start over a decade ago.
- sdegutis 10y agoPlus if you don't need inheritance, you can just use pointers to structs and pass them to functions. And if you need simple polymorphism in some small places, you can use tagged unions.
- jdmichal 10y agoThis viewpoint is exactly why I like Rust. It has syntactic sugar to make things look like traditional objects, but everything is really a bundle of data with a set of associated static functions. (v-tables only appear with trait objects AFAIK, which are uncommon compared to templates.) And tagged unions are built in, with pattern-matching!
- Meegul 10y agoActual question from a software engineering newcomer: What would you consider "business logic" and where would said programs be running?
- paulrpotts 10y agoWell, I was using the term a little sarcastically since it is (I think) usually applied to multi-tier web service architectures. In my case I have an embedded system with a touch screen display, running a bunch of tasks to drive peripherals. There is a task that handles communication with the touch screen (serial). Then there is a set of slow tasks that handles states and modes, for example the runtime representation of a modulator or an RF amplifier. This got extended because we are adding "remote control" support over RS-232 and USB and so this runtime representation has to support more of a multiple model-view-controller. This can be done with queues and a lot of functions but it was simpler to represent it as a tree of stateful values that can be updated via remote commands or via the touch screen and have "downstream" updates. So that's what I mean by the "business logic" -- higher-level than, say, a driver and task for talking to a digital potentiometer or a DAC.
- raverbashing 10y agoC++ has this weird evolution curve where as you start using features things improve up to a point then go downhill, but then go uphill again with new modern features If you limit yourself to using the STL with C++11 stuff but don't go crazy with inheritance and templating in your classes it can be nice
- CoolGuySteve 10y agoComing from the HFT side, I find C++ surpasses C in a lot of ways for optimization work. Mainly you can use integer template arguments and generic functions to abstract all the boilerplate in a way that is more safe than C macros. For a semi-contrived example, instead of writing a do4Things() and do8Things() to unwind some loops, I can write template<int> doThings() where the int argument is the bound on the loop. And having things like a universal template<typename Whatever> toString() that operates on enum classes is nice. The downside is that it's horribly easy to invoke allocations and copy constructors by forgetting an ampersand somewhere, and the std library isn't well suited to avoiding that behavior either. You have to be vigilant on your timings and occasionally callgrind the whole thing. The other downside is that your colleagues are more likely to "knit a castle" with ridiculous class hierarchies or over-generalization. ( https://www.infoq.com/presentations/Simple-Made-Easy https://www.infoq.com/presentations/Simple-Made-Easy )
- alfalfasprout 10y agoYeah, the nice thing about C++ is that you can generally hide highly optimized portions of code behind nice templates or class interfaces. And with templates you can write libraries that let a lot of compile time logic happen to inline a bunch of stuff and not have to resort to virtual methods. But when it comes to using things like custom allocators, etc. it's a nightmare. Or a lot of the compile time "traits".
- majewsky 10y agoI have a friend who makes a living writing CUDA kernels as C++ templates. His job will be safe for decades to come because noone will be able to decipher the code. :)
- shanemhansen 10y agolisp: It excels in "key algorithmic techniques such as recursion and condescension". http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html http://james-iry.blogspot.com/2009/05/brief-incomplete-and-m...
- deleted 10y ago[deleted]
- nickpsecurity 10y agoAlmost didn't read it thinking someone was going Total, LISP Weenie in there. Glad I did: it's a parody of a bunch of languages with some great laughs. Can't even pick a favorite haha. Thanks.
- anon1253 10y agoDepends on what you mean by "using". Writing it, probably not so much. But a lot of the numerical things I use are written in Fortran (e.g. BLAS, Atlas). A lot of games I play probably have some hand optimized Assembly. And pretty much everything I touch is in some way backed by C. For natural language processing I've recently (re)discovered how useful PROLOG can be in some cases, and I may touch on that this year.
- macintux 10y agoMy job is almost entirely Erlang, which is now 30 years old.
- throwaway7645 10y agoTelecom?
- Kiro 10y agoAmazon, Facebook, WhatsApp and a lot of companies use Erlang. It's not only used in telecom even though it was made by Ericsson. EDIT: Removed the "naive" part.
- throwaway7645 10y agoNot naive at all if you didn't know Amazon, Facebook, and WhatsApp use it? I know a lot of places are starting to use Elixir which runs on the Beam VM. I still think its a safe assumption to ask (why I put a ?).
- Insanity 10y agoI guess Whatsapp's purpose is similar to that of telecom though, but that is my naive interpretation of what is done in whatsapp and telecom using Erlang.
- macintux 10y agoI work on Riak, a distributed database by Basho.
- ptaipale 10y ago- sh (I really don't use bash features in scripting) - awk - perl - sed, if that counts as language. It's funny that a course that I took in university almost 29 years ago, for learning the use of Unix scripting tools, is one of the most useful learning experiences in my daily work today - even if my job is not really a programmer. But very often I see colleagues (project managers, architects etc) struggle with processing information in ways that involve a lot of repetition and manularity. Scripting solves those things. (For some things also Excel and VB perhaps counts as an "old" programming language; it is also often quite useful. And I probably will end up doing something in C again this year.)
- shanemhansen 10y agoAs always there's a relevant xkcd. https://xkcd.com/519/ https://xkcd.com/519/
- chubot 10y agoToo true. When I was 13 or so, I read the DOS 5.0 manual from cover to cover. If I recall, a lot of it was about batch files (autoexec.bat and stuff). Batch was really my first "programming" experience. Then when I was 22, after a good computer science education, my first job was working at EA, and the build system involved a bunch of batch files. That knowledge from nearly a decade before came in handy! The CS stuff didn't come up until later.
- libraryatnight 10y agoI studied English lol. My whole career is based on my weekends. My education helps me write eloquent email responses, though.
- Insanity 10y agoEloquent email responsed are not to be underestimated, being able to communicate in clear language is a valuable skill.
- noonespecial 10y agoPascal/Delphi Before there was an internet of lightbulbs and smoke detectors, there was an internet of industrial process things. And they used windows 2000 and Delphi. They still do.
- PeCaN 10y agoThere are still a bunch of modern Windows desktop applications written in Delphi and C++Builder – I work on one of them. ^_^ I really like Delphi actually. It's a shame Embarcadero doesn't really seem to care about it.
- dver 10y agoI spent time recently in the webcasts for the new version of Delphi, and from what I saw they're doing some good work. The mobile development for example is enticing. But, and I asked during the webcasts, who's going to buy into a new project now? For myself I have a couple of old D7 apps for clients that have been running for a decade now.
- noonespecial 10y agoProjects I know I'll need to heavily modify or work on for the foreseeable future, I bring forward into Lazarus. Lazarus has quite a bit of activity in its community.
- dejv 10y agoLazarus did huge improvements in last 5 years, just MacOS version needs more love. I keep spending tons of time fighting problems, even with mainstream libraries like sqlite. Still the best tool for multiplatform desktop apps development.
- pjmlp 10y agoDelphi and C++ Builder downfall sadly started when Borland went greedy and started to scare customers with their lack of business focus, specially the spin off.
- andyjohnson0 10y agoDepends what you mean by "old". I'm mainly using C# and that is (somewhat surprisingly) 17 years old [1]. I still think of it as a shiny new thing. [1] https://en.wikipedia.org/wiki/C_Sharp_(programming_language)#History https://en.wikipedia.org/wiki/C_Sharp_(programming_language)...
- lgessler 10y agoMUMPS. Despite its strong resemblance to compiler IR and lack of a type system, it is the standard DB in Health IT in America.
- kiernanmcgowan 10y agoI'm going to take a wild guess - EPIC?
- lgessler 10y agoHeh, of course the Madisonian would figure it out :)
- hobo_mark 10y agoOh my, just had memories of a much younger me reading these in horror back in the day: http://thedailywtf.com/articles/A_Case_of_the_MUMPS http://thedailywtf.com/articles/A_Case_of_the_MUMPS http://thedailywtf.com/articles/MUMPS-Madness http://thedailywtf.com/articles/MUMPS-Madness
- robteix 10y agoOMG the memories! I did work in MUMPS while I was in college in the early 90s. I had completely forgotten about this. Thanks for that :)
- paulrpotts 10y agoOddly enough I just got a recruiter spam message for a MUMPS developer position. I had never heard of it, but I thought to myself "why would I want to develop mumps???"
- swalsh 10y agoMUMPS get's a bad rep, it's kind of ugly, but has some awesome ideas built into it. I'm not convinced EPIC's success is despite the fact it uses MUMPS, I think it's a contributing factor.
- jsgrahamus2 10y ago
- nsxwolf 10y agoJava.
- tluyben2 10y agoC/C++/Java/C#/Assembly
- velebak 10y agojava and python
- devopsproject 10y agovb6 for a desktop application
- aloukissas 10y agoMost of my work is in C++, which is almost 35 years old. By far the best choice of language for cross-platform, client application development, especially C++11/C++14, which bring modern language features (e.g. lambdas, futures, etc) with all the original benefits of the language.
- tnecniv 10y agoI used to write in a pre-11 style. When I got my first job where everyone was using all the hot new features, my mind was blown and my life quality doubled.
- alfalfasprout 10y agoHands down the best thing about C++ for me is that with modern C++ you can write relatively safe clean code while taking advantage of decades of robust libraries. Yeah, Rust is a big step forward in some respects, but it'll be almost a decade before we see it catch up to C++'s incredible ecosystem. C++ is almost the lingua franca of finance, for instance.
- computerphage 10y agoRust can already take advantage of the C ecosystem quite easily. Rust/C++ usability is a major goal for 2017. I'm hoping that by year end you can have the best of both worlds. The advantages of Rust for new code and the mountain of code that exists for C and for C++.
- alfalfasprout 10y agoWell, the C ecosystem has always been easy. The nice thing about C is that generating bindings is a breeze. I've never been a fan of bindings to C++ libraries. They usually always feel cumbersome and hardly idiomatic. Like it or not, the best way forward is to bite the bullet and slowly natively reimplement the libraries we need in Rust. I'm starting some work next year on writing some of the basic libraries that someone in the electronic trading world might want to start writing applications in Rust (a FIX/FAST engine and a port of the Aeron message transport). I'm already also writing a native Rust port of our internal consolidated market data library. We already have a Go port along with the C++ code and plan on open sourcing these pretty soon. This stuff tends to be highly proprietary and slow to develop so hopefully we can get some of the more cutting edge users to pitch in and get more people using the language.
- gigonaut 10y agoHaskell for an assorted collection of command line tools.
- cle 10y agoPerl is one of those languages that nobody likes at my work, but that is impossible to get rid of. Java is in the same boat, but at least it's still marketable so engineers don't mind working with it as much.
- myblake 10y agoI once worked at a place that basically just used perl server side. In this decade (2010s). The codebase was just one tangled mess. They told a story of a guy who failed the cultural interview because he told a VP "you can't write a large web app in perl", and of course they had done just that. With the reflection of hind sight I think despite the obvious empirical counter factual, he was on to something. It really was an uphill battle against the language to do things large scale.
- moxious 10y agoIt's not impossible, it's a cultural mismatch. Perl is obscenely permissive, which makes it a really interesting and weird language. But when you work in a big team and make something complex, you want something that's consistent. All of that permissiveness and flexibility bites you. Now, with good styling guides and linting, you can make it work for complex software with a big team, but that's culturally pretty anti-perl. We're trying to do that with Javascript now, which isn't as weird as perl, but has many of the same excesses that you want to reign in with a style guide.
- achileas 10y agoIn my company we primarily use Perl, but it's just on my team for our ETL pipeline. It works really well, especially since we modernized our older code and enforced really tight code standards. To use Perl end to end, well, there are modules for that (such as Dancer), but I can't comment on them because I've never had to use them.
- CodeWriter23 10y agoI recommend Dancer, actually Dancer2 now. So easy to write web apps. Maintainable ones too! Most of the basics of app security are covered within the framework. And where there are gaps (like CSRF tokens), it's trivial to add primitives via DSL.
- j45 10y ago- Javascript (199x) - Ruby (199x) - Python (199x)
- sdegutis 10y agoWriting a brand new Mac app for myself, using Objective-C instead of Swift. So far it's a breeze. Yes I used Swift for a while, and it sure feels all academic and all, but meh, ObjC gets the job done just fine for me.
- pohl 10y agoObjective C will always have room in my heart, but I'll never go back to it. There's too much .h ceremony.
- sdegutis 10y agoMeh, I've spent about 20 hours on this project so far, and I'd estimate probably 2 minutes of that time was spent managing .h files.
- yoz-y 10y agoDo you have any concerns about maintainability? So far Apple has been advancing Obj-C interfaces along with Swift, but time will probably come when some new OS features will only be available through Swift.
- sdegutis 10y agoNope. See gurkendoktor's reply to me above. I agree with his/her reasoning.
- gurkendoktor 10y agoI actually enjoy having separate files for interface and implementation. It's a pain in C++ where you have to put your implementation details (instance variables) in the header, but in ObjC, headers are pretty clean. I've noticed that my Java-based coworkers often create well-documented interfaces with only a single implementation. They claim to do it for testability, but Mockito can deal with concrete classes as well - I suspect that they secretly enjoy looking at 10 lines of code that describe what a class does :)
- 10y ago
- ww520 10y agoSQL, sh, awk, and javascript (cscript).
- omnibrain 10y agoDelphi I'm in the process of "inheriting" a company whose sole product is a multi million LOC behemoth written in Delphi. The product itself is a highly customizeble/parametrizeable control software for business processes/alarm management build around a rule engine for rules drawn in a graphic editor.
- krylon 10y agoI inherited a Delphi program written in-house for our accounting department. Thankfully it's only about 10,000 lines of codes, and the code is quite readable. But I still have to explain to our accountants how little I know about accounting (it has something to do with money, right?). On the plus side, Delphi is quite easy to read. I got started with no prior knowledge in Delphi or Pascal, and I was able to roughly understand significant parts of the application within a few days.
- nickpsecurity 10y agoReminds me of Gensym G2 back when I studied expert systems.
- irrational 10y agoI don't know if 21 years counts as old (I didn't feel especially old when I was 21), but the first thing that comes to mind is JavaScript.
- swalsh 10y agoOpen the flood gates allowing other languages in browsers... then let's see how well it does.
- hota_mazi 10y ago6502 assembly. I just enjoy cracking old Apple ][ games in my spare time, it's an incredibly rewarding challenge.
- mikelevins 10y agoLisp. For all purposes. It conquered my brain in 1988 and ever since then it's the first thing I turn to whenever it's an option. My favorite Lisp ever was Ralph. My favorite nowadays is Common Lisp. Generally speaking, I like any Lisp better than anything else, but I prefer those that preserve the whole interactive programming-as-teaching culture in all its glory. Python for when someone needs me to work on Django, and also for helping my younger daughter learn programming, because it's a pretty accessible place to start. C when I need to be that close to the machine and there's some reason not to use Lisp.
- AlphaGeekZulu 10y agoLiveCode.
- hugs 10y agoG-code (for 3D printing and milling). It's about as old (within a few years) as COBOL and Fortran.
- mfrager 10y agoPerl. A language that is still ahead of its time. I have a system for building RPMs of CPAN modules and their dependencies automatically.
- krylon 10y agoI have written a number of CGI scripts (in Perl, of course) at work, and my relationship with it oscillates back and forth between love and hate. I would like to replace it very much, because I don't like Perl 5's type system very much (and something like Moose is overkill, IMHO, for a 500-line-script). But it's just so damn useful, and most of the time I can get something to work faster than with Python or Go. So I might not love Perl, but you could say I respect it very much.
- dice 10y ago>I have a system for building RPMs of CPAN modules and their dependencies automatically. I would be interested in this: is it open source?
- stevekemp 10y agoIt shouldn't be too hard to write that, I know on Debian systems it is trivially easy to package CPAN modules as Debian packages, via dh-make-perl.
- zwetan 10y agoActionScript 3 purpose: sysadmin, automation, server-side programming, daemon, shell / interactive shell, command-line tools etc. well ... it's not that old (cerca 2006) but it is considered dead LOL
- cthulhuology 10y agoI've been falling back in love with Forth, and specifically SwiftForth https://www.forth.com/swiftforth/ https://www.forth.com/swiftforth/ the full source code to everything comes with the paid version, and you can literally change everything. So much saner and cleaner in implementation than shitstorms like Go, GCC, LLVM, and Java.
- vram22 10y agoWhat do you use it for? I had tried it some years ago during a vacation, and liked it. Not used it for any production thing.
- reikonomusha 10y agoMany folks have said it here but I'll say it again: Common Lisp. I have been using it professionally for 5+ years as a full-time employee at various companies. Some big-name ones, some smaller start-up ones. The mean Lisp team size has been around 4, but I did work on a project of 15 Lisp programmers. None of these projects were legacy code. Some were in places you wouldn't expect (embedded, multi-processor systems on custom-designed boards, for example). In every single case, we had no additional trouble hiring a Lisp or Lisp-capable programmer as compared to hiring for any other language, including Python. (In fact, Python was more difficult to hire for because the market is saturated with beginners who claim expertise.) Lisp is one of those languages where the ratio of long-term benefits and productivity vs. good initial impressions is at a record high. It doesn't look like C or Python or JS, with all the parentheses, so people brush it off. Lisp isn't the pinnacle of every great idea to come about in computer science and software engineering, but it is one of the most robust, macroscopically well designed, and most productive languages for translating arbitrary abstract ideas into maintainable, production code. Even if it doesn't look initially very pretty in the eyes of a career Python programmer.
- BeetleB 10y ago>In every single case, we had no additional trouble hiring a Lisp or Lisp-capable programmer as compared to hiring for any other language, including Python Doesn't that imply an over-supply? I did my grad research on a highly specialized topic, involving plenty of math/physics. Then I worked in industry applying my skills for 4 years. Then I switched to programming - nothing related to my engineering degrees. This job requires only a BS (and not really that - one of my coworkers has no degree). The highly specialized job was the one where I had little leverage, lower pay, and a miserable experience. Why? Fewer jobs than supply. Whereas for programming, the supply is much larger than for the specialized work, but the demand is even larger than the supply. The geek in me yearns for a job where I can go back to numerical algorithms and physics. But frankly, those jobs tend to suck when you don't have much leverage.
- ska 10y agoIf you have become a truly skilled industrial programmer, you can very easily go back. There are a lots of interesting scientific programming jobs, but your typical Ph.D or post-doc is only half trained for them, at best. There are fewer pure research positions, and unless you are very good there is a leverage problem there because every year dozens of new grads come looking for essentially that job. Something to bear in mind if your desire is primarily to work in matlab/python/R on things that look a bit like your thesis did.
- bbarn 10y ago"classic" asp. Still have some crappy legacy pdf generation code no one is willing to invest the time to rewrite into here. Fortunately that's all of an update a year or so.
- oxguy3 10y agoDepends on your definition of "old" -- I'm using Bash, PHP, HTML, and JavaScript at work, which are all over 21 years old, but they don't really feel that old (even PHP feels new and shiny thanks to the lovely Symfony framework).
- tudorw 10y agogot some love for Symfony for sure
- Gracana 10y agoIEC61131-3 family.. very widely used stuff, but definitely feels clunky and old. It's not even fun-retro-old, it's just old-old. https://en.wikipedia.org/wiki/IEC_61131-3 https://en.wikipedia.org/wiki/IEC_61131-3
- snowwindwaves 10y agoI have no complaints with these languages. I have only seen them used to program PLCs to control machines and processes, and the simplicity of the languages keeps programs simple and straightforward too. What features are missing that you think belong in process control?
- Gracana 10y agoThe languages aren't so bad, but the ecosystem is rough. On the PLC vendor side, implementations vary widely and they're all proprietary, so for a given controller... what they give you is all you get. On the programmer side, skills vary widely and ladder logic is the common denominator, so a lot more is written in ladder logic than is appropriate. For instance... Complex sequential logic (like a machine with many adjustable operations, all controlled by an HMI) is difficult to convey clearly in a ladder logic program. It can be done... but all I have ever encountered is lots and lots of spaghetti logic. I wish I could use sequential function charts to handle some of the complexity in the machines I work on, but the PLC models we use don't even support them. Argh.
- jasonm23 10y agoLisp, C, .... Not Fortran though
- angry_shitlord 10y agoThey all are "old". If it's new it's probably some wired buggy and failing combination of C Lisp and Forth.
- sidlls 10y agoI don't think either Go or Rust qualify as "buggy" or "failing." They aren't "old" in my view. And I find Rust more interesting than C or C++ these days. Although C++17 looks nice.
- dsp1234 10y agoActive Server Pages (aka classic asp) VBScript JScript
- gscott 10y agoEveryone complains about Asp Classic but as long as I am working on my own code it all works great. I write everything in asp classic about to re-launch a modernized version of my groupware system with a re-design of the display but all of the page logic is all the same.
- tbirrell 10y agouses PHP and JS Those aren't old enough to count, I guess googles age of PHP Holy crap! PHP is almost 23 years old. Probably still not considered "old" though...
- mc42 10y agoJS is actually 21 now. According to wiki, it was developed under codename "Mocha" and shipped with Netscape Navigator 2.0. [1] "May 23, 1995" Personally, I'm pretty sure the version of "JS" when it was first released and more modern JS share very little other than logic and symbology, I think that can be said for many programming languages. [1] - https://en.wikipedia.org/wiki/JavaScript https://en.wikipedia.org/wiki/JavaScript
- disordinary 10y agoI have a feeling that by "old" the topic creator actually meant less relevant than it once was. Both languages are still very relevant and therefore out of the running. PHP may be waning but it still powers a huge chunk of the internet, just think about all those wordpress blogs.
- mgkimsal 10y agosome of the biggest advancements in PHP recently have come from folks who were not born when PHP was initially created...
- velebak 10y agoJava and Python
- sidlls 10y agoFor my day job, Python (it's 25, that's old) mostly. Primarily as the machine learning platform (all of it, from models to infrastructure) for the products my team develops for the company. For my spare time work mostly Fortran, C and C++ qualify as old languages I'll be using. These I use to dabble in research (physics) more for fun than anything else.
- hprotagonist 10y agoI do scientific computing in academia. Secretly, it's just fortran all the way down, and LaTeX for document preparation. Piled on top of that is a fair amount of matlab, simulink, and python.
- alfalfasprout 10y agoYou know, modern Fortran isn't awful. Fortran 77 code however, is frighteningly ugly to look at.
- chestervonwinch 10y agoIMO, it's more than not awful, it's great! I wish I had picked it up sooner as a mid-level language for mathematical and scientific computing (over C++). Additionally, you can connect Fortran to Python dead simple with `f2py`.
- hprotagonist 10y agoIt's too bad some people don't know about it and just copy/paste blindly. It took me about a week to find out that the author of a model i worked on didn't know about `from copy import copy`, which explains a great deal about why their ODE solver wasn't working.
- m_mueller 10y agoIMO the ongoing trend of moving everything academic to C++ is just awful. I still don't get why everything thinks a language-to-rule-them-all is what should be used by default, especially in the age of LLVM. IMO Alan Kay and his research group has always had exactly the right ideas in this regard. I think iPython/Jupyter + Numpy + some kind of JITed Fortran 2008 environment with accelerator support would be a nearly ideal scientific computing environment. Basically a free, open source and blazingly fast (HPC ready) version of Matlab.
- hprotagonist 10y agothis is how my field is going. (biomedical/neurosci). Of course, since numpy is effectively a nice shell on top of linpack, my original assertion still holds.
- anujdeshpande 10y agoC
- arc_of_descent 10y ago- Perl - HTML (old?)
- PeCaN 10y agoC++98 with a few C++11 features for work (our compiler is not really C++11 compliant at all, but it does have move semantics). Ada for fun, though I'd say Ada 2012 is a bit like C++11 in terms of “basically a new language”. People do seem to have a perception of Ada as ‘old’, though I'm not sure why (it is, by my account, more ‘modern’ than, say, Go – actually, it's not unlike Go with a nice generics system).
- michel-slm 10y agoI did Ada 95 back in college. Was really nice for embedded programming -- the built-in concurrency primitives are astounding, and it feels like a much safer systems programming language than C/C++
- paulrpotts 10y agoGood for you -- I am not a fan of most of the latest C++ features; it feels again like a crazy research project. Although I _am_ excited about uniform initialization (finally), despite that fact that there are slight syntax and parsing confusion issues that arise from backward compatibility (as always, in C++).
- Norfair 10y agoHaskell
- tscs37 10y agoLisp. That's the only old language I use.
- cmyr 10y agoMake.
- petre 10y agoPerl. MVC web app and TCP server stack for IoT devices, task queue, job scheduler and associated scripts.
- ryannevius 10y ago- bash - Python (esp. Django, which is for some reason uncool) I also have this weird desire to jump back into C, just to refresh myself.
- pknerd 10y agoI want to use Pascal. It was awesome to work on Turbo Pascal while I was a student in 90s.
- krylon 10y agohttp://freepascal.org/ http://freepascal.org/ is a thing. Also, there is Lazarus which seems to be the FreePascal-alternative to Delphi. I took a look at it when inheriting a Delphi application at work, but it crashed on me a lot. Still, it's there.
- dmux 10y agoCheck out http://nim-lang.org http://nim-lang.org. It steals some of Pascal's good ideas.
- amorphid 10y agoI spent Xmas break learning exactly how much I could do with Bash! There's no escaping an OS-solution to OS-problem when app-in-language-of-choice doesn't have a standard library call for an OS-need. I may be learning AWK or C in the near future.
- mangamadaiyan 10y agoC. C++. Python. sh. Awk.
- leommoore 10y agoI'm still using VB6 which was released in mid 1998 (19 years old in 2017)
- phyushin 10y agoMe too xD
- c17r 10y agoMe three!
- WorldMaker 10y agoI'm modernizing a VB6 app and still get to read through a bunch of it to get things done. Luckily for the moment we've managed to hold off on needing to release new bug fixes/features for the VB6 code.
- lb1lf 10y agoSiemens Step5 (for maintaining an installed base of S5 PLCs - the most indestructible piece of computing hardware ever designed, IMHO.) Also, some work in MPASM (Assembly for the Microchip PIC series of microcontrollers - same reason) Edit: I am not sure just when S5 got introduced, but I've got installation media - on 5.25" floppies - for CP/M in my office. Made in West Germany. That old. Luckily, the IDE has also been ported to more contemporary operating systems.
- nibbler_death 10y agoFortran and Holy C.
- ck__ 10y agovba/excel/sql for reporting automation.
- dbdoug 10y agoVBA/MS Access - active databases for several clients.
- dmcginty 10y agoI really want to write something in 6502 assembly this year. I've read tutorials and played with it, but I've never used it to build a non-trivial program. I've also been wanting to build a NES emulator in common lisp, and this would be the perfect opportunity to pair the two projects.
- paulrpotts 10y agoHave you seen the game called Human Resource Machine? This is not actually a joke comment -- it teaches assembly language programming. Not 6502 specifically, but the fake architecture looks a lot like 6502. You work up through a set of more and more challenging assignments until you have to write a sort. I really enjoyed it and would consider it a great introduction to basically any assembly language.
- crystalPalace 10y agoI had never heard of Human Resource Machine but that reminded me of TIS-1000 which I highly recommend.
- dmcginty 10y agoThanks for the recommendation; I just purchased it. As another commenter said, TIS-100 is also a great game about an assembly language for a fictional computer that I'd highly recommend. I had a lot of fun playing with MIPS assembly in college, and I'd really like to do it again.
- mfontani 10y agoPerl 5, of course! It's an awesome language and both the language and the ecosystem is getting better and better all the time
- throwaway7645 10y agoWhat do you do in Perl?
- mfontani 10y agoThe largest Perl project I work on is http://www.theregister.co.uk/ http://www.theregister.co.uk/ which is mainly Perl on the back-end :)
- IslaDeEncanta 10y agoI don't know about the original poster, but Perl is great for back end development, and there are wrappers for just about every GUI toolkit if you want to go that route.
- achileas 10y agoNot the OP, but in my company we use it for our ETL pipeline. I've grown to really enjoy it as a language.
- throwaway7645 10y agoI've used it here and there and don't think its near as bad as people say. Perl6 is a good design, but if the implementation doesn't get sped up, I don't see it taking off.
- krylon 10y agoI have written a number of Perl scripts (both CGI and batch) to make up for shortcomings in our ERP system, and to hook up our ERP system to our PDM and financial accounting systems. Also, I have written a couple of reporting scripts to watch over our Active Directory (look for computers that do not exist any more but still have their AD accounts, stuff like that). Oh yeah, and a couple of Nagios plugins, too. For these tasks, there are not many languages that can match Perl in versatility and productivity. It's not the prettiest language, but it's extremely useful.
- Mister_Snuggles 10y agoCOBOL, definitely COBOL
- nsphere 10y agoYeah me too. I can't wait to rewrite our code base in Java (not even being sarcastic), but at least we will be able to make our own objects and have recursion! Yay!
- Mister_Snuggles 10y agoLucky - you get to rewrite it. Our COBOL comes from a software vendor, so rewriting it means waiting for them to decide that the cost of redeveloping decades of complex business logic in a new language/toolset outweighs the cost of supporting and enhancing these COBOL programs. Fortunately it's a mostly read-only codebase. The number of times we've changed the COBOL code ourselves can probably be counted on one hand.
- kayla210 10y agoHaha, same. I may get to do some Java, but there's no telling.
- a2tech 10y agoHaha..beat this for esoteric: http://dshanestewart.blogspot.com/2012/11/cadol-blog-overview-and-history.html http://dshanestewart.blogspot.com/2012/11/cadol-blog-overvie...
- buckbova 10y agoLots and lots of SQL, which is now 40+ years old.
- krylon 10y agoI had not even thought of that. But yeah, if SQL counts, I'll probably be writing a couple of hundred lines of SQL in the coming year. It can be surprisingly fun to see if I can get something done in "pure" SQL without any procedural code. I feel a little sorry for the poor soul who may one day inherit that code, but on the other hand, at least I write comments to explain why I do things in a certain way, which is more than my predecessor did.
- keldaris 10y agoMostly, I'll be writing a lot of fairly old fashioned C++ (my current project is yet to use a single smart pointer or lambda, lots of templates though) for high performance numerical work. Also, I guess writing code in Python 2 is considered outdated nowadays, so that too. Plus the usual shell scripting (bash on Linux and simple batch files on Windows). I do hope to avoid writing any new Fortran this year, so there's that. Some of the less performance critical code will instead involve Julia, and I've been experimenting with D and Rust for fun. Not sure which category Java and C# fit in, but in all probability I'll also use those at some point. And finally, LaTeX. Very old and, unfortunately, indispensable.
- geebee 10y agoSQL. If I had to pick a language that I'll use my entire career that's the one. It has been overused and underused, but always relevant.
- cwbrandsma 10y agoI'll agree with you there. SQL is the one language that I hate, yet use constantly, and will certainly out-live me.
- weavie 10y agoI used to think I hated SQL until I decided I had had enough of it and I tried to do a project using a no-sql database. Suddenly everything became a lot harder and I was having to write massive amounts of code to do the things that could be done with a few lines of SQL. Even the simplest of tasks just sucked the life out of me. I soon ported the project over to use Postgres and decided that actually SQL is awesome.
- m_fayer 10y agoI know exactly what you mean. I've realised that when you're solving a hard problem (complex data logic, extreme performance requirements) with SQL, you end up systematically experimenting and thinking very deeply within a rigidly defined system. With no-sql databases, you're monkeying with obscure APIs that cover up obscure, idiosyncratic, and hard-to-reason about database engines, and patching strange behavior with rickety app-layer code. Both kinds of work are hard, but with SQL you can usually expect the problem to yield to intense engagement and produce a solution that's complete, robust, and satisfying.
- ytjohn 10y agoThen you learn about hstore and json store in postgresql and you realize it's the best of both worlds.
- shaftway 10y ago
- estrabd 10y agoPerl, sh, awk, sed, C, Fortran. There's a freedom in not chasing down all the shiny new things.
- throwaway7645 10y agoWhat do you do with that stack? I've used all of those at work as well, but the C/Fortran part is just debugging or pulling the logic for what the system is doing.
- qubex 10y agoC, LISP, Mathematica (?), ABAP
- 3n7r0pY 10y agoIBM's High-Level Assembler and JCL mostly. I develop mainframe software.
- Lord_DeathMatch 10y agoI recently had to put together a small program with JCL for work, and had real difficulty in finding documentation. Can you recommend anything?
- 3n7r0pY 10y agoMost of what I've learned has been from examples from co-workers, but I've also used the IBM knowledge center and the IBM "Redbooks". I think the Redbook titled z/OS Basics has some JCL examples and exercises in it. I also found this through a quick search: http://www.ibm.com/support/knowledgecenter/zosbasics/com.ibm.zos.zcourses/zcourses_jclintro.htm http://www.ibm.com/support/knowledgecenter/zosbasics/com.ibm...
- networked 10y agoTcl. It works really well as a cross-platform (*nix/Windows) alternative to shell scripting that doesn't suffer from the same problems as the POSIX shell (see http://www.dwheeler.com/essays/fixing-unix-linux-filenames.html http://www.dwheeler.com/essays/fixing-unix-linux-filenames.h...). It builds on the same foundation of everything being text but with a few changes to the substitution rules builds something a lot like a Lisp on top of it.
- disconnected 10y agoI found expect (which is Tcl + some extensions, I believe) to be quite useful. Implementing something like modem initialization - "Send AT command to modem/wait for a reply matching one of several patterns or a timeout/handle result/rinse, lather, repeat until done" - is quite trivial to do with expect. It's not something I use every day, but it's one of those useful things to keep in your mental toolbox.
- topranks 10y agoCame here to say this. Expect was and remains extremely powerful. I've been using it for 15 years to automate network configuration deployment. Now that automation is all the rage in the industry it gets dismissed, but I find it is often much better than some of the other tools available.
- netrap 10y agoDitto. It's original purpose as an embedded scripting language for C programs still stands.
- vram22 10y agoCan it integrate with Unix command-line filters and tools roughly as well as shell can? Interested.
- pwg 10y agoThat depends upon your definition of "integrate". It can read/write stdin/stdout (just as any scripting language can) so it can be used to write additional filters/tools that don't exist in the standard set that can then be used from shell as with any other tool. But if you mean using it to create a pipeline out of existing command line tools, then yes, but with a bit more boilerplate than plain shell needs. The built in "exec" command has an almost shell syntax for starting pipelines, and the "open" command supports the same syntax, so it is 98% "as well" in that regard. But to avoid getting stuck in a deadlock trying to write data to a pipeline that is returning filtered data to the script requires turning on Tcl's event driven file IO, which is where the extra boilerplate comes from.
- hboon 10y agoI'm using Pharo (Smalltalk) to build a web app.
- mordocai 10y agoCommon Lisp for all of my hobby programming. Edit: Well not all of it. I'm also learning rust and scheme in my free time.
- gkya 10y agoEmacs Lisp. I want to port all my remaining sh awk and perl stuff to it, and I'll havee some time to do that in the coming weeks. Also, m4. I use it together with awk and bmake for a couple websites. I plan to port awk scripts to sth. else though, I keep forgetting awk.
- josteink 10y agoEmacs lisp is just so immensely sticky... once you cross the initial "what's up with this crappy lisp?" threshold, and have a finger caught in its web, you suddenly just want to put your hands all in. And then find more hands to add to the pot. I expect it to stay around a good, decent while :)
- gkya 10y agoIt's such a nice UI paradigm married to a decent lisp (any lisp is better than no lisp :)). Once you get the actual hang of it you can't ever leave it. Just like real coffee vs. instant abominations.
- tonyarkles 10y agoAny recommendations for a good starter guide? I've done some lisp here and there, a bit of Clojure, and some other FP-style things (e.g. Elixir). I'm not scared by parens :). I'm just not sure where to start with elisp and getting into a good groove with it. Edit: also a long-term Emacs convert, just haven't written any of the elisp myself.
- gkya 10y agoI myself have discovered everything I know along the way, and have read no guides, so unfortunately don't know any of them. Tho C-h t is the unavoidable initiation to emacs the editor. Using tools lik Org mode, Rmail, Elfeed etc. gives you many opportunities to write some useful elisp, which is a pedagogical experience. Emacs is like the mildly beautiful geeky girl which you fall in love with: whenever she spots you inclined to some new cute girl, instead of going mad with you, reveals such a wonderful piece of her interior world that you just forget the other one :)
- Johnny_Brahms 10y agoI wrote scheme before it was cool (or at least something you sometimes read about on HN), and I will continue writing scheme when it stops being cool.
- intrasight 10y agoOld programming languages don't die, they just slowly fade away. The oldest thing I periodically touch is VBA for Excel
- krylon 10y agoFor some reason, VB is one of the few languages my brain refuses to learn. I can read it when it's not too badly written, but I am glad I don't need to write it.
- iagooar 10y agoRuby. I guess it's still "young" as compared to many in here, but still, it suprises me to be this "old".
- pythonlion 10y agoProgress Openedge. I have never seen anyone on HN mentions it. The codebase is from the 90'. before that, I have worked with a codebase from the 80s, 10 years older than me.
- raphar 10y agononsense ;) Look at my profile
- nocman 10y agoBelieve it or not, I actually deal with Progress too. I feel your pain. :-D
- vram22 10y agoHow do you find it? I had a colleague who had worked earlier in a company where they used it, IIRC as the language/4GL for work on MFG/PRO (a popular ERP package then). Think I remember him saying it was good (just Progress, it was called then).
- Skunkleton 10y agoITT: everyone realizes how old most widely deployed languages are.
- nhatbui 10y agoAs I read through this thread, I'm wondering what the "new" programming languages are and specifically, which are being used in production.
- krallja 10y agoSwift, Rust, and Go are the current mainstream "new" programming languages.
- tormeh 10y agoScala is only 12 years old. Go is 7 years old, for comparison.
- krallja 10y agoYep! F# is also 12 years old.
- disordinary 10y agoProbably add D and Elixer to that list.
- tormeh 10y agoLanguages generally take 10 years from someone starts working seriously on them until they are ready for wide adoption.
- IslaDeEncanta 10y agoPerl 5. Perl is awesome and versatile, and it's the fastest scripting language in common usage.
- throwaway7645 10y agoEver benchmark it against Lua? But yea a whole lot more people use Perl.
- krylon 10y agoLua feels awkward to me when used as a standalone scripting language. When embedded into a C host applications, it is really nice, though. There is also a port of Lua 5.2 to Go, which has a slighty confusing API (to me, at least), but the documentation makes up for that.
- etiene 10y agoI use Lua standalone and I gotta say I love it :)
- mmjaa 10y agoDitto. Its my favourite language. You can do all things with it.
- krylon 10y agoThe language itself is very, very, very nice, don't get me wrong. But the standard library is very small (deliberately), and while LuaRocks is fun, Perl, Ruby, and Python have a lot more libraries available. Plus, concurrency in Lua is ... nontrivial I loved concurrentlua, an attempt to implement Erlang-style message passing in Lua, with coroutines instead of processes. But it was kind of a pain to get it to work, and I think it was unmaintained. When using Lua as a standalone language, this situation bothers me enough to stick with Perl or Python. However, when using it as an embedded scripting language, it is not a problem at all, because you will probably supply whatever library/API you want to be scriptable yourself. At that point you only care about the language itself and the API of its runtime, which is - IMHO! - where Lua really shines.
- CalChris 10y agoC (I hate C++) assembler (various) (I've even learned x86_64 well after being a RISC aficionado, it's actually kinda neat) sed bash LaTex I used to use YACC/LEX but that's been replaced with ANTLR for awhile now. What language am I starting to use? Rust and R. I wrote something in PERL once but when I woke up the next day I couldn't really read it. So that was that.
- khedoros1 10y agoPerl makes it easy to write line noise, and only possible to write legible code. That possibility also goes mostly out the window as soon as you use the real strength of the language (regex).
- majewsky 10y agoRegexes support whitespace and comments, and can easily be composed. But I agree that an effort needs to be made to write legible Perl code. "Perl Best Practices" is required reading for any professional Perl programmer.
- singingfish 10y agoAye, you know you're starting to reach expert level once you understand the parts of that book which should be ignored. for OP: Perl is a rich and deep language. It's as or more comptetent as exactly the same things as ruby and python (although pythons maths, and keeping management happy libraries are better, perl's async and systems wrangling )support is better. It is more permissive than you would want in some circumstances, but in my experiencing running a competent perl team with supportive management is a pleasure.
- phyushin 10y agoVb6
- phyushin 10y agoVb6
- pmontra 10y agoWhat's old? Anyway, I'll be using: Ruby, age 21. Web development, some text processing scripts. Design started on February 24, 1993 first release on December 21, 1995. [1] Python, age 25, almost 26. Web development. Implementation started in December 1989. First release on February 1991. [2] JavaScript, age 21. Web development. Designed and released in May 1995. [3] However if Ruby and Python are clearly the same languages they were 20+ years ago plus the natural evolutions, I don't know if the JavaScript we're using today has anything more that a resemblance with what it was back in 1995. After all we say we're using bash (Bourne Again SHell, it couldn't be more explicit) and not sh, speaking of which: Bash, age 27. Scripting. Coding started on January 10, 1988 and released on June 8, 1989 [4] If we count the Bourne shell, that is from 1977 (age 39), coding started in 1976 [5] Erlang, age 28. First prototypes running in 1988, work on BEAM started in 1992, in production as we know it in 1998 [6] Actually I'll be using Elixir for backend coding. Sometimes all what an Elixir module does is calling Erlang modules so it's handy to code that directly in Erlang. The Elixir compiler handles compiling and linking Erlang well. [1] https://en.wikipedia.org/wiki/Ruby_(programming_language)#History https://en.wikipedia.org/wiki/Ruby_(programming_language)#Hi... [2] https://en.wikipedia.org/wiki/History_of_Python https://en.wikipedia.org/wiki/History_of_Python [3] https://www.w3.org/community/webed/wiki/A_Short_History_of_JavaScript https://www.w3.org/community/webed/wiki/A_Short_History_of_J... [4] https://en.wikipedia.org/wiki/Bash_(Unix_shell)#History https://en.wikipedia.org/wiki/Bash_(Unix_shell)#History [5] https://en.wikipedia.org/wiki/Bourne_shell https://en.wikipedia.org/wiki/Bourne_shell [6] https://en.wikipedia.org/wiki/Erlang_(programming_language)#History https://en.wikipedia.org/wiki/Erlang_(programming_language)#... Considering that PHP, Java, C++, Perl are also in their 20s (and Objective-C is 30+), should we really call them old languages or old should that be reserved to something dating back to the 70s or the 60s? (C, COBOL, Fortran).
- campusman 10y agoColdFusion/CFML. All day, every day. Although a heavy dose of the newer hotness and the eventual migration of everything I work with off of it is in the works. Still enjoy working with it though. Very productive.
- vrisha 10y agoSeems only two of us here.
- Semiapies 10y agoPerhaps the only two who still enjoy it. :) I'm working on the latest revision of a client's CF intranet app that been in use for fifteen years, now.
- j45 10y agoA mess can be made in any language :) Be scared to see what today's modern frameworks and their code bases might look like in 10-15 years, because some projects will have that lifespan.
- Semiapies 10y agoThe only real mess is the project's continual struggle against the language's verbosity and limitations. I try not to think too often about how much shorter some section of code would be if it were in Flask or Django.
- ChemicalWarfare 10y agoCF and Intranet. That is so 1999 :) Although Cobol was super hot back then too for y2k patching.
- 51Cards 10y agoOne more here. Still build a lot in CF.
- 10y ago
- deckar01 10y agoBasic. Specifically BASIS's BBx (Business Basic extended).
- jamesxv7 10y agoI'll continue with JavaScript and C#... they are pretty old (and I'm not joking).
- deleted 10y ago[deleted]
- netrap 10y agoDelphi (may quit), Perl, Tcl!
- networked 10y agoI don't relish the opportunity, but batch files, since they are the lowest common denominator for scripting on Windows.
- adamnemecek 10y agopossibly datalog
- drelihan 10y agomostly C here
- pdonis 10y ago- python: my general purpose go-to language - sh/awk/sed (I don't really think of these as separate languages): mainly for scripting things that aren't worth firing up python for or that are easier to script this way - javascript: for web front ends - html/css: ditto - possibly c: for particular things where I need more speed/control over memory than python can provide
- aerique 10y agoLisp, and specifically Common Lisp although the latter isn't that old. It first appeared in 1984 and the ANSI specification was finished in 1994, but it traces its lineage directly back to Lisp 1.5 from 1962. It can run Lisp sources decades older than it trivially. It is a very practical, multi-paradigm language with high quality, high performance implementations on many platforms. Its main issue is that it is not very popular, but that might also be a blessing.
- agumonkey 10y agoI'll add elisp there.
- joeld42 10y agoC
- p333347 10y agoc++ 03. (This works well for me and never felt a need to switch to newer versions beyond using a few things here and there like auto, with new meaning. I have been using latest Visual Studio Express versions since 2010 so this 'mix' has no problem. I don't write code to be backward compatible compiler wise so on that count also its not a problem.)
- vortico 10y agoC (ANSI or C99), C++ (C++11, some variation of https://gist.github.com/bkaradzic/2e39896bc7d8c34e042b https://gist.github.com/bkaradzic/2e39896bc7d8c34e042b), and a bit of NASM ARM. I do GUI design, DSP, scientific simulations, and HPC.
- BlackjackCF 10y agoC - Wanted to get into some embedded programming. I was going to do some Rust for this, but I figure I might as well learn some C as well. Bash - I already know some Bash, but I want to become a bash guru.
- aNoob7000 10y agoPowerbuilder!!!! We have a bunch of mission critical desktop application that run on Powerbuilder.
- webscalist 10y agoES6 Everybody is es7 and es latest. I feel old.
- cydonian_monk 10y agoC/C++ for the usual embedded and backend stuff. And a tiny bit of legit COBOL, because our orginization is married or perhaps chained to it. The COBOL code is mostly for UI work, sort of a VisualCOBOL, as well as legacy reports. And of course the usual Linux scripters: bash, awk, sed, etc.
- alfalfasprout 10y agoProbably an APL-like language like K+
- tmaly 10y agoPerl 5, I have been using it in Financial Services for the past 12 years. It is still a workhorse when it comes to reporting. Many large banks still use it, but most don't advertise it. I used it at places like Intel back in 1999. It really is a versatile language.
- collyw 10y agoI switched to Python a few years back mainly for Django, but Perl still does a number of things better (regexes, interacting with the filesystem for example).
- singingfish 10y agoMy understanding is that django/sqlalchemy and catalyst/dbix::class are equivalent. The former being better at keeping managers happy, the latter at keeping the right kind of programmers happy ( due to the superior flexibility).
- collyw 10y agoI did try Catalyst but being Perl and "more than one way to do it" caused me a lot of confusion (you could replace the template engine, the ORM and other parts to the point where I didn't know what the framework actually was). Django was a bit more beginner friendly for someone new to a framework, and the documentation is really good. And the Django admin is one of the best ways to get something up and running quickly, there wasn't a Perl equivalent when I was trying Catalyst.
- tmaly 10y agoMojolicious is a really nice alternative to Catalyst.
- nailer 10y agobash (27 years) - I tend to write for bash 3 and up, totally happy for my scripts to not work on Bourne shell powershell (11 years) - basically just a better version of bash with 'select' and 'where' replacing scraping for text with grep/sed/awk javascript (21 years) - finally ES5 and 6 have added some stupidly obvious things like multiline strings, array.includes(), destructuring, etc - it's actually a pretty good language now.
- nonsince 10y ago- C! (I'm not using it at my current job but I'm just about to start a new job that's mostly C) - Scheme! (Because I love it) - Bash/Awk/Perl/Sed! (Because I use Arch for everything) - Java! (Because you can't have everything in life)
- ericcholis 10y agoVisual FoxPro (VFP). Runs a number of legacy systems. But, still works quite well given a pretty flexible data access layer and access to any number of APIs over HTTP. Strong baked-in SQL support.
- sebastianconcpt 10y agoSmalltalk. It's the "secret weapon" for a backend service. Allows fast mutability and is unbeatable at productivity and exploration.
- dmux 10y agoAre you using a particular version? Pharo? Squeak? Commercial?
- sebastianconcpt 10y agoIs not a Windows app, is a server microservice so I have to discard my favorite Dolphin Smalltalk for the remarkable Pharo or Squeak. Since is a business thing that will run on some linux server, I think that we'll go for Pharo. To be honest at this point Gemstone is not discarded, but geez I wish would be easier to do devops with it. A good how-to from zero to hero on a basic gemstone dev setup and minimal production setup would be so cool to have
- i_feel_great 10y agoDolphin is a very nice Smalltalk. For business, local clients all use Windows and do not trust web apps for core applications. So Dolphin + ODBC is my latest go to for business apps.
- sebastianconcpt 10y agoHa! this is good news. I've got Dolphin Smalltalk running on macOS https://twitter.com/sebastianconcpt/status/816706663344467968 https://twitter.com/sebastianconcpt/status/81670666334446796...
- pjmlp 10y agoJava, C#, C++, SQL, and if I cannot avoid it, JavaScript.
- ianmcgowan 10y agoI still get paid to program in Pick Basic (https://en.wikipedia.org/wiki/Pick_operating_system https://en.wikipedia.org/wiki/Pick_operating_system) which seems kind of unreal in 2017.
- franze 10y agoWhatfor?
- ianmcgowan 10y agoLine of business application for leasing companies.
- deleted 10y ago[deleted]
- procauxfiefs 10y agoYou're not alone. We're still use Pick Basic via Universe for legacy software. It's not working so bad, so.
- willtim 10y agoHaskell, which is now a very mature language, over 26 years old.
- Insanity 10y agoSame here though I only use it for side projects. During my day job it is pretty much Java and SQL.
- weltonhead 10y agoBLISS. The system programming language for PDP and VAX computers from Digital Equipment Corporation. Think "high-level assembly language". Powerful, elegant, simple, totally unforgiving. The world's most powerful chainsaw, without a chain guard.
- wila 10y agoDataFlex - used for business apps, gets plenty of use in medical, accounting and banking and some web integrations. Delphi - crossplatform development, tools SQL - see above C++/C# - tools bash - scripting, mostly for managing servers
- nilved 10y agoHaskell is pretty old and I'm gonna use it until Idris is production-ready
- Moto7451 10y agoAnother one for Perl. Web MVC, Shell scripts, and daemons galore :).
- gwu78 10y agoassembly apl (k4) forth (bootloader) snobol (spitbol) C (small subset) sh (Almquist-like) sed (not GNU) nawk (do not use added functions such as strftime) execlineb
- davidwihl 10y agowhat in the world do you still write in snobol / spitbol? I haven't heard anyone even mention that language since 1983.
- nickpsecurity 10y agoPeople mention it here on occasion for how it handles string processing. Experts in such things might want to dive deep in a review of it for the rest of us.
- jsgrahamus2 10y agoIcon was also produced by the same man, Ralph Griswold. And it has inspired a newer incarnation, Unicon. I imagine each would also be pretty good at string processing.
- PeCaN 10y agoI occasionally pull out SNOBOL4 as a less-awful awk, mostly for poking around/formatting logs and such. Not a bad language honestly. It's aged very well.
- achileas 10y agoPerl, it is what we use for our ETL pipeline, and it works great for that.
- svec 10y agoLisp and C: for robotic control software.
- therealmarv 10y agoTaking a deep look into Lazarus/FreePascal/Object Pascal this year (because I can still code Pascal & VCL code in sleep nowadays). Want to see if it's good enough to develop a simple macOS, Linux and Windows application at the same time.
- lacampbell 10y agoWhy FreePascal over Qt for cross platform gui applications? I had a contract doing C++/qt stuff 2015/2016. So I could conjure up my own reasons for and against. But I am curious about yours as I am largely ignorant of pascal.
- i_feel_great 10y agoYou might like to look at Lazarus, the gui builder that comes with FreePascal. Everything is done in Pascal - no XML etc. It is good-looking and my own experiments with it shows that it is very productive.
- therealmarv 10y agoI know C++/qt and I don't like the experience when compared to good old Delphi and VCL days (just my personal opinion). The workflow and behaviour in RAD (rapid application development) with VCL Delphi components was quicker and more intuitive and I had to write less code manually than with QT. Call me crazy but I had the feeling QT is much more verbose and unnecessary complicated compared to Delphi VCL programming. I just want to figure out how good Lazarus/FreePascal is nowadays for some pet project.
- samuell 10y agoIn my experience, it really really is. I had to develop a simple GUI application for extracting a few hundred GBs of image data from a complicated folder structure created by an automated microscope. It had to run great on windows and mac os (and linux of course won't hurt, just in case, as it has some desktop use in academia). I developed the tool in linux (xubuntu), and: - Compiled it without change on windows (Just press that green button). - Compiled it with one single change on Mac OS X (some cthreads library import missing). I finished the project from design to final approved product, INCLUDING learning the language as we went, in 80 hours. I find this pretty amazing. (The tool: https://github.com/NBISweden/mdc-file-export https://github.com/NBISweden/mdc-file-export )
- nickbauman 10y ago1) Lisp. Racket is the new old thing. But Clojure too. Lisp is the language I choose if I don't know what the problem is beforehand. 2) Python. Numpy is unsurpassed in the data science world. 3) Shell programming
- peterkelly 10y agoAs a hobby this year I'm beginning to experiment with mechanical computer designs, implemented in Lego Technics (yes, really). That's going to involve looking back to Turing machines, Babbage's difference engine, the Pascaline, and various other contraptions. I guess you could consider the means of encoding instructions for such machines to be programming languages, albeit very primitive ones. Here's a couple of machines that others have built: https://www.youtube.com/watch?v=FTSAiF9AHN4 https://www.youtube.com/watch?v=FTSAiF9AHN4 https://www.youtube.com/watch?v=i_u3hpYMySk https://www.youtube.com/watch?v=i_u3hpYMySk
- Yokohiii 10y agoI will certainly get more into C. Mainly because C is the biggest expansion in knowledge for someone who did 15y web dev on a high level. Secondly because I don't want at all get more in touch with hype madness of JS and the likes. If we produce code at that rate the whole system will collapse within 5 years. At that time I should be fit enough to take a C senior position.
- MrBuddyCasino 10y agoSame here, so much to learn from if your whole world consisted of the JVM. But I don't think I want to do it professionally.
- RRRA 10y agobash, sed & yml: it's crazy how far those will get you...
- ddgflorida 10y agoC for text processing, shell scripts for web scraping (wget, lynx, sed, ...). The elegant design of Unix tools still amaze me. I may do a little Classic ASP too.
- DesiLurker 10y agoC & assembly, bit of bash scripting.
- codr4life 10y agoSame as always, C & Lisp.
- Zigurd 10y agoJava on servers. Java on Android. iOS gets the new thing: Swift on iOS.
- notacoward 10y agoC. Like most infrastructure software - yes, even today - the codebase I work with (Gluster) is almost all C. Personally there are about a dozen languages I'd rather use, and would use if I were starting my own project, but this is the environment in which I get paid to solve interesting problems and the fact that it's in C is just part of the package.
- mrmondo 10y agoWe still have one web-app written in perl, it's based on the mojolicious web framework to keep it somewhat maintainable, the app used to be heavily tied to mod_perl1 which has thankfully been 'modernised' to not use mod_perl1 or 2 and instead run with mojo+nginx. I expect this to continue being in service and maintained for another 1-2 years before being replaced by a python rewrite.
- zeroc8 10y agoC++ - I've started at a new company whose main product consists of 2 million lines of C++/MFC code. It's a pain in the ass and I'm hating my life now, but it pays the bills...
- WorksOfBarry 10y agoFor the last 2.5 years I've been doing RPG - both the newer free form and older fixed. I can imagine I'll be doing it a lot more within the next year also. A lot of people give it hate, but it's a pretty simple language after you use it a lot. It's possible I will start to write C++ also.
- bkmartin 10y agoI think you mean RPGLE? :) I'll be doing a little bit of it this year, hopefully it will be the last... :/
- beezle 10y agoFortran, COBOL. Though I don't consider Fortran "old" as it has many shiny features.
- rohanaurora 10y agoObjective-C on legacy project for AT&T. But I feel ObjC won't go anywhere.
- oblib 10y agoPerl and Javascript. I make web apps and started using Perl for cgi scripts back in `97 and still use it. Most of my app code now runs on the client side with Javascript so I don't do much with perl anymore but I still use it for most everything on the backend. Learning to code something with new or different languages is not something I do without good cause and/or necessity. I haven't ran into that much building web apps.
- david-given 10y agoI've just being doing some work in B (C's predecessor). I suspect I may have the only B compiler in the world for the VideoCore IV processor.
- peelle 10y ago-Perl -Bash -C++
- jwatte 10y agoC, bash, make, Haskell (Has it really been around that long already!?) (And C++ and Erlang depending on your cutoff date.)
- gushie 10y agoOpenVMS BASIC and Progress OpenEdge. Really looking forward to the day I need to find a new job, and discovering how widely sought after cough my skillset is...
- pklausler 10y agoFortran (1956), Haskell (1989), C (1969), myself.
- etiene 10y agoI'll be using lots of Lua while I learn Machine Learning this year! Super exciting!
- dwarman 10y agoToo old for any one language to have lasted my entire career. But: C for (embedded(embedded))* audio DSP engine, with hardware specific intrinsics and occasional drops into inline ASM when those fail. When every cycle counts and Hard Real Time contracts must be met, to me it is anathema for any invisible compiler-generated code to exist - such breaks the required determinism. So no C++. Would write in pure ASM in the old days. Still want to - most times the C preamble/postamble is not needed in event handler functions. But TPTB dictate otherwise. Small talent pool and they want Jr progs to take it over. FORTH as the most useful interactive hardware/low level software debugging tool for behavioral debugging (vs post mortem breakpoint debugging, which loses the behavioral context). Used to use hardware logic analysers for this but system complexity out-grew them. I should note I am not using a commercial FORTH, rather a freeware core greatly extended and modified by me for this purpose. Used it in several projects with different CPUs and architectures over the years. Can feed it C headers for readable dumps too (translator written in PERL). Key point: does this while the target continues executing. Caveat: do NOT use unless you know and understand every line of code in the engine and its implications for the target system. Given that, it's the sharpest double-edged handle-less debugging tool I've ever found. * the DSP engine is embedded inside a larger embedded system. All inside the same chip. Makes for interesting times when one cannot touch it directly in main OS land.
- mingodad 10y agoSquiLu (a fork from Squirrel) it has a good C/C++ extension API (inherited from Lua), it can accept a big chunk of javascript as is and it can also accept a limited chunk of C/C++, it's fast enough and already has a good set of extensions. https://github.com/mingodad/squilu https://github.com/mingodad/squilu
- Klathmon 10y agoA business basic language called Providex (or PxPlus depending on the version). There are several hundred thousand lines of the language in the main application where I work. While there are definitely some major issues and pain points with it, it's actually suprisingly powerful and the language itself is still being developed. We've got a lot of things you wouldn't think would be in a BASIC, like classes and object-oriented programming, a "UI" library that targets the web without any (tm) changes (in practice it misses that mark, but it's still extremely useful), support for the big 3 platforms, and more. I don't deal too much with it though as most of my job is connecting new web stacks up with the pxplus backends.
- radiowave 10y agoIf you can remember the days when applications like Lotus 123 had menus at the bottom of the screen, and if you can imagine a macro scripting language in such an application, designed so that the menu structure directly defined the statements available in the language (e.g. file open standard-view "c:\whatever.vw"), and if you can imagine writing database manipulation routines in such a language (so that you must at all times be mindful of which view is in the foreground and what the currently selected record is, i.e. which record the user would be looking at if this task was being carried out by an actual user rather than a macro script), and if you can imagine a manufacturing company who implemented their own MRP system atop such software, then you have the beginnings of an idea of what I'll be spending 2017 maintaining, and then hopefully decommissioning. Here's a mention of the software in question from the UK's Unix User Group newsletter in 1995: https://www.ukuug.org/newsletter/linux-newsletter/linux@uk13/smartw.shtml https://www.ukuug.org/newsletter/linux-newsletter/linux@uk13...
- pmelendez 10y agoIn the side and because a friend is in need, I would be using Basic (Alpha Micro's Basic actually).
- davexunit 10y agoScheme. When I write code in my free time it's always Scheme. I use it for web programming, game programming, systems programming, command line scripts, my package manager is written in it, my init system is written in it, etc. etc. etc.
- dmux 10y agoAny specific implementation?
- i_feel_great 10y ago"my package manager written in it..." strongly suggests GNU Guile.
- anthk 10y agoAnd Guix.
- davexunit 10y agoAs someone else has already said, GNU Guile. But here's a handy link to the home page: https://gnu.org/s/guile https://gnu.org/s/guile And here's the package manager: https://gnu.org/s/guix https://gnu.org/s/guix And here's the init system: https://gnu.org/s/shepherd https://gnu.org/s/shepherd
- sean_patel 10y agoVBA (Visual Basic for Application). Can't seem to ever lose it. Financial Institutions -- think Hedge Funds, Banks, Brokerages) -- are still drowning in bloated complex Microsoft Excel spreadsheets with 1000s of lines of hard-to-maintain-and-source-control VBA code.
- emidln 10y agoEmacs Lisp. In the past year, I finally switched from vim + a boatload of custom .vimrc stuff using tmux for running random repls to Spacemacs. For both contributing to Spacemacs as well as the few customizations I want, emacs lisp is a welcome departure from my usual vimL. At this point, I can't imagine not talking to my editing environment as part of my daily workflow.
- eddieroger 10y agoI just started going down this road, too, and it's blowing my mind how nice it is to basically stay in Emacs all day. I took a little bit of scheme once upon a time, so lisp isn't completely new to me, but there's so much I don't know and so much more I could be doing. I didn't go Spacemacs in favor of my own config driven largely by org-mode, but I find myself wanting to go out and actively learn lisp to make it even more my own.
- MyraMains 10y ago90% of the company website is still Classic ASP. So I will be using that until I can find a new job!
- lakkal 10y agoVisual Foxpro. The application originated in 1986 or so and the original language was dBase II, but moved to FoxBase in 1987, and FoxPro/Visual FoxPro over the next couple of decades. I do as much in Python as I can justify, but I still have to work in VFP quite a bit. I personally have code from 1988 that's still running in this application. Sigh...
- ericcholis 10y agoJust found this comment, which mirrors my sentiment exactly. Quite a bit of my time is spent on modern infrastructure and languages. But, the rest is spent maintaining a VFP application from early 2000's But, I'll give FoxPro one plus, it can integrate quite well with REST APIs. Hell, even modern SQL databases are fine.
- kens 10y agoBCPL. Because I'm restoring a Xerox Alto and it uses BCPL. Hopefully I'll also get Smalltalk and Mesa working.
- vram22 10y agoYou didn't really define "old" so I guess responses are going to be varied. Here is mine: - Python (mentioning since it is over 20/25 years old, though used a lot currently by many, of course). - C (evergreen, for some uses, IMO) - sh / bash, with sed/awk and friends (the common Unix command-line power tools (filters and others)) (Talking about both of the two points above mainly on Unix / Linux, though both are quite useful on Windows too - sh / bash and friends via cygwin, UWin, Ch and similar tools, and now / after some time with the Windows Subsystem For Linux.) - D (if it can be called an old one) - Probably Pascal (via FreePascal), for small tools, for fun and personal dev use (e.g. utilities), on the side, to start with, maybe see if I can make something bigger and generally useful later (I have a somewhat long prior background in it - and in C). The compile times are fast, like D and Go, and executables are small, which are two of the reasons. Haven't checked runtime performance of it much yet, but likely will not be shabby, to say the least. And last but not least (reason), because it is like C with some niceties added, which makes the code more human-readable and maintable (though I have no trouble understanding well-written C, my own or others'.) Also, modern Pascals like Delphi's Object Pascal and Free Pascal are a far cry (much better) than the academic Pascal versions that were taught in universities years ago. Edited to add (after seeing others mention it): - SQL (had forgotten it because it is a bread-and-butter thing used in most of my projects, irrespective of other language used)
- SomeHacker44 10y agoCommon Lisp and Haskell. I've been using Haskell since near the start, and Common Lisp since then as well. However, recently I've been trying out Clojure for some things.
- alexcweiner 10y agoI use APL as the sole language for my current job. Previous job was also APL. cumulative 4 years, and I'm under 30 yrs old, which is a bit of an oddity.
- pvitz 10y agoWith companies like Simcorp, it doesn't sound so odd.
- alfalfasprout 10y agoAPLs are really nice, though! I think they scare away newcomers since they look like brainfuck but it's incredible how you can write fairly intricate programs with one-liners. Also can be incredibly fast since array operations are straightforward to vectorize. I just wish the K language or KDB+ was open sourced. We'd see people from just about every industry drooling over how nice it is.
- disordinary 10y agoThankfully no, but a year ago I'd have to be working in Pascal, VB5, and VBA.
- ScottBurson 10y agoWhen I write code for myself, it's always Common Lisp -- even for stock trading.
- godelski 10y agoI don't know what the language of the year 2017 will look like, but I know it will be called Fortran. We still use C++ and Fortran at our company.
- NoCanDo 10y agoPython.
- alexnewman 10y agoSQL, c and c++(because I can't do everything in rust yet) and python (because all of my employers think it's a good idea)
- andrepd 10y agoLaTeX. Still the best way to typeset documents, and likely to be so for the forseeable future.
- jonsterling 10y agoStandard ML. I develop proof assistants.
- OldSchoolJohnny 10y agoDOS command line batch files
- segmondy 10y agoProlog. - 1972. SQL, bash,awk & sed "PHP", It's not old, but it's not hip and plenty of people believe it deserves to die and has nothing to offer :-)
- YeGoblynQueenne 10y agoProlog - it's still as good as new, far as I'm concerned.
- fusiongyro 10y agoI have a bunch of Prolog books and I definitely love it. One of my new year's resolutions is to use Prolog for anything I can get away with at least through January. Usually I get about 20% in and then give up on it. I'm going to really force myself to get through the other 80% this year.
- i_feel_great 10y agoVisual Age Smalltalk and Cobol professionally. Company I work for tried 3 times to port to Java, plain JavaScript and now Angular. None can approach the sheer productivity and power of VA Smalltalk. Pharo/Dolphin Smalltalk, FreePascal, Racket/Chez/Guile/Gambit(via LambdaNative) Scheme, Ada, Erlang, Forth(8th) for speculative/personal projects. Edit: Bits of LaTeX and groff here and there.
- cm2187 10y agoVisual Basic, for financial analysis. Though not sure VB 14 qualifies as "old").
- mercurialuser 10y agoI will use Clipper open source alternative called Harbour. I started using Clipper in 1986 and some of 1986 code still runs today. Clipper was a compiler for Ashton tate dbase II language. Harbour now allows to run old code on windows, linux, Mac, Solaris and a bunch of other less common OSes, both in text mode or using some gui lib. It will also run on android and ios (using Qt).
- charlieflowers 10y agoWow! I had no idea Clipper was still around. I was using it in 1993 with code blocks (essentially lambdas and first class functions, but not closures).
- danoli 10y agoHoly cow. Used this for a summer job at an agricultural cooperative. Some special linker was a big help, and so were the trade journals (which I would have to track down for this to make sense). Blast from the past. Also, the floppies got wiped out on the way to the big demo, 'cause the backpack was up against the car speakers in the back seat on the way there). Maybe '91.
- mercurialuser 10y agoYes it is still thriving in some countries. Every month someone asks how to run old clipper programs in some more recent os and porting (if you have source code or exes can be decompiled) can be done quite easily. If you still have clipper code you can give Harbour a try (it is on github).
- thecity2 10y agoIt's crazy that Python isn't considered old. It's been around for 25 years.
- codewritinfool 10y agoDelphi and C
- bsg75 10y ago(M)Awk. Still great for cleaning a lot of data.
- myg204 10y agoI second that, awk's a very clean language to look at log files or data files and do quick analysis or clean up.
- kruhft 10y agoCommon Lisp.
- Redline99 10y agoVisual Basic 6 Tons of legacy integration.
- lacampbell 10y agoOcaml (which will turn 21 this year). It really hits a sweet spot for me: - fast executables - fast compile times - very expressive - good standard library in 'Core' - a REPL so you can easily play around with code you have just written - a type system that's really useful for catching bugs - imperative programming is relatively easy I find myself becoming more and more productive. I will have to see if writing a little server for JSON web API sitting behind nginx is feasible - currently using ruby for that.
- cyberferret 10y ago- Plain old SQL - Some MS-DOS Batch language - Clarion * Just installed a copy of the original Turbo Pascal on FreeDOS and looking forward to re-remembering my first 'real' apps I wrote in it...
- it 10y agoErlang: immutability, pattern matching, quick compile times, the best implementations of QuickCheck, flexible distributed computing with async message passing.
- ArkyBeagle 10y agoI'm back to 100% assembly for a branch of the military, as a civilian.
- Ericson2314 10y agoHaskell, late 80s. I hear wine gets better with age like Haskell.
- ryanjodonnell 10y agoruby, java, javascript are all 'old' at this point
- MaxLeiter 10y agoI use Ada for Data Structures class, I think that counts?
- syntel 10y agoI use the Harbour Language which is for me a 'Super C'. Massive flexibility and power. Right now, i'm using Harbour as a server lamguage to service my three web sites. Harbour has complete and built-in database power ( SQL, non-SQL, Comix, etc, etc). Take a peek at www.whosaway.com, a complete repository available gratis for world-wide programmers.
- syntel 10y agoI use the Harbour Language which is for me a 'Super C'. Massive flexibility and power. Right now, i'm using Harbour as a server lamguage to service my three web sites. Harbour has complete and built-in database power ( SQL, non-SQL, Comix, etc, etc). Take a peek at www.whosaway.com, a complete repository available gratis for world-wide programmers.
- d5ve 10y agoI'm working for a perl-based UK startup. It's the second perl startup I've worked at. Both have been very successful. The current one is about ten years old, and just starting to explore other languages now. Currently the whole infrastructure is perl-based, including public services, data-processing and inhouse tooling.
- transposed 10y agoVisual basic
- fotbr 10y agoJava and C#, with a bit of (MS)SQL and ASP.NET and a smattering of VBA and ASP at work. None are what I would consider "old". For fun, though, there's QB64's implementation of QuickBasic. I also have my old 8088 up and running again, and GW-Basic and ASM there. I started with GW-Basic when I was about 4 years old on that old 8088. Two 5.25" drives, no HD, 640k RAM and a "Turbo" button. What's not to like? Co-worker introduced me to Lazarus / FreePascal a few weeks ago, and I decided to dust off my old pascal book from jr. high school and see what I can remember. If I can find a use for it, I'd like to dust off and freshen up my Fortran77 memory. I know there have been updates, but Fortran77 has a little special place in my memory since that was the first language I got paid to know. Then there's COBOL. No idea why, but I want to revisit it and see if it is as bad as I remember.
- linkmotif 10y agoI think I read somewhere COBOL has >300 reserved words?
- jslabovitz 10y agoRuby. Not Ruby+Rails, just pure Ruby. If you take away the Rails ecosystem, Ruby starts to feel like an old (but lovely) language. Many non-Rails gems (libraries) haven't been updated for at least five years, if not ten -- so I end up rewriting a lot of stuff myself. I enjoy it, actually. Quite peaceful.
- salomon812 10y agoI'll be using QBasic to teach my kids programming. They both got Raspberry Pis for Christmas, which I preloaded with DosBox. This was always Plan A, but this article made me stop looking for a Plan B: http://www.nicolasbize.com/blog/30-years-later-qbasic-is-still-the-best/ http://www.nicolasbize.com/blog/30-years-later-qbasic-is-sti...
- acidburnNSA 10y agoWe still have a whole lot of FORTRAN77 around at my work that I will do some work on. Some of it is very close to FORTRAN-IV. These are Gen-IV nuclear reactor simulation codes written by Argonne National Lab and friends mostly in the 1960s-90s. They were validated against experimental facilities back then and therefore have a good pedigree. Since most of the experiments are no longer operational and not all the results and test conditions were well documented, it's a challenge to update. We've upgraded some of the memory management stuff through the years at least and there's more FORTRAN90 every day, which is a nice modern language from this perspective. Thankfully we have written gobs of Python to do most of the data management, multiphysics coupling, multiobjective optimization, etc. so it's really not too bad.
- metaphor 10y agoDCL[1]: scripting builds on a long obsolete version of OpenVMS which doesn't even support command line piping, on half-baked Alpha servers loaded via 130mm magneto-optical drives over SCSI for hardware test programs written in... ATLAS[2]: an utterly repulsive, "self-documenting" language designed specifically for test applications, which has somehow managed to outlive the demise of its guiding IEEE standards committee to the dismay of many a aspiring young engineer. Paradigms include 20+ token statements as a sensible method to toggle a switch best described as abusive by certain alumni of aforementioned committee; proliferation of subsets which aren't even notionally interoperable because it makes people feel special; and nerfing canonical features related to trivial GPIO control only to adopt a proprietary language such as... L200[3]: because languages are always fun when comma delimiters are strictly optional most of the time, and it's easier to metaprogram an application than to actually write it. Build/runtime/debug environment is also fun when it's technically an obsolete filesystem emulator executed by an obsolete OS running on an obsolete hardware architecture whose performance[4] pales in comparison to a 1st generation RPi. [1] https://en.wikipedia.org/wiki/DIGITAL_Command_Language https://en.wikipedia.org/wiki/DIGITAL_Command_Language [2] https://en.wikipedia.org/wiki/Abbreviated_Test_Language_for_All_Systems https://en.wikipedia.org/wiki/Abbreviated_Test_Language_for_... [3] https://en.wikipedia.org/wiki/Teradyne https://en.wikipedia.org/wiki/Teradyne [4] http://xkcd.com/303/ http://xkcd.com/303/
- arkbird 10y agoLearning C this year
- luketongs 10y agoCA-Visual Objects. For a Win32 Application.
- brightball 10y agoPerl. If there's ever anything I need to do on the command line, CPAN is the first place I look and it rarely lets me down.
- sixsevenwheels1 10y agoC++/FORTRAN77 FORTRAN77 allows use of a code base that has the bugs beaten out of it years ago. Aerodynamics doesn't change. Also older Engineers can still comfortably write new routines. C++ allows use of Qt4 and all that it offers. Graphics, networking, SQL, etc. Intel Linux compiler makes it simple to mix and match. Also to pass complex data structures back and forth. At one point we had the same programs compiled to run on SGI IRIX, Linux and Windows. #ifdef made it easy.
- xyproto 10y agoGo. Eight years old.
- CodeWriter23 10y agoPerl 5 Baby!
- sanspace 10y agoDoes C count? C, ksh For one of the retailer's POS.
- SAI_Peregrinus 10y agoVHDL & Verilog. 29 and 30 years old respectively, and while not really programming languages (they're hardware description languages) but they're used quite a bit. Any piece of equipment with an FPGA or CPLD inside (more things than you'd expect) and for prototyping systems before going to the expense of creating custom ICs. While they're not as old as many of the other languages mentioned here they're old enough, and I haven't seen anyone else mentioning them.
- lightrally 10y agoNatural + Adabas on a mainframe for higher education administration, woot!
- boznz 10y agoPascal and SQL on the desktop, C for embedded. I can read most other languages but as long as the Pascal compilers are being updated and actively supported I dont see any reason to move on