Slashdot Mirror


Little-Known Programming Languages That Actually Pay

Nerval's Lobster writes There is no shortage of programming languages, from the well-known ones (Java and C++) to the outright esoteric (intended just for research or even humor). While the vast majority of people learn to program the most-popular ones, the lesser-known programming languages can also secure you a good gig in a specific industry. Which languages? Client-server programming with Opa, Salesforce's APEX language, Mathematica and MATLAB, ASN.1, and even MIT's App Inventor 2 all belong on that list, according to developer Jeff Cogswell. On the other hand, none of these languages really have broad adoption; ASN.1 and SMI, for example, are primarily used in telecommunications and network management. So is it really worth taking the time to learn a new, little-used language for anything other than the thrills?

242 comments

  1. No thanks by Anonymous Coward · · Score: 2

    Plenty of jobs in the bread-and-butter languages. I could also rehash older languages if I wanted to maintain legacy systems. Not wasting my time with flash-in-the-pan languages though.

    1. Re:No thanks by PRMan · · Score: 5, Insightful

      Plus, you run the risk of steering your career into a corner from which it's hard to escape. I did C# for 5 years and then a custom Pascal scripting language for 2 years. What did I hear? "You're not a C# developer, you're a xxxxx developer." Um, it's not like I forgot everything I knew or even didn't use it during that time, but it's a resume-killer, so be careful.

      --
      Peter predicted that you would "deliberately forget" creation 2000 years ago...
    2. Re:No thanks by sycodon · · Score: 1

      And just because you learn the language used by Networking and telecom doesn't mean you really know anything about networking and telecom.

      --
      When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
    3. Re: No thanks by MichaelMacDonald · · Score: 2

      Easy enough to pick up a new language if you need it. No big deal. Nowadays it takes me a few minutes to get up and running and coding in a language I've never used before.

    4. Re:No thanks by Anonymous Coward · · Score: 2, Insightful

      Indeed.

      A lot of these "guy making 100k a year writing software in something you've never heard of" are more about that guy's domain knowledge than their programming chops or unique skill sets.

      It's one thing to know COBOL. It's another to understand what that massive payroll system is actually doing.

    5. Re:No thanks by Anonymous Coward · · Score: 0

      You risk Scylla and Charybdis syndrome. On one hand, a H-1B hired for $15,000 a year (yes, 15k, since programming isn't licensed, people can imported for dirt cheap), knowledge of a mainstream language may not bring much income, just because countries are cranking out legions of programmers who will work for peanuts and will work 80+ hours a week, minimum 10,000 lines of code a day.

      On the other hand, too esoteric, and you are typecast for life, other than for short lived projects that are turning code into something mainstream.

      The cure: Focus on embedded programming. Since each embedded utility requires completely different skills, companies can't get the payroll and corporate tax benefits for hiring offshore, and hiring Delg from Lower Elbonia at minimum wage... because ol' Delg will take far more to train and actually get the basics of programming in a limited resource environment (can't just slop code together with stubs, mash "compile" and have it work enough to ship.)

    6. Re: No thanks by Anrego · · Score: 5, Insightful

      Language, maybe. The tool stack around that language though, I call BS.

      Sure, a c++ guy can pick up java itself fairly quickly, but it takes time to come up to speed on the various widely used libraries and tools. General programming concepts transfer, the specific workings of something like EJB or OSGI don't.

    7. Re:No thanks by Anonymous Coward · · Score: 1

      I've got mod points, but you are already insightful 5, so I'll just reply, and do it as anon because others at my job browse this site.

      This is such a threat, and it's just so hard to explain it. You'll do it to help the company, you'll do it to help the team, you'll do it because some others in the group can't learn the custom language as fast as you, you'll do it because it's legitimately interesting and fun and new... ...and your resume will suffer so much because of it. If you aren't careful, you can end up not even in "software" anymore, even if software is all you did for a decade. I can't stress this enough, it can happen, the moment that you are pointed at this stuff, ensure you have a plan to preserve your experience. I had solid management covering me hard, if it wasn't for that I'm absolutely sure I would not have a job in software right now. Maybe not even a job at all.

      BE CAREFUL!

    8. Re:No thanks by Anonymous Coward · · Score: 3, Informative

      Your résumé will not suffer from what you don't put onto it.

      Rule #1 of writing a résumé is to make it specific to the posting you're applying for. If you're applying for a Java/Oracle development position, don't put your Go and Hadoop experience on there by name. Leave it as "n years of professional development experience building x, y, and z." What you should plainly state is whether you have Java and/or Oracle experience, how much of it, and how recently.

      It's really not difficult to avoid getting pigeon-holed into a scut-work niche, and it's even less difficult to get out of one by jumping ship to a new company.

      The Dice Overlords here like to play up the difficulty of searching for a job, but that's because they have a vested interest in fooling everyone into thinking it's hard. It's not.

    9. Re:No thanks by RavenLrD20k · · Score: 4, Insightful

      Unfortunately, C# suffers from a sort of fragmentation where every year there's something new and fresh with it. Even though you and I, as developers in the wild, understand that this "fragmentation" is a bunch of hype and circumstance where the underlying base and syntax hasn't necessarily changed much over the past 3 years, the technologies around it have changed significantly.

      To give an example, just today we ported an in-house app that is a tool to help with debugging that was updated at the very end of 2013 and ran on Server 2008 no problem to a new environment running Server 2012. Just about 2 weeks over a year after its last rewrite, it took about 20 minutes to install "legacy" packages on the server where it could be shoehorned in as Network Service .NET 2.0. Our other option was to take another 2 weeks (minimum) to completely rewrite (average 2 days writing and testing) and implement (the remaining time satisfying the red tape of the business) the application where it could run as Network Service .NET 4.0. Not something economical for what is essentially an R&D prototype system at this step.

      Other examples are abound... Such as our desire to update several of our apps to take advantage of new features in MVC 6... but other features that we relied on in MVC 4 and MVC 5 broke, so there's a heavy need to develop work arounds or find "the new way to do it" (tm). Also, management wants us to implement Entity Framework 6 for our new database connections rather than use LINQ as we had been...and as we have time, update some of our older and more critical applications to make use of these new frameworks as well. And just wait for the next round of "Oooh Shiny" that we are going to want to make use of this year.

      The technologies packed around C# and .NET in general are targets that move so fast that if you're out of the game for 2 years, even though you could probably pick up and run with the new stuff within a week or less, you're likely going to be competing with hundreds of applicants that are fresh and in the game with the current tech already and will (in theory) be off and running on the first day at their desk.

      If you want to have a language background where you can take 2-5 year hiatuses from it and still maintain a decent demand with it, learn straight C/C++ and COBOL. Where I work I command among the highest programmer salaries in my department not because I'm good with the current tech and keeping up with it (my perf reviews have always indicated this to be true), but because I save my team from having to submit a WorkRequest to the Mainframe Developers for quick batches. My team can tell me what they need and I can submit my time bid and process to the Datacenter Operators in half the time with only one sheet of paper used for signoffs and approvals(instead of 5)... just because I can actually write COBOL (apparently hard to find in anyone younger than 40 these days, and our last COBOL Programmer is slated to retire in 2018).

    10. Re:No thanks by jythie · · Score: 2

      That was what leapt out at me about the list. At least when it comes things like matlab and mathmatica, it is not the language that gets you the job, it just happens to be the language used by the people who have the skills the job is looking for. Go into one of those interviews without the appropriate scientific background and 'do you know matlab' is not going to be their main question.

    11. Re:No thanks by CODiNE · · Score: 2

      The trick is to have a continuously running project in the previous language or framework while working on the newer one. Send a patch in to an open source project once in a while, or even keep a little toy program for trying experimental stuff on.

      That way instead if "5 years C#, 2 years Pascal" you have "7 years C#, 2 years Pascal"

      --
      Cwm, fjord-bank glyphs vext quiz
    12. Re:No thanks by __aaclcg7560 · · Score: 4, Insightful

      The real problem regarding resumes is what you done in your last three positions. While I was unemployed for two years (2009-10), recruiters looked at my help desk resume, assumed that I wanted to do help desk, and told me that they had no help desk jobs available. Never mind that I wasn't applying for a help desk job. After I worked six months as a part-time PC technician for a moving company, recruiters figured out that I could do other jobs not related to help desk.

    13. Re:No thanks by mwvdlee · · Score: 1

      Nothing flash-in-the-pan about domain-specific languages.
      In fact, it's generally considered a smart thing to create domain-specific languages.
      You might well have unknowingly created your own, while expanding your configuration file format.
      There's no point in learning any of them unless you actually need them, though.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    14. Re:No thanks by computational+super · · Score: 2

      Yep. I just left a job that paid me to learn Salesforce Apex programming "language" after two years because I knew if I didn't get out then, I may never be able to escape Apex - until, of course, Salesforce stops being the "in thing" and nobody is hiring for those positions anywhere any more.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    15. Re:No thanks by Anonymous Coward · · Score: 1

      You simply have to lie on your resume if you don't want this kind of thing to happen. Been out of work for 2 years? Get a friend to make up a start-up (or make one up yourself) and put that on your resume. You never look bad for having worked at a failed start-up.

    16. Re:No thanks by __aaclcg7560 · · Score: 2

      You never look bad for having worked at a failed start-up.

      You will look bad if the recruiters and hiring managers discover that you're lying about your resume. My current job requires a government security clearance. A two-hour investigate interview became four hours as the investigator nitpicked my work history to death. Having two or more jobs at the same time in this economy was a security concern. Having lived in the same apartment for nine years also raised some eyebrows. I'm just not a normal American.

    17. Re:No thanks by binarylarry · · Score: 1

      True but if that guy dies they'll replace him with someone who really knows cobol and can get up to speed a quickly.

      --
      Mod me down, my New Earth Global Warmingist friends!
    18. Re:No thanks by binarylarry · · Score: 1

      Mamma mia!

      --
      Mod me down, my New Earth Global Warmingist friends!
    19. Re:No thanks by Zordak · · Score: 2

      Having lived in the same apartment for nine years also raised some eyebrows. I'm just not a normal American.

      Just run up a few thousand in credit card debt, and they'll rubber stamp you with their eyes closed.

      --

      Today's Sesame Street was brought to you by the number e.
    20. Re: No thanks by turkeyfish · · Score: 1

      Same is certainly true with Mathematica, which is primarily a List-oriented, symbolic and functional programming language. It takes quite a while to go from either a procedural oriented framework such as FORTRAN, Pascal, or C or from an object-oriented language such as Java to functional and rule based programming that go into writing Mathematica code.

      Obviously, if one is unfamiliar with the underlying concepts, such as complex analysis, integration, partial differentiation, special functions, combinatorics, graph theory, or PDF's then its only going to be even that much harder to discern which of the several thousand functions in the language are the most appropriate for a particular task. It takes more than hubris to develop such skills. Like anything else, to do it well takes lots of practice. Learning to play chess is easy. Becoming a grand master is not.

    21. Re:No thanks by pepty · · Score: 2

      You simply have to lie on your resume if you don't want this kind of thing to happen. Been out of work for 2 years? Get a friend to make up a start-up (or make one up yourself) and put that on your resume. You never look bad for having worked at a failed start-up.

      Why even lie? If you're unemployed, roll yourself a start-up. If you use it to ask lots of people lots of questions ("how do I?", "Who knows how to?") you'll keep making connections and learning as opposed to just living in self-promoting/begging-for-a-job hell. People will want to talk to you a lot more if you are discussing how to solve a problem as opposed to asking for money. Anyway, it worked for me.

    22. Re: No thanks by Anonymous Coward · · Score: 0

      This is only true when switching between languages in a similar paradigm for example C++ to Java or vice versa. Both Object Oriented, Imperative and strongly typed.

      But imagine going Java to Clojure. Not impossible but there is a lot more to that than just picking up some new syntax. Unless you had good exposure to a Lisp of some sort it's not going to happen quickly.

    23. Re:No thanks by Anonymous Coward · · Score: 0

      Yep. I just left a job that paid me to learn Salesforce Apex programming "language" after two years because I knew if I didn't get out then, I may never be able to escape Apex - until, of course, Salesforce stops being the "in thing" and nobody is hiring for those positions anywhere any more.

      I am in a similar situation. I took a Salesforce job because I needed a career move and it was the easy way out. I know if I stay too long this is poison for my career. Even if I leave Salesforce off my resume I still have a gap from the (insert popular language here) at previous employers, which is suspicious and could be a problem come interview time depending on the hiring manager.

      Aside from that, the Apex language is a steaming pile of shit. The whole platform is basically "Cloud VB point and click app development" with the results any real developer would expect. It is impossible to integrate source control in any useful way. Multiple developers working together in multiple "sandboxes" (cloud instances) is a total clusterfuck: no matter how careful we are, code and configs go missing, deployments fail, all sorts of epic fail you would expect from a flawed platform.

      I get the feeling that Salesforce (the company) is perpetually trying to catch up to features other languages and environments had a decade ago in a feeble attempt at staying relevant. Just spew out the "cloud" buzzwords fast enough to sign more clients and maybe, just maybe, in ten years we can have development tools and methods available that were common elsewhere ten years ago. Ugh. I'm going to cry myself to sleep and look for a new job after work tomorrow.

    24. Re:No thanks by kerrys_1999 · · Score: 1

      I also ditched a good job thanks to a move to Salesforce Apex. An awful language. I wrote a document about the experience. I think it's a good laugh.

      https://docs.google.com/document/d/1piRkevGOfv1GFcqFb5fRFs4yUIFMK9a-mRW82EJzMQ8/edit?usp=sharing

    25. Re:No thanks by tehcyder · · Score: 1

      I'm going to cry myself to sleep and look for a new job after work tomorrow.

      You're supposed to look for a new job during work, and use up your sick leave allowance going to interviews.

      Don't they teach you kids anything nowadays?

      --
      To have a right to do a thing is not at all the same as to be right in doing it
    26. Re: No thanks by Anonymous Coward · · Score: 0

      Having lived in the same apartment for nine years also raised some eyebrows.

      No shit it did. It is not unheard of to rent an apartment but not live there. I wouldn't be surprised if they interviewed your neighbors.

    27. Re:No thanks by Anonymous Coward · · Score: 0

      Absolutely. Being your own start-up is empowering. You will have reasons to network with people in your community, and you will find yourself getting offers of work before you know it (contract work, for starters, but that can turn into a job later, if you decide you really want one). Take the situation into your own hands and you'll not only make changes that work for you, you'll feel better about yourself immediately.

    28. Re:No thanks by MooseMiester · · Score: 1

      I absolutely agree, but as the owner of a development company that listens to start up entrepreneur pitches this is not a plan for everybody.

      There is a huge freelance market place for responsible, hard working, decent honest folk. I'll never have a "real job" again, ever, and I make more money now than I ever made working for someone else.

      There's a fantasy out there that there is VC money flowing like water for every Internet based idea. There isn't. But services, so many of the independent contractors are really flaky, there is a huge opportunity... in every market.

      --
      Murphy was an optimist
    29. Re:No thanks by Anonymous Coward · · Score: 0

      I also ditched a good job thanks to a move to Salesforce Apex. An awful language. I wrote a document about the experience. I think it's a good laugh.

      https://docs.google.com/document/d/1piRkevGOfv1GFcqFb5fRFs4yUIFMK9a-mRW82EJzMQ8/edit?usp=sharing

      That should be required reading for anyone considering a job working with the terrible Salesforce platform. It is half-baked and fails in so many ways it is ridiculous. The only reason anyone uses that steaming pile of shit is because it smells good to C-level executives. Oooh! Look at the demo! Shiny stuff and tons of buzzwords!

      Some of the issues you wrote about are better now, but 95% of it is spot-on. Specifically, governor limits have been relaxed the past year or so but the 100 query limit is still firmly in place. The Winter 2015 release has a few things that are nice in the Salesforce world, but laughable in the real world. They are still years behind the rest of the industry. Salesforce developers are still at the whim and mercy of the Salesforce company to implement things that make them more productive.

      Also, you missed the #1 missing feature: debug mode. I can debug my way through a Spring web application. I can debug through ASP.NET. Shit, I can debug assembler. Salesforce? Hahahahaha. No stepping through code for you! No inspecting variables for you! No breakpoints! Want to see the stack trace? Too bad! This alone is a deal breaker for me.

    30. Re: No thanks by Xest · · Score: 1

      Probably depends on the tool stack in question.

      I moved from projects C# w/ASP.NET MVC, to PHP with Zend, on to a project using Java and Spring, then back to C# w/ASP.NET MVC as if there wasn't really a difference over the course of about 3 years, because HTTP is HTTP, and MVC is MVC and the syntax differences and configuration differences are a few days learning at most.

      It really depends on whether the technology in question follows a common pattern or is something wholly obscure. But most things like web frameworks, ORM frameworks, GUI frameworks, graphics libraries, messaging technologies and so forth follow fairly familiar patterns. Chances are if you know one, then moving to another just isn't very difficult.

      Programming concepts transfer between the languages making new languages easy to learn, whilst design patterns transfer between technologies making technologies easy to learn. The problem is that most developers don't know their design patterns (and underlying technologies like the HTTP protocol) and don't obviously grasp how to spot what is being used where.

    31. Re:No thanks by Xest · · Score: 1

      I'm having a hard time understanding why your company has a counter productive set of business rules that force you to not be able to test a new version of a prototype R&D system for 2 weeks is a C# problem. Though your estimate of 2 days to do the code changes seems a little steep given that retargetting to .NET is normally just a case of changing a drop down list option and that that's sufficient for 99.9999% of projects unless you do some weird and unusual things.

      I'm also not sure how it's C#'s fault that your company has decided to change it's database abstraction layer for seemingly no other reason than because it's funny is a C# problem too.

      MVC? sure, but what's new about having to decide about sticking with an old stable version and selecting a new version with new features, but requiring some code updates? That describes 99% of frameworks out there.

      It sounds like your company is stuck in a transition period where it's trying to move forward but is in many ways failing to manage it well, jumping ahead to the latest and greatest simply for the sake of it. It sounds like you don't like change, and wish you could still just COBOL and C++ away until retirement without ever having to learn anything.

      The problem is even the folks behind C++ realise it's gotta change, and if you hadn't hidden under a rock you'd know that C++ has changed more in the last 5 years than even C# has.

      Unfortunately it's the price of progress. You either live with it and deal with it, or you get left behind. Just please stop telling people that being left behind is somehow good for their careers. It's not, it's really just not.

      But a point you made is worth addressing a bit more thoroughly:

      "The technologies packed around C# and .NET in general are targets that move so fast that if you're out of the game for 2 years, even though you could probably pick up and run with the new stuff within a week or less, you're likely going to be competing with hundreds of applicants that are fresh and in the game with the current tech already and will (in theory) be off and running on the first day at their desk."

      I agree, and I've seen this too. But realise that not all companies are this stupid, and those that are aren't the ones you want to work for. Is it annoying that you have your time wasted by them because they're looking for someone who called a single method in an exact way in a framework with thousands of functions last week and may not know anything about the rest of the framework whilst foregoing the candidate that knows 90% of the rest of the framework inside out and so is infinitely more qualified but has been felled by a stupid interview mechanism? Yeah it is. But it's just part of job hunting and some companies are just shit at recruiting and have no idea how to spot talent - don't count it as your loss, it's their problem and their loss, they're the ones that the odds are will end up with countless highly inept people.

    32. Re:No thanks by RavenLrD20k · · Score: 1

      Nothing of what I said was to indicate a problem with C# itself. It was to showcase why HR departments would be hesitant to hire someone who presumably hasn't touched C# in a professional environment in the last 2 years; especially when you consider that going into an interview you are directly competing with people who have (supposedly) been in the thick of C# and rolling with its changes consistently for the past 5-10.

      Also, you seem to misunderstand me. Just because my knowledge of the old and arcane gives me a little extra green to work with than most everyone else at my level on this side of the hall, and co-workers are more than happy to have me build a few (very few) small applications for the Mainframe to bypass some tape, doesn't mean that I am a COBOL or C++ developer. 97% of my code for the company is C#, and that's the way I like it (I'd like it better if they'd give me the 20% leeway like Google does where I can work on my own side projects...but luxuries notwithstanding). For my hobbies, that's where I like to get into the old and/or low level tech, playing around with assembly, building microcontrollers, building linux for the microcontrollers... using assembly to turn on LEDs using the microcontrollers... fixing/maintaining/accessorizing my bikes (using projects built with the microcontrollers)...building Arc reactors...robot armies. You know, the normal things for hobbies.

      As far as my company's philosophies go, we tend to favor truly Legacy equipment. This is because upper IT management consists entirely of those who were promoted off of Mainframe development so they required a bit of convincing to approve of our team extending content management into a new paradigm (excuse the buzzword, but in this instance it fits best. The direction we advocated for, and now have the approval to move in, is a huge departure from the momentum and philosophy of the rest of the company). As such, as a team we decided to target the newest possible frameworks (at the time we started) for mostly brand new applications to mitigate the level of obsolescence we face when we come out of the gates with the new production systems that will still rely heavily on data stored and processed on our current(Server 2k8) and Mainframe(30 year old AIX) systems.

      And I actually just got the chance to look at the code for the application (essentially a logger with email and database functionality) that we are porting from the current system to the R&D one. It turns out that it was a bad example to use in this case and for that I apologize. The application was written in VisualBasic for .NET 2.0. It was initially written at a time when the Windows side of the company had the requirements that everything had to be in VB. Our team convinced management to start permitting the use of C# and took initiative to start updating existing applications to use the language and incorporate additional features that weren't implemented in the current versions. Because the logger is stable and works perfectly to what's needed, it has thus far been overlooked, and we are probably going to re-write it to be a better fit to the new environment once everything else is in place and more time is available to put into it.

    33. Re:No thanks by herbierobinson · · Score: 1

      There is still a lot of commercial software written in COBOL -- and as you say, almost everyone who knows it is retiring any time now.

      Even back before the Y2K crisis at the turn of the century there was a shortage of COBOL programmers. Consultants were getting 2-3x the normal rates for fixing COBOL programs.

      The same is also true of Fortran; although, it's close enough to other languages that most good programmers can things done if they have to.

      --
      An engineer who ran for Congress. http://herbrobinson.us
    34. Re:No thanks by Xest · · Score: 1

      "Nothing of what I said was to indicate a problem with C# itself. It was to showcase why HR departments would be hesitant to hire someone who presumably hasn't touched C# in a professional environment in the last 2 years; especially when you consider that going into an interview you are directly competing with people who have (supposedly) been in the thick of C# and rolling with its changes consistently for the past 5-10."

      I've worked in Java, C#, C++ and PHP roles and I understand what you're saying here, but honestly I never found moving back to C# (which is what I tend to gravitate back towards each time I end up on jobs that don't use it) to be a problem - if I know I'm applying for C# roles and haven't touched it in a couple of years then an hour or two of reading is plenty enough to get you upto speed, but you do need that strong pre-requisite knowledge of C# in the first place.

      In fact, last time I was asked to do one of the upto 3 hour long IKM tests on C# 4.0 for a recruitment test I scored 99.6%, despite having been working on a PHP project for 18 months prior.

      It's worth reading books like C# in Depth for anyone working with C# because it gives you the background and evolution of the language - if you're comfortable with that, then learning what the latest version adds is trivial. The same extends to all the frameworks like MVC which I've used since it was in beta when I was initially evaluating frameworks. It's changed, but it's really not changed that much or enough to cause any particular headaches. I had my own implementation of Areas before they came along officially and you just choose to stick with your implementation or port over, neither was a particularly big deal but I tend to prefer sticking to the official path in a framework where possible so I switched over.

  2. Portmasterz luv R by Anonymous Coward · · Score: 4, Funny

    You haven't lived until you've ported a 3-D shooter like crysis over to R!!!

    1. Re:Portmasterz luv R by Anonymous Coward · · Score: 2, Informative

      You haven't lived until you've ported a 3-D shooter like crysis over to R!!!

      This is a collection of R games and other funny stuff, such as the classical Mine sweeper and sliding puzzles.

    2. Re:Portmasterz luv R by Anonymous Coward · · Score: 5, Funny

      i would think a pirate themed game would be better suited to that language

    3. Re:Portmasterz luv R by Anonymous Coward · · Score: 0

      Someone should port The Curse of Monkey Island to aaRrrrrrrrrrrrrr!

    4. Re:Portmasterz luv R by turkeyfish · · Score: 1

      If you love games and group theory then check out

      http://www.wolfram.com/broadca...

    5. Re:Portmasterz luv R by Anonymous Coward · · Score: 0

      No, you haven't lived until you've ported python over to R!!

  3. C++ by Anonymous Coward · · Score: 5, Insightful

    No one knows it, really.

    1. Re: C++ by Anonymous Coward · · Score: 0

      Speaking of that, if anyone knows good resources for transitioning from classic c++ to c++ 11, it would be good to hear. I saw a video with Bjarnes and it looked significantly different

    2. Re:C++ by Marginal+Coward · · Score: 0

      Which makes me wonder...is the STL such a mess because Alexander Stepanov didn't understand it? Or was it because he did? Maybe somebody should ask him.

    3. Re:C++ by Anonymous Coward · · Score: 0

      STL sucks, I still have to do single character input and output from files, so much for getline BS

    4. Re:C++ by Jeremi · · Score: 2

      Which makes me wonder...is the STL such a mess because Alexander Stepanov didn't understand it? Or was it because he did?

      I imagine he didn't understand what he was getting himself into until it was already too late to stop. If you haven't ever experienced the "oh dear God, what is this abomination I have created?" moment, you're not yet properly a C++ programmer. ;)

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    5. Re:C++ by Anonymous Coward · · Score: 2, Informative

      The STL is not an official part of C++, it is a 3rd-party library written by Alexander Stepanov.

      The C++ Standard Library, which was added to C++ after the STL was created, is what is now part of C++. The STL and the C++ Standard Library are not the same thing even though the C++ Standard Library was designed to be very similar to the STL.

      For more insight:
      http://stackoverflow.com/questions/5205491/whats-this-stl-vs-c-standard-library-fight-all-about

    6. Re:C++ by HornWumpus · · Score: 2

      not yet properly a programmer.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    7. Re:C++ by Anonymous Coward · · Score: 0

      I've never used it for real work enough myself, and maybe they're all transcendent geniuses so it never happens, but it sure seems like a programmer could end up in that situation after they decided to write their application in a domain-specific language of Lisp macros.

    8. Re: C++ by jythie · · Score: 1

      Anything listed in a 'how to transition' document is probably a laundry list of things to avoid for at least another decade.

    9. Re: C++ by Anonymous Coward · · Score: 0

      The C++ Programming Language by Bjarne Stroustroup, updated for C++11. Good book.

    10. Re:C++ by serviscope_minor · · Score: 3, Insightful

      The STL isn't a mess.

      For general algorithmic code, it's the nicest library in any imperative language, bar none. I challenge you to find a better one.

      --
      SJW n. One who posts facts.
    11. Re:C++ by phantomfive · · Score: 1

      If you haven't ever experienced the "oh dear God, what is this abomination I have created?" moment

      LOL "well that was an interesting attempt, guess I won't try that again....."

      --
      "First they came for the slanderers and i said nothing."
    12. Re:C++ by phantomfive · · Score: 1

      The STL isn't a mess. For general algorithmic code, it's the nicest library in any imperative language, bar none.

      If you're saying nicest because you think it's the most efficient, then you probably haven't done much profiling on it.
      As far as ease of use and nice API, C# and Java both beat C++.

      --
      "First they came for the slanderers and i said nothing."
    13. Re:C++ by david_thornley · · Score: 1

      Your comment presupposed that the STL (or, presumably, the container/iterator/algorithm parts of the standard C++ libraries) is a mess. I've been using it extensively for more than five years, and I really like it.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    14. Re:C++ by Marginal+Coward · · Score: 1

      Python has a much cleaner approach to generic programming, for example. Isn't Python an imperative language? Maybe it isn't fair, though, to compare a freshly designed dynamically typed language to a statically typed language which was constrained to be backwards compatible with a much older language that never anticipated generic programming as we know it today. In that context, maybe my term "mess" shouldn't be taken as a pejorative - though I'll confess that I meant it that way. :-)

    15. Re:C++ by Marginal+Coward · · Score: 2

      I've only used it for longer than five years, but only intermittently. I keep hoping it will grow on me. ;-)

      The basic problem for an intermittent user like me is that the syntax seems ugly and non-intuitive. (Note to moderators: YMMV.) For that reason, I have to keep referring to docs or my own prior examples every time I do anything. But maybe like Lady Gaga, it eventually looks beautiful to it fans.

    16. Re:C++ by serviscope_minor · · Score: 1

      Python has a much cleaner approach to generic programming, for example.

      more OO than generic I think. It's not remotely type safe in the way C++ is.

      Besides it doesn't have a standard library anything like the STL. C++ certainly has messy corners no doubt, but so does python, suc as the 2.x to 3.x upgrade.

      --
      SJW n. One who posts facts.
    17. Re:C++ by serviscope_minor · · Score: 1

      As far as ease of use and nice API, C# and Java both beat C++

      Um ORLY?

      So sticking in the scope of the STL, which is what you may note I specified, how does the C# and Java APIs beat C++ for algorithmic code. For example, I don't recall Java ever having a linear time selection algorithm in it's library. It may do now, but it took many, many years for it to arrive. I don't believe java has a binary heap in the library either.

      So for a starters, Java (no idea about C#) is or has until recently been missing some very fundemental algorithms. And as for the API, the lack of operator overloading means that library types always are second class citizens compared to builtin types. Unlike C++.

      OK, so I've given some reasons why the STL is good. Your turn to defend your choice.

      --
      SJW n. One who posts facts.
    18. Re:C++ by ShakaUVM · · Score: 1

      >STL sucks, I still have to do single character input and output from files, so much for getline BS

      Gah, I/O in C++ is so horrible. In just the last month I've come across the following:

      1) No platform independent way to do non-blocking I/O.

      2) No iostream-compatible way of doing dup() or dup2(). You can change the buffers on iostreams, but this is not the same thing.

      3) Just how shitty iostreams are at processing input files in a fault tolerant manner. On any major project, I always seem to just drop down to reading files one character at a time.

    19. Re:C++ by K.+S.+Kyosuke · · Score: 1

      "Generic" doesn't necessarily mean static typing. Look at generic functions in CLOS.

      --
      Ezekiel 23:20
    20. Re:C++ by phantomfive · · Score: 1

      OK, so I've given some reasons why the STL is good. Your turn to defend your choice.

      Sounds fun.

      Java's had the binary heap since 1.5. C++ is missing important algorithms that Java has, like finding the bounding rectangle of a cubic 2D curve. (weird aside about the heap: in 2008 when I was looking for a job, I mentioned it in a job interview and everyone looked at me like I was an academic talking about useless things. In 2013 when I mentioned it in job interviews, people just expected me to know it. Apparently it gets a lot of use in big data).

      Ease of use: I've never seen a use of overloaded operators in C++ that impressed me. They're a negative as far as I'm concerned, prone to bugs and not particularly helpful. Java has the advantage of being the copycat when it comes to collections...C++ did them first, but Java was able to make the API cleaner. Also the error messages from the STL are sometimes baroque (although compilers are getting better).

      In the C# world, if you get a chance, look at LINQ and Entity framework. They are doing some interesting things there....that is, it's somewhat messy but I think there are some good ideas waiting to come out. Something like joining the ideas of functional programming and relational data concepts.

      --
      "First they came for the slanderers and i said nothing."
    21. Re:C++ by serviscope_minor · · Score: 1

      Java's had the binary heap since 1.5

      Huh OK. Do you have a link? I had a search around before this post but found nothing. I had the problem in the past before trying to find it. A link would be super handy. Out of interest, how does the heap make compatrisons between elements for ordering? Do you need to provide some sort of comparator function somewhere?

      C++ is missing important algorithms that Java has, like finding the bounding rectangle of a cubic 2D curve.

      Yeah, C++ doesn't have much in the direction of maths. The STL is limited to algorithmic stuff, pretty much.

      Ease of use: I've never seen a use of overloaded operators in C++ that impressed me. They're a negative as far as I'm concerned, prone to bugs and not particularly helpful.

      Well... ok this is getting away from the STL and into more fundemental things.

      Firstly Java does have overloaded operators: things like + work on byte, int, float, double etc. It doesn't have -user defined- overloaded operators. A pedantic sounding point to be sure but I think it's important.

      Doing maths in C++ is much nicer than Java because the operators you expect work with non scalar types like complex, vectors, matrices and so on. They also work for things like automatic-differentiation types, so you can take an expression ang get derivatives without rewriting it in terms of .add(), etc.

      Anyway, the nice thing in C++ is that I can write maths on screen which bears a very close similarity to the maths on the paper on which I derive it first.

      Basically, I like infix languages (I was pretty competent in PS, but never became fluent in prefix notation). Java is infix only for the exact set of things that the language designers thought you might need.

      Naturally, user defined operator overloading is a question of taste. Even if you agree that it's reasonable, which operators to overload is VERY much a question of taste.

      so, back to the STL. operator+ on strings is decent. It means that the library strings match string syntax in other higher level languages (Java has this baked in IIRC).

      operator[] on std::vector is important to me. The thing is that std::vectors are semantically arrays as are pointers. With overloading, you get the same semantics having the same appearance in code. personally, I think that's a good thing because things that work the same should look the same. It also allows easy genericisation, because you don't have to change the access method.

      Back to maths, of course the operators provided on std::complex turn it from an entertaiing curiousity to something usable.

      Everyone's favourite pet topic: operator on streams. Kind of cute, possibly too cute? Maybe but now in C++ idiomatically looks more like output rather than bitshifting, so it's all worked out. The result is a simple, clear syntax, at least.

      The thing is, the list isn't huge: this is a good thing. If it was, then someone would have gone overboard. User defined overloading should generally be used sparingly, but judicious use can make the code read much, much more pleasantly.

      I admit I'm not truly facile in Java. I'e used it a bit (and a bit more starting today: I have an android project I'm putting off by typing here), so I may be missing tricks. I have used a fair few languages though, and I have come to really appreciate the STL.

      But yes the error messages. Oh god. Only concepts can save us now. Why oh why oh why have they been punted yet again :(

      --
      SJW n. One who posts facts.
    22. Re:C++ by phantomfive · · Score: 1

      Huh OK. Do you have a link?

      I'ts called 'priority queue.' Every java object has a hash and equals method that can be overridden. And it's not like I love Java.

      --
      "First they came for the slanderers and i said nothing."
    23. Re:C++ by superwiz · · Score: 2

      Nah, C++ itself is the problem. Linus got it right. Instead of standardizing name mangling and RTTI, the language went in the direction of accomodating everyone who didn't think to use auto_ptr when returning containers from functions. The whole reason for virtual functions is to get around huge case statements resolving discriminated unions. But without standard discriminators for these discriminated unions (and relying on points into virtual table instead) these cannot be persisted or sent over the network. So you end up with people still using multiple enumeration schemes which cannot be even logged in a consistent way. Mess, mess, mess!

      --
      Any guest worker system is indistinguishable from indentured servitude.
    24. Re:C++ by Anonymous Coward · · Score: 0

      For general algorithmic code, it's the nicest library in any imperative language, bar none.

      Maybe, though some veterans may prefer Fortran instead.
      One of the glaring holes in the standard C++ libs is decent Unicode support. Besides algoritms, lots of code is meant to process/serve text data. XML and XHTML typically use UTF character encoding, so doing anything with this in standard C++ is difficult.
      This is mitigated by using Boost of course, but that still doesn't make it standard.

    25. Re:C++ by david_thornley · · Score: 1

      Ah, you're complaining about C++ syntax being ugly and non-intuitive? Are you also complaining about the wetness of water?

      It eventually becomes natural and intuitive. Whether it becomes beautiful, well, I haven't enough time in it to see that, and it's not looking likely to happen.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    26. Re:C++ by Anonymous Coward · · Score: 0

      > It eventually becomes natural and intuitive.

      It's contrived, which is the opposite of natural.
      It takes special effort to learn, which is the opposite of intuitive.

      Look, I have nothing personal against C++, but it's kind of an alien landscape to 'normal' human minds!

  4. ASN.1 isn't a programming language. by Dimwit · · Score: 5, Informative

    That is all.

    --
    ...but it's being eaten...by some...Linux or something...
    1. Re:ASN.1 isn't a programming language. by hax4bux · · Score: 1

      I spit coffee when I read the summary. I have a long background in network management and ASN.1 (by itself) won't get you anywhere.

    2. Re:ASN.1 isn't a programming language. by Anonymous Coward · · Score: 0

      The article agreed.

      ... followed by a data-modeling language called ASN.1, which isn’t a programming language, but rather a language for modeling and describing data.

    3. Re:ASN.1 isn't a programming language. by disambiguated · · Score: 1

      Neither will Matlab or Mathematica. If you don't know the mathematics behind whatever the hypothetical employer needs, knowing those languages is pointless. On the other hand, if you do understand the mathematics (e.g. finite differences, finite elements, etc.) but don't know Matlab or Mathematica, but instead know C++ or Python or Fortran, then picking up Matlab or Mathematica shouldn't be a problem. This is just another example of overly-specific job requrements.

    4. Re:ASN.1 isn't a programming language. by Anonymous Coward · · Score: 0

      You're wrong.

      Matlab is used in some industries to make models to help either refine or validate designs, both as pre-cursors to the implementation proper, or for verification.

      I once worked somewhere where we had a team working on Matlab to produce the models against which Verilog simulation runs were tested. That was a big expensive project targetting an ASIC, and the Matlab guys were crucial.

    5. Re:ASN.1 isn't a programming language. by turkeyfish · · Score: 1

      Matlab and Mathematica have very different approaches to linear algebra. The former is primarily a procedural oriented language. The later is a functional rules based language. Although one can program procedurally in Mathematica, one's programs will be extremely inefficient, difficult to compile and even more difficult to parallelize. Believe it or not, there is quite a bit more to learning a computer language than hubris for anything other than toy programs.

    6. Re:ASN.1 isn't a programming language. by disambiguated · · Score: 1
      I was replying to a guy who said "ASN.1 (by itself) won't get you anywhere", to which I replied "Neither will Matlab or Mathematica." Nobody is saying learning these languages is trivial or pointless.

      The point is that these are domain-specific languages, and there isn't much point in learning them, by themselves. Learning them in isolation isn't going to land you a job in the industries where they are used (and they're far from obscure.)

      Matlab is used heavily in computational science, engineering, and numerical computing. Nobody learns it for it's own sake. What will land you a job is knowing something about computational science/engineering and numerical computing. And at that point, learning Matlab (if you somehow haven't already!) is a bonus, not the point.

      Employers want statisticians who happen to know R, not R programmers who happen to know some statistics. They want MEs who happen to know Matlab, not Matlab programmers who don't know any engineering.

      If all you're going to bother learning is one programming language, and not some broader science or engineering discipline then you're much better off learning C++ or Python/NumPy, even if you're going to work in an engineering or science discipline. Write your general purpose code in a general purpose language and let the specialists consume it from their special purpose language.

      Believe it or not, there is quite a bit more to learning a computer language than hubris for anything other than toy programs.

      Hubris helps though, especially in the beginning! I've been coding in C++ for 25 years, and know plenty of Python, Fortran and Matlab, and a smattering of others; I'm well aware what it takes to learn a language.

    7. Re:ASN.1 isn't a programming language. by disambiguated · · Score: 1

      I'm going to go out on a limb and guess the "Matlab guys" were EEs? If so, well... that was my point. See my reply to turkeyfish below.

    8. Re:ASN.1 isn't a programming language. by Warshadow · · Score: 1

      It's also used in the aerospace industry a fair amount.

  5. ASN.1/SMI by adturner · · Score: 5, Informative

    Maybe ASN.1 and SMI are so little known as a programming language because... they're not a programming language? Don't get me wrong, it's good to know if you're reading/writing RFC's or dealing with network protocols (especially in the telco space), but they're not programming languages.

    1. Re:ASN.1/SMI by Anonymous Coward · · Score: 0

      Maybe ASN.1 and SMI are so little known as a programming language because... they're not a programming language? Don't get me wrong, it's good to know if you're reading/writing RFC's or dealing with network protocols (especially in the telco space), but they're not programming languages.

      Yep. Another worthless article from Dice's resident duh-veloper, Jeff Cogswell.

    2. Re:ASN.1/SMI by chuckinator · · Score: 2, Informative

      They are not turing complete programming languages, but they are domain specific programming languages. This is the same as making the argument that SQL is not a programming language since you only use it to define/insert/update/delete data in a database and cannot write general purpose programs without another tool that does provide a turing complete function set. ASN.1 and SMI are formats to describe messages and message data types to be used by another higher level protocol like SNMP, LDAP, X.509, etc.

    3. Re:ASN.1/SMI by Carewolf · · Score: 3, Interesting

      They are not turing complete programming languages, but they are domain specific programming languages. This is the same as making the argument that SQL is not a programming language since you only use it to define/insert/update/delete data in a database and cannot write general purpose programs without another tool that does provide a turing complete function set. ASN.1 and SMI are formats to describe messages and message data types to be used by another higher level protocol like SNMP, LDAP, X.509, etc.

      No, ASN.1 is a syntax like XML is, except more abstract, as it is never used it directly, it is not a programming language. That would be like saying digital numbers is a programming language.. You can stretch it and say they are forms of languages, syntax languages, but that still doesn't make them programming languages.

    4. Re:ASN.1/SMI by Feral+Nerd · · Score: 1

      Maybe ASN.1 and SMI are so little known as a programming language because... they're not a programming language? Don't get me wrong, it's good to know if you're reading/writing RFC's or dealing with network protocols (especially in the telco space), but they're not programming languages.

      ASN.1 is exactly what the name says, an abstract notation that describes the way encoding and decoding of data is done. Once you have written your description you feed it to an ASN.1 code generator that will generate an encoder/decoder and the classes/structures you defined in any supported language. The closest thing to ASN.1 I can think of off the top of my head is the Web Service Definition Language (WSDL) except with ASN.1 you can serialise data into highly space efficient binary packages.

    5. Re:ASN.1/SMI by Anonymous Coward · · Score: 2, Funny

      I see you are an HTML programmer.

    6. Re:ASN.1/SMI by T.E.D. · · Score: 1

      Maybe ASN.1 and SMI are so little known as a programming language because... they're not a programming language

      Obviously not so little-known either. I came in this story to post this same comment, and saw that no less than 2 people had beaten me there. Probably more.

      I'm surprised its supposed to be some kind of skill that pays big too. ASN.1 essentially attacks the same problem XML does (platform independent data representation), but in a binary rather than textual way. Saying you are familiar with ASN.1 is no more (really less) useful than saying you are familiar with XML, because what is important is what subset of it is in use by the system you are communicating with. A person unfamiliar with the specific application can not be expected to already know that, and the standard itself is documented well enough that any reasonably-proficient practitioner should be able to pick it up.

    7. Re:ASN.1/SMI by Tablizer · · Score: 1

      Slashdot has this same argument every time. In my book I still consider them "programming languages" even if they are not Turing Complete (TC), but there is no "official" definition either way.

      My argument for it not mattering much is that non-TC languages can add TC support without really changing what they are used for.

      For example, if they put TC in HTML, most would still use HTML for the same things they did before such that giving a completely different classification doesn't make sense. (Look Mom, I just reinvented Adobe ColdFusion!)

    8. Re:ASN.1/SMI by Obfuscant · · Score: 1

      ASN.1 is exactly what the name says,

      What, the first version of ASN?

      I'm going to wait for them to work the bugs out of the first eight versions, then I'm going to jump right on the ASN.9 programming bandwagon.

    9. Re:ASN.1/SMI by lgw · · Score: 4, Interesting

      SQL is actually Turing complete, oddly enough (or is with the common extensions that all the major DBs support). The C++ template definition language is also, frighteningly enough, Turing complete. But a "programming language" doesn't have to be Turing complete to be such, instead it has to be a way of specifying algorithms.

      What you're describing are formal languages. They are not programming languages because they don't define algorithms. Much like Boolean algebra is a formal language, but not a programming language.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    10. Re:ASN.1/SMI by angel'o'sphere · · Score: 1

      ASN.1 has a syntax like Pascal or Ada, mixed with some gimmicks from EBNF. No idea where your XML is coming from, it certainly has nothing to do with ASN.1.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    11. Re:ASN.1/SMI by angel'o'sphere · · Score: 1

      ASN.1 does not only describe messages but also the state machines on both ends of the connection.
      Hence: the protocol.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    12. Re:ASN.1/SMI by Anonymous Coward · · Score: 0

      ASN is obviously NOT a programming language because it stands for Abstract Syntax NOTATION, as opposed to something like APL which is A Programming Language.

    13. Re:ASN.1/SMI by Rob+Riggs · · Score: 1

      Well, they are not languages that you will be paid to program in either. The are domain-specific knowledge that a programmer in a common language (C++, Java) may need to know for a specific job. Companies may be looking for a "C++ programmer for network development that preferably knows ASN.1". If they are hiring an "ASN.1 programmer for network development that preferably knows C++", run away fast.

      --
      the growth in cynicism and rebellion has not been without cause
    14. Re:ASN.1/SMI by Carewolf · · Score: 1

      ASN.1 has a syntax like Pascal or Ada, mixed with some gimmicks from EBNF. No idea where your XML is coming from, it certainly has nothing to do with ASN.1.

      That is has a syntax is not what defines a programming language. A programming language is something you program in, ASN.1 is something you define binary data in, the same way you can declare data in XML.

    15. Re:ASN.1/SMI by disambiguated · · Score: 2

      HTML+CSS is Turing complete
      Then again, CSS makes C++ seem user-friendly.

    16. Re:ASN.1/SMI by Anonymous Coward · · Score: 0

      Usually you do not want to make, e.g., HTML Turing-complete because Langsec.

    17. Re:ASN.1/SMI by angel'o'sphere · · Score: 1

      You can not declare data in XML.
      You "write" data in XML, you don't 'declare" it. To "declare" data for XML you use XML Schemas or Relax NG.

      You are wrong about ASN.1 anyway. Ofc you can "program" in it. At least when I was in university describing state machines counted as programming. That is what you do in ASN.1: describing messages between two or more communication end points AND the state machines on the endpoints handling the communication.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    18. Re:ASN.1/SMI by Tablizer · · Score: 1

      I understand, but I was mostly addressing classification (category) issues rather than security ramifications. By the way, ColdFusion is only TC on the server side.

    19. Re:ASN.1/SMI by T.E.D. · · Score: 1

      Look at it this way, calling ASN.1 a language makes about as much sense as calling TCP/IP a language. For most of us, it makes more sense to call it a "protocol", and to call the thing you reach for to implement that protocol a "language".

    20. Re:ASN.1/SMI by superwiz · · Score: 1

      ASN.1 is a way to universally describe data. It's expressible in multiple languages though. So the gp is right.

      --
      Any guest worker system is indistinguishable from indentured servitude.
    21. Re:ASN.1/SMI by chuckinator · · Score: 1

      That's PL/SQL, not SQL.

    22. Re:ASN.1/SMI by chuckinator · · Score: 1

      Ah, script tags... I agree with you completely. Programming languages merely describe a format electronic data format that can be read in by a computer program or piece of hardware affecting the state of the system in some way. They do not necessarily need to contain procedural instructions, and the definition of turing complete simply determines whether that particularly language is description enough to implement general purpose algorithms. Also, a lot of computer security issues come up from these non-TC programming languages being fed into a system and running instructions anyway.

      As a theoretical example, someone's web server delivers a malicious image file that crashes the client image codec library and fools it into running code contains elsewhere in the malicious file. Doesn't matter whether that image was designed to contain procedural instructions or not if someone can fool the parser to run those instructions anyway.

    23. Re:ASN.1/SMI by lgw · · Score: 1

      Nope, you don't need PL/SQL. It depends on what you want to consider "part of SQL" but there are many clever hacks. If it's cool to store code in the DB itself, then all you need is some sort of WHILE or LOOP and a few lines of code that implement a universal Turing machine (preceded by creating the table and adding all the rows that represent the Turing machine, but that's all still SQL) . If you can construct a Cyclic Tag System, that's Turing complete (you can do that with subset of T-SQL: CTEs and Windowing functions - it's really surprising that's Turing complete but it is).

      Remember, it doesn't take much. Combinator logic is a very simple pair of rewrite rules that is Turing complete.

      --
      Socialism: a lie told by totalitarians and believed by fools.
  6. Encrypt it all by ggraham412 · · Score: 0

    More reason to encrypt everything digital. Should just encrypt by default.

    1. Re:Encrypt it all by ggraham412 · · Score: 1

      I am sorry - this was meant for another thread. (I am so embarrassed!)

    2. Re:Encrypt it all by MightyMartian · · Score: 1

      I'd like to see AES256 encryption implemented in Brainfuck myself!

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    3. Re:Encrypt it all by Anonymous Coward · · Score: 2, Funny

      Congratulations, you've been selected to be an editor at Slashdot!

    4. Re:Encrypt it all by 50000BTU_barbecue · · Score: 1

      Well, look at it this way: your comment is very well encrypted from the point of view of the other thread.

      --
      Mostly random stuff.
    5. Re:Encrypt it all by Anonymous Coward · · Score: 0

      wouldn't it be more steganography than encryption? as i doubt they would be looking for a reply to it in this thread.

    6. Re:Encrypt it all by pjt33 · · Score: 1

      Black hats everywhere would rejoice at the most exploitable timing oracles ever.

    7. Re:Encrypt it all by Anonymous Coward · · Score: 0

      Brainfuck programmers call AES256 encryption "pretty printing".

  7. Meh by Anrego · · Score: 5, Informative

    There's tonnes of niche technologies, though people don't tend to specifically target them so much as just kind fall into them and get lucky.

    I know someone that does pretty well maintaining stuff made with foxpro. In her words: "laugh all you want, it paid for my house". Doesn't mean it's a good idea to learn it at this point, but if you happened to luck out by sticking with a dying technology that never actually died, and are now one of a few people around who can call themselves experts in it, enjoy the benefits.

  8. Brought to you by Dice by Anonymous Coward · · Score: 0

    Dicevertisement?

  9. Also WTF by Anrego · · Score: 5, Informative

    Also, wtf dice.

    I get that you want to shitpost your own articles here, but throwing a campaign ID in the URL to track the success of your shitposting is going a bit far.

    1. Re:Also WTF by Anonymous Coward · · Score: 0

      Ha good pickup. If you look at the submitter, every other submission is about tech jobs...

    2. Re:Also WTF by Megane · · Score: 1

      Nerval's Lobster has been the cross-submission account since the days of SlashBI. Back then, his articles were even less relevant to the /. audience.

      --
      #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
  10. Old technology and legacy frameworks by Anonymous Coward · · Score: 0

    There seems to still be a market for older languages specifically, like Cobol. I'm sure there are better examples

  11. Once you know ASN.1.. by TechyImmigrant · · Score: 4, Insightful

    .. you understand why it must die.

    --
    I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    1. Re:Once you know ASN.1.. by Anonymous Coward · · Score: 0

      Can i get an OID?

    2. Re:Once you know ASN.1.. by Anonymous Coward · · Score: 0

      Oh yes. Especially the new class type notation nonsense.

    3. Re:Once you know ASN.1.. by FooAtWFU · · Score: 2

      What needs to die are the network equipment manufacturers who change the meaning of OIDs on minor firmware version updates (because they're autogenerated from some XML somewhere and someone deleted an element in the middle of a list).

      --
      The World Wide Web is dying. Soon, we shall have only the Internet.
  12. wut? by tehlinux · · Score: 2

    >lesser-known

    >MATLAB

    Really?

    --
    Most linux users don't know this, but the man pages were named after Chuck Norris. Chuck Norris fsck'ing hates noobs!
    1. Re:wut? by blueshift_1 · · Score: 1

      Matlab just isn't used that much by the IT workforce. Mostly non-software engineering. Sure it's pretty well known, but not that many programming jobs require or even mention it. Not to mention, what's all this "arrays' start at one... this isn't FORTRAN.

    2. Re: wut? by Anonymous Coward · · Score: 0

      I see le meem arrows here, but where's the funny is?

    3. Re:wut? by Marginal+Coward · · Score: 4, Insightful

      I actually read a post from the main Matlab guy about one-based arrays once. Basically, his point of view was that mathematics uses one-based matrix notation, and Matlab was intended to solve mathematical problems. That's a different design criteria than programming languages like C and its progeny, which are designed to run fast on a machine.

      So, maybe they're both right, though for those of us who do a lot of zero-based programming, it's a bit of a gear shift to do a little Matlab every now and then.

      And being one-based isn't the worst of Matlab's sins. It's badly designed up and down the line, except that as a system - that is, a combination of its language, toyboxes, and IDE - it's better for solving certain kinds of problems than anything else out there. So, I depend on it, but I only use it when it's advantages are compelling for what I need to do. [sigh]

    4. Re:wut? by Anonymous Coward · · Score: 0

      There is no language that does everything the most efficient. All of them have their niches.

    5. Re:wut? by Anonymous Coward · · Score: 0

      for those of us who do a lot of zero-based programming, it's a bit of a gear shift to do a little Matlab every now and then.

      It's worse than that. If you are calculating an offset, you need to constantly add or subtract one to find the right index.

      Like, if you had an array of audio samples from a CD, let's say interleaved from a wave file, in C you could use this expression:

      i = (44100 * 2) * 3; // 3 seconds in

      In Matlab you would need to add 1 to the above expression.

      It's not the end of the world, but it's just annoying.

      1-based indexing is probably fine for math, but for engineering 0-based is more practical.

  13. It seems like a good case... by Anonymous Coward · · Score: 0

    ...for not using niche technologies and esoteric programming languages, if possible.

  14. App Inventor 2 is repackaged Scratch by Anonymous Coward · · Score: 0

    With a few more modules.

    1. Re:App Inventor 2 is repackaged Scratch by jis5 · · Score: 1

      Actually no.

      Both Scratch and App Inventor provide a visual programming environment. Whereas Scratch is self contained (you run your programs "in Scratch"), with App Inventor you create Android Applications which you can package and distribute as any other Android program.

      -Jeff

      Disclaimer: I am a member of the MIT App Inventor development team.

  15. ASN.1? by istartedi · · Score: 1

    I thought ASN.1 was just a data representation, not a programming language. Went and googled a bit...um,.... seems to be right; but I only skimmed the Wiki. Of course you could represent code in any good data representation language; but why? I've heard people say that data is passed using ASN.1, but never "I wrote that application in ASN.1". That just sounds wrong.

    --
    For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
  16. MUMPS! by fhic · · Score: 2

    Or M as it's usually known now.

    You haven't suffered enough until you've had to debug someone else's "clever" M code.

    1. Re:MUMPS! by HuntingHades · · Score: 1

      Most of the "clever" M code I've seen is in that state due to limitations at the time it was written, such as the need to save as much space as possible due to storage/memory limitations. So comments are almost non-existent, variables are a single character, etc. Additionally, the original implementations of M didn't have a For loop command so a lot of old code is full of goto commands, with and without conditions, and the tags it goes to often have names that are 1 or 2 characters.

      "Modern" M still has its oddities but at least now there's no legitimate excuse not to include internal documentation and more verbose names for your variables and tags.

      As an aside, here's one of my favorite snippets of M code, even if all its good for is figuring out how deep the stack can go before it overflows
      s x="x x" x x

    2. Re:MUMPS! by TheGratefulNet · · Score: 1

      and DIBOL and BLISS.

      all from good old DEC.

      (rip)

      --

      --
      "It is now safe to switch off your computer."
    3. Re:MUMPS! by JoeRandomHacker · · Score: 2

      As to whether the language pays, MUMPS is actually used quite a lot in financial and medical applications. As a language, there isn't much going for it except the installed base; it reminds me a bit of BASIC. However, it does have built-in persistence, and can be made to store and retrieve data reallyreallyfast, to the extent that attempts to switch to something else tend to fail due to reduced performance. So if you can handle the language, there are places that will pay you to program in it, and given the typical application domains, the job would likely be fairly secure.

      Full Disclosure: set ^dayjob(me)="MUMPS Implementation Developer"

  17. How about Libre Office Basic? by 50000BTU_barbecue · · Score: 3, Funny

    For some reason I start playing with that. :)

    Any jobs out there?

    --
    Mostly random stuff.
  18. Not just flash in the pan by Anonymous Coward · · Score: 1

    Some of those listed languages have been around for a while BUT they are specific to one vendor and even one product.

    Which means, if you get tired of your current employer, it will be very hard to find another job. It also works both ways; who wants to learn a language where there aren't that many opportunities? I was stuck at one such shop and it was a BITCH to get out of. I taught myself C++, found a way to use it on the job* and I was able to talk my way into another job - this was in the 90s, BTW. Why does the decade matter?

    *Back then, you could do a little utility program on the job in something you are learning - like C++ - so that you can claim that you have "on the job experience". See, taking a class or learning on your own does not matter to employers - especially in 2015. Now, even that doesn't work so well.

    1. Re:Not just flash in the pan by Darinbob · · Score: 4, Insightful

      True. I'd hardly call MATLAB a little known language, it's very commonly used in EE circles, and I've seen it other places doing engineering or science. I've worked on a product that included lengthy MATLAB computations as a part of the build. MATLAB also has the problem of being a one-vendor proprietary product.

      But this is a Dice story after all. They seem to just love stories about "hey, here are some languages that aren't Java or C!" They forget that Slashdot is for nerds who actually know stuff and is not a site for job seekers.

    2. Re:Not just flash in the pan by ishmaelflood · · Score: 1

      matlab programmer here. $130k+super+6 weeks leave +18 sick days per year.

      Not a terrible gig.

    3. Re:Not just flash in the pan by tehcyder · · Score: 1

      What happens if you don't have 18 sick days in a year? Are you allowed to carry them forward?

      --
      To have a right to do a thing is not at all the same as to be right in doing it
    4. Re: Not just flash in the pan by Anonymous Coward · · Score: 0

      Oh yeah? I make $140k a year, 8 weeks leave, and 21 sick days. Plus, my wife is better at sex than yours.

    5. Re: Not just flash in the pan by Hognoxious · · Score: 5, Funny

      my wife is better at sex than yours

      Seconded.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    6. Re: Not just flash in the pan by apocalypse2012 · · Score: 0

      Yes, his wife is definitely better at sex than yours. Everyone knows that.

    7. Re:Not just flash in the pan by Warshadow · · Score: 1

      s/EE circles/Engineering in general

    8. Re:Not just flash in the pan by Anonymous Coward · · Score: 0

      Actually it's worse than that. This is another Jeff Cogswell story.

      He's kind of like the other Bennett. His crap gets posted here far less frequently than Bennett's but it's crap all the same.

      This is the guy who did a Java vs. C# performance test that involved creating two web applications running on completely different technologies with completely different frameworks that do completely different things under the hood (one far more lightweight than the other) and declared his performance results based on that.

      Jeff Cogswell is probably one of the single most hopeless developer bloggers to grace Slashdot and calling MATLAB little know is just further evidence of that.

      The worst part is that Jeff Cogswell's articles have potential, the ideas for articles he comes up with aren't actually half bad. The problem is that he's just too much of an amateur to pull them off an. To give the mandatory car analogy it's a bit like someone coming up with an idea for a new more efficient engine for Formula 1, entering a race with it, and then crashing within the first few minutes because they can't actually drive.

      DICE desperately needs to learn that we don't need Bennett, and we don't need Jeff. We need people who actually have something to teach us, and these amateurs who have overinflated views of their worth aren't it.

      Apparently it's not all bad though, he's now peddling himself as a teacher after a stellar career where each time he actually tried to work as a developer he seemed to give up within a year and move on:

      https://www.linkedin.com/in/je...

      You know how the saying goes, those that can, do. Those that can't, teach. So at least he wont be doing any harm in the real world by being trusted to write real actual software. We have that to be thankful for at least.

      Jeff Cogswell - the Bennett of the programming world.

    9. Re: Not just flash in the pan by Hognoxious · · Score: 1

      Can't comment, my memory's not that good.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  19. Source... by gunner_von_diamond · · Score: 4, Interesting
    An article from Dice.com. On a site owned by Dice.com. How about that. According to a Dice job search, there are not ASN.1 jobs out there. Learning ASN.1 will not

    secure you a good gig in a specific industry.

    Therefore,

    So is it really worth taking the time to learn a new, little-used language for anything other than the thrills?

    No.

    1. Re:Source... by phantomfive · · Score: 1
      Exactly. If I'm looking to learn a new language, it's because I want to learn something interesting about programming.

      A language that doesn't affect the way you think about programming is not worth knowing. — Alan Perlis

      Learning obscure languages to improve your employability is the wrong way to find a job.

      --
      "First they came for the slanderers and i said nothing."
  20. I would say yes, it is worth it by erp_consultant · · Score: 4, Insightful

    Here's why:

    1) If your skills are limited to commonly used languages then a potential employer has a large pool of people to choose from. That means that you have to compete against a lot of people for a given position. It also means that your rate will be lower because a larger labor pool will tend to drive down prices. If, OTOH, you choose to focus on niche markets it will have the exact opposite effect. Fewer people to choose from and, therefore, higher hourly rate. Essentially it puts you (as an employee or contractor) more in the drivers seat.

    2) It gives you something else to add to your resume.

    3) It might give you exposure to industries that you might not have had otherwise.

    4) It's fun :-)

    Having said all of that, I still think that it is important to have a solid grounding in Java or C/C++. Why? Well, for one thing it gives you a good foundation for tackling other languages. It also gives you something else to fall back on if the esoteric thing doesn't quite pan out ;-)

    1. Re: I would say yes, it is worth it by Anonymous Coward · · Score: 0

      For grounding in other languages, give LISP a shot ;)

    2. Re:I would say yes, it is worth it by DarkOx · · Score: 1

      The driver seat is a nice place to be but there isn't always car to ride in. I know a few guys who do things like RPG and PL/I and you know what they set they own rate and make a tonne of bank when someone needs them. The operative clause is 'when someone needs them' most of the time, they are out looking for someone who needs them.

      --
      Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
    3. Re:I would say yes, it is worth it by erp_consultant · · Score: 1

      That's a fair point and it's why I suggest keeping some C++ or such in your back pocket so you can ride out the ups and downs.

    4. Re:I would say yes, it is worth it by Megane · · Score: 1

      It would also probably be good if you enjoy moving to other parts of the country. The chance of finding a niche job in any particular city is probably rather low. When you're in the driver's seat, expect to do some driving.

      --
      #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
  21. ADA by Frosty+Piss · · Score: 1

    ADA

    --
    If you want news from today, you have to come back tomorrow.
    1. Re: ADA by Anonymous Coward · · Score: 1

      What? The American Dental Association? Oh, you mean Ada.

    2. Re: ADA by Anonymous Coward · · Score: 0

      Go fuck your self. In Ada.

    3. Re: ADA by Anonymous Coward · · Score: 0

      Congratulations on the correct usage. You learned something today.

    4. Re: ADA by RavenLrD20k · · Score: 2

      Here I thought he meant the Americans with Disabilities Act...

    5. Re: ADA by T.E.D. · · Score: 1

      Go fuck your self. In Ada.

      The whole point of the design of Ada is to make that exact activity very difficult to do.

      If you really want to go fuck yourself, C++ is the language for you.

  22. MM Director Lingo/ Authorware- NO by Anonymous Coward · · Score: 0

    'Nuf said.

  23. SNOBOL/SPITBOL . . . JCL . . .? by PolygamousRanchKid+ · · Score: 4, Insightful

    Is anyone here old enough to remember those languages . . . ?

    I don't think anyone ever started from scratch, writing a JCL program . . . you always just took an example, and fiddled around with it.

    . . . but then, when I needed to write a IP driver for ATM, the folks told me: Just look at the Ethernet driver, and follow that

    --
    Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
    1. Re:SNOBOL/SPITBOL . . . JCL . . .? by plopez · · Score: 2

      Yes. The dynamic binding of operations in SNOBOL was fun, in a funny sort of way. JCL however, despite its inverted logic, is not a programming language in the strict sense of the word.

      --
      putting the 'B' in LGBTQ+
    2. Re:SNOBOL/SPITBOL . . . JCL . . .? by Anonymous Coward · · Score: 0

      APL instead maybe.

    3. Re:SNOBOL/SPITBOL . . . JCL . . .? by Cro+Magnon · · Score: 1

      Yeah, I never thought of JCL as a programming language. It was just something I fiddled with to run batch COBOL programs.

      --
      Slow down, cowboy! It has been 4 hours since you last posted. You must wait another few hours.
    4. Re:SNOBOL/SPITBOL . . . JCL . . .? by HornWumpus · · Score: 2

      JCL? (Eyeball starts to twitch)

      Run away!

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    5. Re:SNOBOL/SPITBOL . . . JCL . . .? by Anonymous Coward · · Score: 0

      SNOBOL has pattern matching as 1st class language construct and still pretty unique and useful for certain problems after all these years.
      JCL on the other hand is definitely a DSL that is way pass its sell by date. While it has conditionals for decision making, it is not complete so good luck trying toimplement a predicate that needs a NAND operation (without outside help. horrible hack left as exercise to reader). Not missing it at all after having to deal with it regularly all through the 70's.

    6. Re:SNOBOL/SPITBOL . . . JCL . . .? by steveha · · Score: 1

      Is anyone here old enough to remember those languages . . . ?

      For a brief period I worked with SNOBOL. I was reading old SNOBOL programs and re-writing them in AWK.

      The AWK programs were smaller and simple to understand. The SNOBOL programs were hard to figure out... I would describe the process almost as "reverse-engineering".

      SNOBOL's design dates back to the bad old days. It has "goto" hard-wired into the language; it has "fields" where you put certain things in certain places on the line, and then the control flow changes via goto branching. One field is the "goto on success" field, another is the "goto on failure" field. I didn't like this.

      Even worse, the specific implementation of SNOBOL that we were using used simple recursion with backtracking for pattern matching, and it was possible for some patterns to consume unreasonable amounts of time. As a result, the SNOBOL contained a "heuristics" feature that would decide if a search seemed to be taking an unreasonable amount of time, and terminate the search early. Since there were valid patterns that could take that much time on valid inputs, there was also a global variable to switch the heuristics off, so you could force it to wait long enough to get a correct result if that occurred.

      AWK, on the other hand, compiled regular expressions into a deterministic finite state automaton that would make one state transition per input character. It was so much faster than the SNOBOL programs.

      So SNOBOL was hard to write, hard to understand, and had terrible performance. Other than that I guess it's okay.

      http://everything2.com/title/SNOBOL

      --
      lf(1): it's like ls(1) but sorts filenames by extension, tersely
    7. Re:SNOBOL/SPITBOL . . . JCL . . .? by lingu1st · · Score: 1

      SNOBOL evolved into ICON, which forked into Unicon. ICON used to be rather well known back in the day for its SNOBOL inherited pattern matching, goal-directed expression evaluation, generators, co-expressions, first-class functions and a very very fast byte-code interpreter. All before Windows was born :) It has an elegant and effective binding to X11 which works to this day, even under Mac OS X. It is my go-to language for personal projects.

      ICON is feature-frozen, but still maintained, and it is all in the public domain. It has a loyal following: http://www.cs.arizona.edu/icon

      Unicon is under active development, and introduces lots of new shiny kitchen sinks like objects and unicode. I don't use it....

  24. LOGO by h4ck7h3p14n37 · · Score: 4, Funny

    I'm currently working on my LOGO certification. I hear the pay can be good, especially if you've also got a background in Spirograph.

    1. Re:LOGO by Mryll · · Score: 1

      You could minor in LEGO

  25. sendmail.cf by iamacat · · Score: 1

    I can not even begin to describe goodness of the syntax. It's forever etched in my mind, right along goatse and tubgirl.

    1. Re:sendmail.cf by Megane · · Score: 1

      Then you were doing it wrong. You should have been editing the .m4 files to generate sendmail.cf, not editing sendmail.cf directly.

      Not that m4 isn't its own can of brain worms, but you can describe the typical mail site in a 15-20 line file, which is a lot easier to maintain than a 2000 line file with 15-20 lines changed from the default. And even much easier than trying to merge in updates to the "standard" sendmail.cf when upgrading to a new version.

      --
      #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
    2. Re:sendmail.cf by Anonymous Coward · · Score: 0

      Pfft. I still program in imake!

  26. q niche by MissMountain · · Score: 2

    $130,000 average salary. q language, an array language / database used for time series analysis http://www.timestored.com/b/fo...

  27. Yes. by Anonymous Coward · · Score: 0

    But put Microsoft Office Basic Macros and variations. Actually, buy a copy of MS Office to make sure you get the real thing - I've seen the VB macros die in LO.

    There are a LOT of small businesses out there whose back office is that platform.

    And don't listen to the peanut gallery here. they'll make fun of you, but you'll be crying all the way to the bank and you won't have to deal with the tech du jour nonsense that everyone else has to deal with.

    I have seen some really slick programming on those things - integrating databases, web services, UI, ... you can't be stupid.

    1. Re:Yes. by 50000BTU_barbecue · · Score: 1

      I'm not a programmer, that is, I never took any university classes on algorithms, discrete logic, etc. I'm a hardware guy.

      I don't know why I took on LO, it's a very simplistic IDE and quite frustrating, and the online help is useless.

      I picked up a french book on LO oooBasic and I'm getting along nicely, I think.

      --
      Mostly random stuff.
  28. SAS by QuantumPion · · Score: 1

    Used in many legacy apps of big corporations

    https://en.wikipedia.org/wiki/SAS_language

  29. FNORD compliance by Anonymous Coward · · Score: 0

    It get the job done.

  30. RMB by Anonymous Coward · · Score: 0

    Rocky Mountain Basic (RMB)

    1. Re: RMB by Anonymous Coward · · Score: 0

      I thought that's what Altair BASIC was

  31. Interesting parallels in IT as well by ErichTheRed · · Score: 1

    Coming from the IT/systems side of the fence, this isn't just limited to programming languages. There are tons of little niches in industries and technologies. The key to not letting a niche define you is to stay flexible. For example, I do systems work for airline industry customers. Think of every niche, legacy, arcane, backward standard, and it's there. Any one of these niches can be followed down so far into the expert level that you can build a career out of them. But, these things can change, and if you get too mired in the details and never pick your head up above the water, you can get lost. You wouldn't believe how complex something like tracking lost luggage or managing passenger data is once you peel off the covers...and a lot of that complexity is because of the massive layers of legacy stuff that have been built up over the years.

    My approach to my career has worked well so far: (1) be willing to learn a lot about a particular subject so you can do good work on it, (2) keep sharp by slightly changing the things you work on every once in a while, and (3) keep your eyes/ears open so you can figure out which trends to hop on just in case the current job dries up. It's difficult to do this, but not so bad if you really like learning all the time. If I ever get sick of working in my little corner of the world, I'm pretty confident that I would be able to pick up a job in another little corner pretty easily.

    Niches are everywhere, and often that translates into knowing about how an industry works at the insider level. Treating exposure like this as a learning opportunity is a good way to keep yourself marketable, and not just in your specialty field. Not being able to do this is a good way to brand yourself as a permanent generalist who doesn't have the desire/ability to dig in and find answers. Not trying to sound like a jerk, but there is a big difference between someone who can really dig into a problem and someone who just does what's in the manual.

  32. Get out the house? by JustNiz · · Score: 1

    >> learn a new, little-used language for ... the thrills?

    Thirills? wow. You kids of today... ...but It does make me all teary-eyed to remember when I was actually that enthusiastic about such stuff too.

  33. logo by Anonymous Coward · · Score: 0

    I get paid in sour patch kids to program in LOGO.

  34. ASN.1 was actually quite useful by Anonymous Coward · · Score: 0

    ASN.1 is a language which describes how to transfer or store structured information

    Yang, using XML and JSON also do this with the overhead/benefit of making it flexible, human readable text, and self describing.

    An old fashioned spec using a handcoded, binary protocol engine provides low overhead but requires wireshark to tell you what is going on.

    ASN.1 is kind of a middle ground.
          It is possible to build gadgets which are both low overhead and flexible.
          Too bad it's not more popular in the SDN and WWW areas.

  35. INTERCAL by Anonymous Coward · · Score: 0

    With the COME-FROM statement is my fav

  36. Any place that rolls there own analytics knows R. by technomom · · Score: 2

    Around here, knowing R can pay some bills. I'm surprised it isn't listed among the Math languages.

  37. Skip MATLAB, Learn R by Kagato · · Score: 4, Interesting

    IMHO Matlab is a dead end. R is a similar language in the statistics and big data fields and the base spec and sample programs are open source. If you're a Math or Stats major you're likely getting a sample of R in school already because the tools are free. In the paid space big data tools like HP's Vertica will split up complicated R functions across it's cluster and crunch the data much faster than Matlab.

    1. Re:Skip MATLAB, Learn R by 0100010001010011 · · Score: 2

      Matlab is a dead end if you use it for statistics.

      Matlab is not a dead end if you use it for a ton of other stuff that there are toolboxes for.

      I've used matlab at work for almost a decade and never come close to using it for something R was good at.

    2. Re:Skip MATLAB, Learn R by Fortraniac · · Score: 1

      1. R is slow and clumsy. 2. Matlab skills are mandatory in virtually any engineering field. 3. Matlab is used for far more than "statistics" and "big data". It is particularly useful for dynamic systems modeling and controls design. For example, if I want to draw the root locus of a system with a known open loop transfer function, I can do it in one line in Matlab. I can't do it in R.

    3. Re:Skip MATLAB, Learn R by joe_frisch · · Score: 2

      Different languages are good for different things.
      At SLAC we use Matlab extensively for accelerator modeling and control, It has a lot of very nice features (with add-ins) for signal processing, feedback design, linera algegra and general numerical analysis (numerical integration etc.). It has some nice parallel processing tool boxes and can be very high performance for vector applications. I also has excellent graphical and debugging capabilities.

      I've used Matlab and Python (Pylab, numpy) and find Matlab to be a much better tool for this type of signal processing problem, and worse at other jobs. I haven't used R, but I believe it is optimized for statistical analysis which is a different sort of problem.

      The wide variety of tool boxes are a big help for many types of problems.

      Like most specialized languages it is very good at doing what it is designed to do, not so good for other applications.

      The cost of matlab is not significant compared to the cost of the person who is using it. (A FTE here costs the lab ~$250K/year, so a few thousand for a Matlab license is lost in the noise).

    4. Re:Skip MATLAB, Learn R by Anonymous Coward · · Score: 2, Insightful

      Nobody does signal processing in R - it's all done in Matlab.

      Nobody does statistics in Matlab - it's all done in R or SAS or SSPS.

    5. Re:Skip MATLAB, Learn R by ishmaelflood · · Score: 3, Insightful

      matlab programmer here. $130k+super+6 weeks leave +18 sick days per year. So, as dead ends go, not too shabby

      In parts of the automotive world matlab is used for algorithm development (for example for image recognition for anti collision systems) which can then be automagically cross compiled for the target embedded processor.

    6. Re:Skip MATLAB, Learn R by willy_me · · Score: 1

      Hell no. Matlab is much faster for what it does. If you want an open source language to compete with Matlab then look at Julia (julialang.org). It's a great language and even faster then Matlab.

  38. Symptom of thinking vocabulary is the key by raymorris · · Score: 4, Insightful

    Just another symptom of thinking that software architecture and development is mostly about a language. Yes, knowing the language used in your field is important - that's why lower-level college classes have plenty of vocabulary. A developer should know the words, abbreviations, and symbols used in software development, just like an archeologists should know the words, abbreviations, and symbols used in archeology, and a fire marshall should know the words, abbreviations, and symbols used in fire protection. None of these fields is ABOUT the vocabulary, though. The words and symbols are used to record what you've done, but they are ancillary to the field.

    Really, saying "C# developer" is like saying "Spanish anthropologist" or "English physicist". Maybe Stephen Hawking only speaks English - a certain German guy named Al Einstein showed how much language matters when he came to the US.

    Sometimes I forget what language I'm writing in, and end up with excellent, reliable code written in two languages at once. Sometimes, most of my functions will compile and run in two or three different languages = X + 3 is x + 3 in most languages.

    1. Re:Symptom of thinking vocabulary is the key by Roger+W+Moore · · Score: 5, Insightful
      You are absolutely correct. I laughed when I read the line in the article which said:

      For example, if you master a couple math and science programming languages, you might find opportunities as a programmer working at a scientific research center.

      since it shows how clueless the author is about programming languages in science. When I am hiring a postdoc I could not care less which programming language they have used: if I am looking for someone with technical skills all I care about is that they have experience programming. The delay in learning whatever specific languages and packages we use is minimal so long as they have a strong technical background.

    2. Re:Symptom of thinking vocabulary is the key by Anonymous Coward · · Score: 1

      I do not agree, suppose your candidate has strong experience in Fortran,
      and only that, as it is common in some science domains. Then, he will have very
      hard time getting proficient in, let's say, Mathematica.

      If instead your candidate knows well enough Common Lisp, Assembly, Perl, C and was
      exposed to O.O.P. then, the large majority of other programming languanges will probabily
      surprise him not so much.

    3. Re:Symptom of thinking vocabulary is the key by Roger+W+Moore · · Score: 3, Insightful

      Then, he will have very hard time getting proficient in, let's say, Mathematica.

      Why do you assume that? I would agree that it is hard to imagine anyone with a strong technical background only knowing Fortran in this day and age but, should such an individual exist, I would not see it as a barrier to hiring them. During my time as a student and a postdoc I taught myself Matlab, Perl, C, C++, Python, Alpha CPU assembler, SQL, ROOT and an interesting variation of BASIC which ran on an old Caviar CAMAC crate controller from the late 1980s! Learning a new language when you already know how to program probably takes a day for basic proficiency and a bit longer to get fully up to speed. It's far more important that you have someone who understands the science and has a strong technical background: if you have that the language is easy to add, if it isn't then you do not have someone with a strong technical background.

    4. Re:Symptom of thinking vocabulary is the key by superwiz · · Score: 1

      I don't remember the full list of programming languages that I use or have used at some point (yeah, like you remember that Expect script that you wrote 15 years ago), but I can promise you that Mathematica is, in fact, different. It lets you mix the compile-time and run-time constructs (and treat them pretty much the same). The only think that is even close to being as revolutionary as Mathematica is Python's "yield" keyword (which allows functions to not only be a substitute for a stack abstraction, but also for a queue abstraction).

      --
      Any guest worker system is indistinguishable from indentured servitude.
    5. Re:Symptom of thinking vocabulary is the key by Roger+W+Moore · · Score: 1

      Mathematica does not sound that unique - CERN's ROOT allows you to mix compile-time and run-time constructs in a very complex, not-well documented and extremely buggy environment. I imagine that if you can survive that Mathematica will be a breeze by comparison. As for major paradigm shifts the switch from procedural to OO programming is far more major than the addition of a feature like 'yield' to Python. Indeed I'd put meta-classes (for Python) or templates (for C++) as a far more major language feature than 'yield'.

      However this misses the point somewhat which is that features like 'yield', meta-classes and templates are not needed to write any program. They may make your code more elegant and easier to maintain in the right circumstances but you do not need them. The priority is to do good science not write the most efficient and beautiful code that anyone has ever seen (although that's certainly nice if you can manage it). Hence knowing all the intricacies of a language is unnecessary: you just need to know enough to do the job well.

    6. Re:Symptom of thinking vocabulary is the key by superwiz · · Score: 1

      OO is a nuisance. If C just added direct access to the return value space instead pushing the whole return value on stack, OO would have been an esoteric footnote in some theoretical comp sci book. Instead, you get a paradigm which mixes data and code in one name space and completely takes attention away from the duality between data and functions. Oh, and without yield, no one would have heard of Python. You'd just here the gripes about whitespace being overly restrictive from everyone who wants braces. yield is what makes Python elegant. Metaclasses (ie, post-creation templates) and descriptors (ie, pre-creation templates) are actually somewhat cludgy. You understand that you can do everything in Python without ever having to worry about creating a single queue simply because of yield, do you not? Do you really not see how that simplifies code?Breadth-first tree traversal via simple recursion? Show me what other language will let you do that.

      --
      Any guest worker system is indistinguishable from indentured servitude.
  39. "Programming" Excel by Anonymous Coward · · Score: 0

    A neighbor of mine makes a great living programing "Excel" spreadsheets. Being a asm/c/c++ engineer for 35+ years, I don't have the heart to tell him that there are different leagues of programming.

    1. Re:"Programming" Excel by joe_frisch · · Score: 1

      Nothing wrong with Excel. For some types of problems it is a very efficient tool. It takes quite a bit of skill to write a complex spreadsheet that can be used effectively by other people.

      Excel and other spread sheets are good tools where the user is entering a variety of data in different fields, and the looking at the results. You could of course write the functionality in another language, but Excel provides the user interface for free.

  40. Mathematica is Wolfram by Kensai7 · · Score: 1

    There is no language called Mathematica. Mathematica is an implementation of Wolfram language. At least that's what they want you to call it now. :p

    --
    "Sum Ergo Cogito"
    1. Re:Mathematica is Wolfram by turkeyfish · · Score: 1

      Actually, the "Wolfram Language" is a relatively new component of the Mathematica application, and in fact the Wolfram Language platform is built from the atomic and composite components of Mathematica. Consequently, it is probably just as meaningful to regard Mathematica as a language, particularly since one expresses (in a very literal sense of the word, since everything in Mathematica is an expression), there is no "Wolfram language" without it.

      My sense is that recently, Wolfram recognizes that function development has proceeded to a point, where the various components can be considered a language since it is has a syntax, a grammar, and that together create contextual meaning that is actually much larger in scope than previous versions of Mathematica, particularly its newer cloud, alpha based, and computable document format components. Thus, calling it a language is a useful marketing device.

    2. Re:Mathematica is Wolfram by Kensai7 · · Score: 1

      IIRC, this is what Wolfram himself wants to pass as a message... Wolfram is the language (even if it was previously Mathematica) and Mathematica the major implementation/platform.

      --
      "Sum Ergo Cogito"
  41. Haxe by Anonymous Coward · · Score: 0

    Haxe is a dream for cross platform development and has been paying the bills for me for a good 6 years now.

    http://www.haxe.org/
    https://github.com/HaxeFoundat...

  42. what a shitty article by slashdice · · Score: 1

    Oh, it's from dice. Where the fuck did we hire that moron from? Oh, it's from dice.

    Well, shit.

    Folks, this is why you shouldn't dog food.

    --
    Copyright (c) 1990 - 2014 Dice. All rights reserved. Use of this comment is subject to certain Terms and Conditions.
  43. Still no jobs for LOLCODE programmers by genner · · Score: 1

    I can't has career.

  44. ...now this again. Learning programming languages? by Mirar · · Score: 3, Insightful

    This is brought up now and then on Slashdot. Treating programming languages like something actually hard to learn.

    Specific programming languages are irrelevant.

    Programming paradigms and levels are relevant. But if you know a language in one paradigm, it's easy to learn another one. If you know C, the step to Python is fairly close. Lisp or Erlang is a little more distant, but it's not impossible far to learn in a few weeks.

    If you can't pick up the basics of any computer language in a few weeks, I get the impression you're not really sure of what you're doing.

    So it's irrelevant if you already know the language. Except for very confused recruiters. The question is, can you get good at the skills needed at the job within a few weeks? You wont know the projects or the libraries in the new company anyway, picking up a new computing language isn't going to be the hard part.

    But then again, ASN.1 isn't a programming language more then TCP/IP is a programming language, so maybe the question is more confused than that.

    (Languages I have encountered in my professional career: V2 BASIC, 6510 assembler, ABC8* BASIC, dBase 4, x86 assembler, 680x0 assembler, Batch files, Pascal, C, C++, Shellscripts, Pike, ECMAscript, Java, Flash, ARM assembler, and Python. In that order. I have done ASN.1 in the form of SNMP, but I really don't think I would call it a programming language.)

  45. Programming languages I have known by Anonymous Coward · · Score: 0

    Programming languages I have known, made a living at, and occasionally loved (or hated):

    MS Basic
    Quick Basic
    Business Basic
    dBase-II
    dBase-III
    FoxBase (dBase clone)
    ZIM (Entity-Relationship database)
    C
    C++
    PL/M
    Java
    JavaScript
    PhP
    HTML
    Transact-SQL
    ADA
    PL/SQL (a subset and extension of ADA)
    Cobol
    Dibol (DEC's business language - ANSI standard)
    Logo
    bash
    csh
    ksh
    DOS CMD.COM and Windows CMD.EXE
    Perl
    Python
    .
    .
    .
    And several varieties of assembler.

  46. If you learn, you'll compete with experienced folk by Anonymous Coward · · Score: 0

    The problem with learning an obscure or obsolete programming language is that you start with zero experience, and you're competing with all the folks who have lots and lots of experience and can't find work. In general, that's the problem with job retraining. Some laid-off 50-year-old guy goes to school and learns something like accounting or medical records, and he's competing with people decades younger in the same industry who are fighting for work when the overall pie is shrinking from layoffs.

  47. Matlab... by Fortraniac · · Score: 1

    Matlab is hardly a "little known" language. It is universally used by engineers of all stripes. Pretty much any EE, ME, or AE graduate will have at least a passing familiarity with Matlab. I've taken quite a few engineering courses where Matlab knowledge was more or less a prerequisite. Knowledge of Matlab and Simulink is mandatory in the controls and structural dynamics fields.

    1. Re:Matlab... by neminem · · Score: 1

      Or even CS majors, if they went to schools with a core that required absolutely any engineering course as part of their overall core, as mine did. Everyone hated that class, even the engineers, but I 100% agree with your basic point, that matlab is not even remotely a "little-known programming language". Little-used-professionally-by-non-engineers language, yes. But everyone's at least *heard* of it...

  48. PICK Basic Variants by Anonymous Coward · · Score: 0

    There are a lot of PICK machines (think Universe, JBase, etc.) in production, especially in financial sectors, and very few programmers available.

    1. Re:PICK Basic Variants by prgrmr · · Score: 1

      I used to be a Pick programmer, but was fortunate enough to switch over to system administration just in time to survive the dotcom bust and remain employed, while some of my former coworkers who had jumped ship to various start-ups were now out looking for work. Then I discovered Python, which, unlike perl, java, or php, has gotten me to consider jumping back into being a full-time programmer again.

  49. Please respond with your CV... by Anonymous Coward · · Score: 0

    ...and an associate from SlashDice will contact you.

  50. Cobol because it give you immortality by Anonymous Coward · · Score: 0

    You just know they are going to resurrect you again when the next date roll over date bug comes around

  51. ASN.1 is not a "programming" language by caseih · · Score: 1

    ASN.1 is certainly not a "programming" language. It is a type of domain-specific language, I suppose, similar to how a web programmer has to know HTML and CSS, while writing programs in some other language. I guess in our modern world where XML is used to bludgeon every problem to death, I can see why some people might call ASN.1 with a programming language, though like XML, ASN.1 is not turing complete. ASN.1 is pretty cool, though. It is a binary, self-describing data encoding scheme, and forms the basis of a number of core protocols we use all the time, including LDAP (which uses a form of ASN.1 called BER). ASN.1 has been around for far longer than XML, and if you're working with network protocols at the software level, is worth knowing.

    I once wrote an LDAP proxy server that spoke LDAP wire protocol natively, and I had to implement ASN.1 encoding and decoding. My code at the time was written in C using the wonderful glib library (which minus gobject should be made part of the standard c library someday). It has since been rewritten in Python using Twisted which nicely abstractly all the ASN.1 stuff away in the nice Twisted LDAP adapter classes.

  52. modulo the typo / capitalization error by raymorris · · Score: 1

    I said:

    > X + 3 is x + 3 in most languages.

    Uhm, no. But x + 3 is x + 3 in many different languages. If x=4, then X + 3 is a compiler error in sane languages, and a PITA in silly languages.

  53. Re:...now this again. Learning programming languag by frank_adrian314159 · · Score: 1

    Basic syntax and paradigm of a new programming langugae are easy. It's running into all of the corner cases and figuring out how to work around them that takes time. Not to mention the plethora of "value add" third-party libraries and frameworks, all of which have their own corner cases to bump into.

    --
    That is all.
  54. I would say yes, it is worth it by Anonymous Coward · · Score: 0

    Except for the fact that getting a gig in a little known language will take a lot longer because almost nobody uses it anymore, and those that do use it are trying like mad to get everything off it into a more common language. (Former FORTH programmer here...)

  55. Re:...now this again. Learning programming languag by david_thornley · · Score: 2

    If you know only C, you aren't going to be a good Lisp programmer in two weeks, or a good C++ programmer for that matter. Different languages work better with different ways of thinking about problems, and it's a lot harder to learn that than to learn syntax.

    Sure, you can learn the basics in a couple of weeks, but that doesn't tell you how to use the language. You'll just keep writing C with funny syntax (or, in the case of C++, just keep writing C), and your programs are going to suck. In two or three weeks, you won't learn how to write good Lisp macros or when you should. You won't learn to use C++ exceptions safely. I went from C/Pascal/assembler/etc. to ARM C++, and it took me years to internalize everything I needed to consider about object orientation. I was able to do useful things pretty well from the start, but it took a long time to be fully functional.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  56. raymorris gets destroyed by apk again? by Anonymous Coward · · Score: 0

    Yes (raymorris = "run, forrest: run!!!" in fact)-> http://slashdot.org/comments.p... and there's blood in the water (yours). When you make a wannabe programming "god" like ray bleed, the sharks gather. Unfortunately you summoned the great white himself and he's tearing you apart as always bigmouth!

  57. raymorris = "run, forrest: run!!!"... apk by Anonymous Coward · · Score: 0

    Come on bigshot: Prove me wrong -> http://slashdot.org/comments.p...

    * Keep "running", forrest... lol!

    APK

    P.S.=> Shooting your piehole off again, no-mind? Yes -> http://tech.slashdot.org/comme... so I just SLAMMED IT SHUT once more (obviously - you can't do a DAMN THING vs. that list of mine & you KNOW it)... apk

  58. Mathematica and MATLAB do have broad adoption by WillAffleckUW · · Score: 1

    Used in a heck of a lot of high schools, colleges and universities in the US and Canada.

    Don't know why you'd say they're "not in much use".

    But, hey, keep telling yourselves you'll make a mint coding Java at Amazon ...

    --
    -- Tigger warning: This post may contain tiggers! --
  59. How about crappy Oracle products? by El_Oscuro · · Score: 1

    Outside of the RDBMS, pretty much everything Oracle makes or buys is crap. The funny thing is, PHB's suck that stuff up like us DBA's drink beer. Then when The Shit Don't Work (TSDW), they need someone to fix it. If you can make the shit work, you can make some good money. Just be prepared to switch to the next crappy Oracle technology when the original falls out of fashion.

    --
    "Be grateful for what you have. You may never know when you may lose it."
  60. AXL by Rinisari · · Score: 1

    If the phrase "Your mom's first child node is not a text node", then you probably know AXL and I probably worked with you at some point in the last six years.

  61. Been there, done that, got the tshirt by Anonymous Coward · · Score: 0

    Literally .. still have my "SNOBOLs chance in Hell" tshirt.

    More interesting is that languages like Smalltalk are still in use (some Rational tools are written in them).

  62. Re:If you learn, you'll compete with experienced f by turkeyfish · · Score: 1

    That's often true, but it may well mean the difference between eating table scraps and not eating at all.

  63. Flash is the best mobile language by GoodNewsJimDotCom · · Score: 1

    Laugh all you want. Believe all the negative propaganda if you listen to everything people tell you. But Flash is incredible to produce Android,Ipad/iPhone aps. Its soooo easy compared with any language I ever used. If you know C/C++ or Java, you can pick up Flash in a week. It also ports to Web, and Windows/Linux/Mac without modifying code.

    Flash gets a bad rap, but I've never been so impressed with a language for producing modern software. The only downside is that it can be slow, but you can generally render 1,000+ graphics on the screen before you notice any slowdown. It isn't meant for the leanest and meanest modern 3d games, but if you want to get into the ap stores, its one of the best roads. It is far superior than picking Android or IOS specific programming languages.

    Now I typically get buried for saying this for some reason. I'm not sure if people are bent out of shape because they hate Flash or if the Flash developers don't want their well kept secret to get out.

  64. asn.1? you must be kidding! by TheGratefulNet · · Score: 1

    speaking as someone who specialized in snmp for over 25 years and who works for a whos-who of netmgt and networking companies, snmp is mostly DEAD for hiring. its all done in india and china, now (and very VERY poorly, too, I might add).

    I made a living being really good at mibs and snmp - but there is no pay in it anymore, no one in the US hires for this and its all commodity 'good enough for the stupid customer' stuff. customers don't push hard enough for snmp/mib quality and vendors staff with the most entry level garbage programmers (sorry if the truth hurts) and so you get what you get. crap.

    I hate having to say this as I invested many years in being an expert in my field; but the bottom dropped out and there's no resurge in this field that I can see.

    I can't speak to the other 'languages' but I found it funny to see asn.1 listed. it did, once, make a very nice living for me and got me quite a lot of opps in great companies; but after about 10 yrs ago, things pretty much dried up here in the US (for netmgt) and its all outsourced to the lowest bidder, now.

    shit, you can even do snmpwalks on some cisco boxes, juniper boxes (etc) and find glaring bugs, cycles (loops; should never happen in a treewalk!), data type errors and laughable encodings (yeah, sure, store floating points as strings. if you have to ask, you clearly don't get it). and no one cares anymore, either! ;(

    --

    --
    "It is now safe to switch off your computer."
  65. Re:...now this again. Learning programming languag by kcwhitta · · Score: 1

    Well, you were never fully functional because you were using C++.

  66. LabVIEW anyone? by CaptainPhoton · · Score: 1

    I saw MATLAB mentioned here quite a bit. I cut my teeth on MATLAB in the 90s to prototype DSP algorithms, but LabVIEW has become my replacement workhorse for that sort of stuff since Y2K. Even through the dot-com bust there was no shortage of LabVIEW work. I'm mostly a C/C++ embedded guy these days, but LabVIEW is still in my grab bag for rapid app development.

  67. Re:...now this again. Learning programming languag by Anonymous Coward · · Score: 0

    > Lisp or Erlang is a little more distant, but it's not impossible far to learn in a few weeks.

    ROFL, Man, you are so wrong! I program in Common Lisp professionally for more than 10 years, and sometimes I think I know it.

  68. MUMPS anyone? by cant_get_a_good_nick · · Score: 1

    I had an aunt that regularly tried to get me to come to her firm to code in MUMPS.

    I wonder why I never did it.

  69. S, SPlus, R by cant_get_a_good_nick · · Score: 1

    I'm a tech in a finance firm. We use math tools a lot. Octave too.

    Though not quite a language, you can get a lot of jobs knowing Excel spreadsheets,

  70. PICK Basic by Anonymous Coward · · Score: 0

    There are a lot of PICK machines still out there (think JBase, Universe, etc.) and very, very few qualified programmers.

  71. Re:...now this again. Learning programming languag by Mirar · · Score: 1

    Yes. I constantly have problems with libraries, especially overcoming bugs and limitations. Most of the time I have to (sadly) reinvent the wheel, because it didn't have spokes or someone thought triangular wheels were the best thing ever.

  72. Re:...now this again. Learning programming languag by Mirar · · Score: 1

    This is true. But I don't think you can be a good programmer if you only know one single language in one single paradigm.

    I usually program in a mix of functional, object-oriented and iterative; whichever solves just this problem the best at the moment. (Bonus if it also creates the most readable code. Which is, of course, part of 'best'.) I don't think I could do that as well if I hadn't programmed in both assembler, lisp, C, C++ and LPC.

    (I'm not sure what ARM C++ is; I write C for ARM but except the hardware registers that I hide away in hardware layers, there's nothing special over the C. Well, it doesn't have things like printf, signal or exit. But it really isn't a different programming language than say C for DOS.)

    I wrote a C compiler in interlisp once. That was fun. (To lisp.) (As a project.) (After learning LISP for about three weeks. It could probably have been much better LISP, but the principles in LISP and functional programming are actually really easy to understand. Easier than being able to read all the parenthesis...)

    Writing such projects - as well as doing things like implementing a scheduler or a TCP/IP stack - makes you understand things a little bit better. :)

  73. Re:...now this again. Learning programming languag by Mirar · · Score: 1

    It shouldn't be impossible to go fully functional using only C++. Is it a challenge? :)

  74. ASN.1 is not a langage... by Anonymous Coward · · Score: 0

    ASN.1 is simply a data encoding standard and is not a computer language like Java or C. It is along the lines of JSON or Base64 encoding used in MIME. This mistake gives me little confidence in the rest of the story.

  75. Re:...now this again. Learning programming languag by david_thornley · · Score: 1

    I think that you have to use functional programming to write arbitrary programs as templates.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  76. Re:...now this again. Learning programming languag by david_thornley · · Score: 1

    I think I'm showing my age there.

    The base document for the C++ standards effort was the Annotated Reference Manual, named like K&R C. ARM C++ is pre-Standard.

    As far as learning different languages for single paradigms, I suspect it's most needed in object-oriented programming. Many people seem to think it's supposed to work like it does in the single O-O language they know.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes