4 ms·
I had the unfortunate experience of being forced to use Ada as my primary programming language for three years during college. I hated it with a passion, though
by matt1 18y ago
I had the unfortunate experience of being forced to use Ada as my primary programming language for three years during college. I hated it with a passion, though I can't tell you exactly why at this point.
Ada took all the fun out of programming. I think the major problem was that there weren't any good GUIs that supported it. The one we used was ugly and counterintuitive. Additionally, the compiler was very strict and the error messages it spit out were cryptic. We spent so much time just trying to get the syntax right that it discouraged us from exploring and trying new things, the exact opposite of what a good programming language should do.
Not only that, but only a few few organizations actually use Ada. We graduated with an expertise in a programming language no one used. A year later someone made the decision to stop using it and to switch to Java. I think that person deserves a medal of some kind :)
- dkarl 18y agoI worked at a company where we very seriously talked about adopting Ada. Let me tell you what else takes the fun out of programming besides an overly strict language: knowing that if the customer encounters a bug, he will send you an email, stop using your software, and use a competing solution until you ship him a new release. At that job I shipped the least-buggy, most-correct code I have ever shipped in my life, yet I also had the highest sense of incompetence and failure I've ever had. The stress level when making code changes was incredibly high, especially since the code was mostly legacy (i.e., lacking documentation and tests) and introducing even rudimentary testing required rewriting large parts of the system -- which of course created bugs and made regression tests rather less useful than they should have been. I even had a dream once about reading the gcc manual and finding a new warning flag, -Wsomethingorother. I was really excited. Then I was really disappointed when I woke up. I REALLY wish that codebase had been writting in Ada. The code was mostly correct (though hideously designed) when I inherited it; if it was written in Ada, the runtime checks would have caught a lot of cases when an innocuous-looking bugfix in one part of the code caused another part of the code to start dereferencing stale data and mixing a subtle spurious signal into the customer's results. In the worst case, we would have had an immediate failure with a good head-start on debugging. Ada might have actually preserved some of the fun of programming for me. Nothing else I've worked on has called for Ada, though. It's a niche language and should definitely be considered whenever writing a mostly-static system where you're willing to invest a lot of time per loc to avoid bugs.
- dmoney 18y ago...if the customer encounters a bug, he will send you an email, stop using your software, and use a competing solution until you ship him a new release. What kind of software was it?
- dkarl 18y agoThe software was part of a scientific computing system. We were an upstart product competing against a decrepit seventies-era product with an eighties-era interface. The competition was markedly inferior in performance and usability, but it was a known quantity and thoroughly integrated into the customer's workflow. By comparison our product was faster and usually more accurate, but less predictable. Our new bugs were much more disruptive to workflow than the existing product's old, well-understood bugs.