Hacker News new | ask | show | jobs
by revelation 3169 days ago
This is just such a shambles.

Great idea number 1: let's put all the functionality into one command line tool, and we'call it ip for ... "internet protocol"? Why is this ip tool managing my ethernet network card?

Great idea number 2: for this powerful swiss army knife, only a special syntax will do where we repeat the name of an argument before the argument value. To make sure no one can use it's functionality with less than 5 invocations, we'll have a hierarchical help menu that literally outputs BNF.

5 comments

This tool is hardly new, I think it was introduced back in the nineties. http://linux-ip.net/gl/ip-cref/ says April 14, 1999.
I think it's not a good thing to mention age as if that matters much.

Would you argue that gpg is old and therefore good software?

I would argue instead that iproute2 was not picked up quickly because it's clunky and hard to reason about. openBSD managed to improve ifconfig enough that a change was not needed. I applaud that to be honest.

Sadly too much of IT is run on childish bravado these days.

End result is that anything older than the person talking is stale and clunky code best replaced by something written in the latest bling language that "everyone" raves about...

When it comes to standard unix tools, a part of me still feels 1999 is rather new. :)
and it was a pain in the arse then, and it's no better now.
> we'call it ip for ... "internet protocol"? Why is this ip tool managing my ethernet network card?

For CLI tools I use every day, their etymology is far less important to me than their brevity. "ip" suits the bill quite nicely.

Yeah, the name-before-argument thing can be annoying though, but again, at least they're all short.

Effectively the ip syntax reminds me of configuring cisco hardware, and not in a good way.
It's not like we're losing the previous tools completely. This is just switched defaults and net-tools and ifupdown are just one "apt install" away.
It stands for iproute not "internet protocol". :p
How did the "ip" get into "iproute"?