Live data from Hacker News

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

news.ycombinator.com

441–450 of 502 posts

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

#441

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++.

Serious question: How does one get into this C embedded stuff? I'm addicted to low-level "embedded" type work. But all I hear back from are Django, RoR, $HOT_JS_FRAMEWORK, DevOps teams/recruiters. Is there some buzzword or special topic to know and do a project in? Any suggestions for projects to display on GitHub, topics to know through and through (domain specific knowledge)? I sit at work thinking all day about Ra…

Being familiar with RTOS's is certainly useful, since there's a decent chance that your future automotive/aero/industrial job uses one.

For a reference of stuff to learn about, go grab the manuals (usually massive) for a recent embedded CPU and see what common topics are foreign to you. Just reading the TOC should prompt some ideas. You may not be applying for one of the lower level "board bring-up" type jobs, but that team will be delivering you libraries that assumes familiarity with IRQs, timers, memory paging, processor modes, DMA, lots of I/O types, etc.

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

#442
C++/FORTRAN77 FORTRAN77 allows use of a code base that has the bugs beaten out of it years ago. Aerodynamics doesn't change. Also older Engineers can still comfortably write new routines. C++ allows use of Qt4 and all that it offers. Graphics, networking, SQL, etc. Intel Linux compiler makes it simple to mix and match. Also to pass complex data structures back and forth. At one point we had the same programs compiled to run on SGI IRIX, Linux and Windows. #ifdef made it easy.

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

#444

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++.

Serious question: How does one get into this C embedded stuff? I'm addicted to low-level "embedded" type work. But all I hear back from are Django, RoR, $HOT_JS_FRAMEWORK, DevOps teams/recruiters. Is there some buzzword or special topic to know and do a project in? Any suggestions for projects to display on GitHub, topics to know through and through (domain specific knowledge)? I sit at work thinking all day about Ra…

I would get a Teensy 3.2 and start programming bare metal with Arduino. You could also start with Arduino on AVR, but the Teensy gives you a lot more headroom and performance and a very small physical size for very small $.

Arduino is just g++ under the covers, and you can use as much or as little C++ as you want. You can stick to straight C if you like just by not using any C++ features.

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

#445

I will certainly get more into C. Mainly because C is the biggest expansion in knowledge for someone who did 15y web dev on a high level. Secondly because I don't want at all get more in touch with hype madness of JS and the likes. If we produce code at that rate the whole system will collapse within 5 years. At that time I should be fit enough to take a C senior position.

Same here, so much to learn from if your whole world consisted of the JVM. But I don't think I want to do it professionally.

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

#446
post #270

Earlier quoted context omitted.

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.)

But the manpage is useful in itself already: I've been using a lot of

  ${VAR:INDEX}
  ${VAR/PATTERN}
  ${VAR#PATTERN}
etc. in the last few months. It covers a lot of string processing needs in shell scripts that you would otherwise have invoke sed or awk for.

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

#447

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 hav…

I have a friend who makes a living writing CUDA kernels as C++ templates. His job will be safe for decades to come because noone will be able to decipher the code. :)

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

#448
post #122

Earlier quoted context omitted.

I still teach SQL, via SQLite, as a first language to students, even though in practice I do 90% of my data analysis through the command line or Pandas. But SQL is very direct and clear as a language, and the overhead of SQLite is...well, light. Making an index is just one more line of code that for many datasets, you run once and never touch again. What do you find simpler in terms of data querying and management?

The functionality of SQL is great but I really wish it would like more look like other programming languages. I wonder how SQL would look like if someone would design it now. It also should integrate easier with other languages. Using SQL from C# or C++ is a real pain with tons of casts and string manipulation. Better debugging would also be nice.

Considering that SQL describes the result and not how to get it (that's for the query planner, that is the SQL compiler), maybe it would look like Prolog. More about this at http://stackoverflow.com/questions/2117651/comparing-sql-and...

A SQL like language in JavaScript is Mongo shell, which is much more complex that SQL. Every time I use it I wish they adapted SQL to Mongo instead of writing their own thing. I usually end up writing complex queries in Ruby with Mongoid. They're more compact and easier to understand.

About ActiveRecord/AREL vs SQL, they're more or less the same. Sometimes a query is easier to understand in Ruby, sometimes in SQL. Complex queries are much easier to read in SQL or outright impossible to code in Ruby.

If I could change something about SQL I'd change all the arbitrary weirdnesses of the data definition language and the non orthogonal stuff, like HAVING which is a WHERE in a different context (aggregations vs rows).

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

#449

C (I hate C++) assembler (various) (I've even learned x86_64 well after being a RISC aficionado, it's actually kinda neat) sed bash LaTex I used to use YACC/LEX but that's been replaced with ANTLR for awhile now. What language am I starting to use? Rust and R. I wrote something in PERL once but when I woke up the next day I couldn't really read it. So that was that.

Perl makes it easy to write line noise, and only possible to write legible code. That possibility also goes mostly out the window as soon as you use the real strength of the language (regex).

Regexes support whitespace and comments, and can easily be composed. But I agree that an effort needs to be made to write legible Perl code. "Perl Best Practices" is required reading for any professional Perl programmer.

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

#450

Earlier quoted context omitted.

Hard to imagine how it's to live in a company that has no database. But I do take issue with that: > It isn't you I hate SQL, it's what I have to think about when I use you. Do you live at the fringe of performance like that? Nobody spends much time thinking about those things, and the few times that require thinking about them would require thinking about much more complicated things if you weren't using a database.

It's not so much existing at the fringe of performance, but there have been weeks of my life lost to needing to tune a query or an index. Sure, some of that time is actually building the index I just added. But I don't want to have to figure out a query plan. If I'm building a simple CRUD app, then I don't need the complexity that SQL provides. If I'm building something bigger, then I probably need to think about the…

Dunno, sounds easier than chess.
Post reply on HN