Live data from Hacker News

Ask HN: What “old” programming languages will you still be using in 2017?

news.ycombinator.com

301–310 of 502 posts

Re: Ask HN: What “old” programming languages will you still be using in 2017?

#302
post #270

Earlier quoted context omitted.

Any suggestions for a bash scripting tutorial to help me better connect the dots? Over the years I've learned some nifty one-liners, but I'm not really familiar enough with the patterns and art of of command-line thinking to solve my own problems in bash. Most of the bash resources I've found online are just loosely organized collections of magic spells. I'd really like to get better at it though.

I would recommend two things: 1. Read the "bash" man page about once a year, and 2. Learn Perl or Python or something for the harder tasks. It's helpful to learn some more about bash, and there's some good stuff in there. But shell scripts above a few dozen lines tops are a bad idea, and even those "few dozen" lines need a surprising amount of armoring with "set -e" and such. I don't think this is because bash is bad…

And read the bash manual at least ONCE. (It's not the man page.)

Re: Ask HN: What “old” programming languages will you still be using in 2017?

#304
post #146

Earlier quoted context omitted.

I love sql myself. I'm not sure why I love it so much and other people hate it. Sometimes I think that coming up with reasons is just after the fact justification (do I really like it because it has a solid mathematical foundation in the relational calculus, or does that just sound like a good reason to say I like it)? Pandas is an excellent contribution to data analysis, but I gotta tell you, I was absolutely deligh…

IF you start to think in a set orientation, SQL makes a lot more sense. If you try to think procedurally you will struggle with SQL.

That's interesting. I didn't learn SQL until taking a course on it in grad school. I had some programming background, mainly from math classes and a bit of CS.

the concept of a query really seemed odd, it took some mental adjusting. My only programming background was largely in writing procedural code. My brain really wanted to think in terms of methods, functions, inputs, and return values.

It's been so long (18 years since that course), that it is difficult to remember the mindset I was in. It all seems pretty natural now. But you are absolutely right, you do need to start thinking in terms of sets and operations on sets, not in terms of methods with inputs, procedures, and return values

Re: Ask HN: What “old” programming languages will you still be using in 2017?

#308

Lots and lots of C. (I'm mostly an embedded C programmer these days). Some C++ for a bit of higher-level "business logic" that benefits from a class-based approach, but a fairly limited subset of "modern" C++.

Coming from the HFT side, I find C++ surpasses C in a lot of ways for optimization work. Mainly you can use integer template arguments and generic functions to abstract all the boilerplate in a way that is more safe than C macros.

For a semi-contrived example, instead of writing a do4Things() and do8Things() to unwind some loops, I can write template doThings() where the int argument is the bound on the loop.

And having things like a universal template toString() that operates on enum classes is nice.

The downside is that it's horribly easy to invoke allocations and copy constructors by forgetting an ampersand somewhere, and the std library isn't well suited to avoiding that behavior either. You have to be vigilant on your timings and occasionally callgrind the whole thing.

The other downside is that your colleagues are more likely to "knit a castle" with ridiculous class hierarchies or over-generalization. ( https://www.infoq.com/presentations/Simple-Made-Easy )

Re: Ask HN: What “old” programming languages will you still be using in 2017?

#309

Tcl. It works really well as a cross-platform (*nix/Windows) alternative to shell scripting that doesn't suffer from the same problems as the POSIX shell (see http://www.dwheeler.com/essays/fixing-unix-linux-filenames.h... ). It builds on the same foundation of everything being text but with a few changes to the substitution rules builds something a lot like a Lisp on top of it.

Can it integrate with Unix command-line filters and tools roughly as well as shell can? Interested.

Re: Ask HN: What “old” programming languages will you still be using in 2017?

#310
post #285

Emacs Lisp. In the past year, I finally switched from vim + a boatload of custom .vimrc stuff using tmux for running random repls to Spacemacs. For both contributing to Spacemacs as well as the few customizations I want, emacs lisp is a welcome departure from my usual vimL. At this point, I can't imagine not talking to my editing environment as part of my daily workflow.

I just started going down this road, too, and it's blowing my mind how nice it is to basically stay in Emacs all day. I took a little bit of scheme once upon a time, so lisp isn't completely new to me, but there's so much I don't know and so much more I could be doing. I didn't go Spacemacs in favor of my own config driven largely by org-mode, but I find myself wanting to go out and actively learn lisp to make it even more my own.
Post reply on HN