Photo: Erik Pitti
That’s a question I’ve been asking myself recently as I’ve thrashed around looking to settle on a stack for my next project.
COBOL is that unsexy old thing that pays $350/hour to those brave and experienced enough to still have familiarity with it. It is legacy code wrangled these days by "maintenance" programmers. (I actually saw this used as a derogatory term by some fool who probably makes less than $350/hour.)
Most of the time I’ve spent programming to date was with tools I took pleasure in using. Sure, there was some Java, some C, but the majority of it was with sweet sweet Ruby and Rails. ♦️🛤️
The times have changed though, and I don’t feel too confident in that duo anymore.
I’ve always liked the backend more, and particularly ran away from JS like the devil. But, though I hate to admit it… JS, you’re my COBOL.
A weird type of COBOL, that’s for sure. One that has a baggage of legacy, quirks, and facepalms aplenty, while also being so cutting edge that people’s brains stall and hurt from pure paradox of choice.
But it is the language of my time. The number one most popular programming language on the planet. The undisputed queen of the open web 👑. And the one most likely to put a roof over my head for decades to come with the most flexibility.
To some it’s Java, others PHP. I’m going to park my horse right here under this JS tree 🌵. (You can start a song with that.) I’ll weather the framework tides, accumulating scars and wisdom, and have you – my handy sledgehammer of sparse finesse and begrudging appeal – always by my side.
That doesn’t mean stagnation, though. Quite the opposite. Knowing my footing firm, I’ll be free to risk further into learning and making: programming- and business- wise. 🏌️
I won’t pretend I love you, JS, but I will honor your place as the breadwinner. 🍞
And after a hard day’s work, I’ll rest you carefully in my toolbox, and let my fancy fly for anything but you ;) 🆓
That is my COBOL. What’s yours?
Top comments (9)
I love SQL. Most people don't. Everyone's got their own reason, but I've found it usually boils down to one of two: they find it difficult to think in terms of sets and express themselves with a declarative language, or they may simply prefer to concentrate on other stuff and regard data access as a chore. Either way, they're willing to pay me to handle that side of things, and I'm happy to take the money!
if COBOL means tool others look down on you for using, Perl is my COBOL.
I work in a Perl shop, have two modules in CPAN (one being one I maintain but didn't write), and have used for personal tools and toys for ~20 years. If it's client-side, I use Javascript because what choice is there? If the task requires something that I can't do in Perl, I use Python or something, but those tasks are rare. And, because it has to be high on my resume because it's what I use most, I believe people believe I can't use anything else.
I asked a similar question on Twitter a while ago, and was confronted by a COBOL pusher who pointed out how behind-the-scenes prevalent COBOL is. There's an old video on springs (MST3K here), which got referenced in Kentucky Fried Movie and The Simpsons, that the riff reminded me of. If you use stoplights or get paid, Thank COBOL.
@figspville always think about ya when COBOL is brought up!
Nice one, it made me laugh :) I'm actually a JS/Node dev, but since you are primarily a backend guy I would suggest you to try out Go. It's super easy to learn, designed for concurrency, statically typed and compiled language. Well, it's a C like language but I guess you can't have everything :)
I don't think a have a COBOL myself :) or at least I hope I don't have one.
The programming language is just a tool.
You're right that Go has heavy institutional support and a booming codebase that will have to be improved upon and maintained in the future, so it is indeed a good bet.
I'm leaning heavily towards functional languages though for my nights+weekends "everything but JS" time, so on the backend I'll probably go with Elixir.
At the moment I'm dipping my toes into Elm. I've decided I can't run from the frontend any longer, especially since I want to build my own products end to end.
I agree that the language is just a tool and metalearning is the real skill. But "fast learner" is a hard sell if you can't prove core competency on at least one technology.
And I think it makes it easier to show your work via open source packages, blog posts, etc. if you commit to one thing for the long run. I'm very prone to shiny object syndrome, so choosing to take some root helps balance out mastering with exploration.
What's my COBOL? What language will make me comfortable in my retirement years? Likely, it'll be Visual Basic. Those systems are scary and it takes a special breed to wrangle them into maintainability. Yup, I figure I'll always have a job so long as I'm willing to fix up legacy VB.
This is fantastic, and as someone who graduated college just after the Y2K freakout, I am well aware of those COBOL programmers. I knew a few of those greybeards still doing programming from that era, whether it's COBOL or FORTRAN, or the UNIX side of things with old Lisp, C, etc.
My COBOL is SQL with a healthy dose of old school Javascript and multiple Microsoft products. None of those are sexy, but everyone seems to need some variation of those at some point. Including my most recent project, where I spent the last nine months helping end a 3+ year effort using SSIS (with C# and SQL scripts embedded) to transfer ~30 years worth of mainframe data over to a modern system.
And yes, part of that mainframe app. was written in COBOL, and was being used actively until the end of this August. ;)
I don't like it but PHP and Actionscript are two languages that I know and have used for the longest time of my time as developer, but I'm glad Actionscript is not really an issue any more.
Mine is Objective-C. I'd prefer doing Swift 😁