Hacker Newsnew | past | comments | ask | show | jobs | submit | murphyslaw's commentslogin

I believe that the biggest problem in the US is the constitution. It's next to impossible to change so the only way to fix it is replacing it entirely with a new one. But good luck with that...


The current biggest problem in the US is that the President is violating the Constitution with impunity


You can pipe the fd directly:

# echo 1 >&2 2>| echo


O'Reilly's Essential System Administration [1], I never do a job interview without it.

[1]: https://www.oreilly.com/library/view/essential-system-admini...


It always exists on any Unix system. Even a busybox root environment. Why do you want to save a few bytes to compromise portability?


But it isn't portable, unless you stick to posix subset which kinda sucks. You'll use some feature that some dude using an ancient shell doesn't have then he'll complain to you. And that list of features is LONG: https://oneuptime.com/blog/post/2026-02-13-posix-shell-compa...

If you're using shell specific features in a tightly controlled environment like a docker container then yeah, go wild. If you're writing a script for personal use, sure. If you're writing something for other people to run then your code will be working around all the missing features posix hasn't been updated to include. You can't use arrays, or arithmetic context, nothing. It sucks to use.

Besides, if you're writing a script it is likely that it will grow, get more complicated, and you will soon bump up against the limitations of the language and have to do truly horrible workarounds.

This is why if I need something for others to run then I just use python from the beginning. The code will be easier to read and more portable. At this point the vast majority of OS's and images have it available anyway so it's not as big a barrier as it used to be.


> You can use /dev/stdin, /dev/stdout, /dev/stderr in most cases

Never ever write code that assumes this. These dev shorthands are Linux specific, and you'll even need a certain minimum Linux version.

I cringe at the amount of shell scripts that assume bash is the system interpreter, and not sh or ksh.

Always assume sh, it's the most portable.

Linux != Unix.


It's a waste of time unless you're specifically targeting and testing mac, all of the BSDs, various descendants of Solaris, and other flavors of Unix. I wrote enough "portable shell" to run into so many quirks and slight differences in flags, in how different tools handle e.g. SIGPIPE.

Adding a new feature in a straightforward way often makes it work only on 4/7 of the operating systems you're trying to support. You then rewrite it in a slightly different way (because it's shell — there's always 50 ways to do the same thing). This gets you to 5/7 working systems, but breaks one that previously worked. You rewrite it yet another way, fixing the new breakage, but another one breaks. Repeat this over and over again, trying to find an implementation that works everywhere, or start adding workarounds for each system. Spend an hour on a feature that should have taken two minutes.

If it's anything remotely complicated, and you need portability, then use perl/python/go.


Actually, while the Actual Nodes are a linux thing, bash itself implements (and documents) them directly (in redirections only), along with /dev/tcp and /dev/udp (you can show with strace that bash doesn't reference the filesystem for these, even if they're present.)

So, you're not wrong, but...


You shouldn't be assuming I'm writing code for Unix.


lol truly informative and clearly something no one here knew. But your terminology is inaccurate. Please change it to GNU/Linux != Unix


Older people like me could say that the Internet was a fun place until AOL came along.

IMO we're going to just have to deal with AI, like it or not.


I used all of these as a kid, and they were the precursor to my C64 and C128. The TI 99/4A was the first real computer I ever used - real in the sense that it had a keyboard!


What impresses me about the TI 99/4A (besides its unusual microarchitecture) is that PLATO (or offline versions of much of its extensive and interesting courseware) was ported to it. Apparently it could act as a PLATO terminal as well.

https://arstechnica.com/gadgets/2023/03/plato-how-an-educati...

I don't know if it could play Moria or Empire though.

https://gamerant.com/plato-system-best-games/


Just an assumption here, but the project appears to be about the methodology to verify the install. Who holds the keys is an entirely different matter.


Werner Von Braun only built the rockets; he didn't aim them, nor did he care where they landed.

(London. On some of my relatives.)


...and the moon.


You'll understand if I don't think the tradeoffs were necessary, or worthwhile.


Ambition does really weird things to people.

But I'm sure in this case when they achieve some kind of dominant position and Microsoft offers to re-absorb them they will do the honorable thing.


When has that ever happened in the entire human history?


People do the honorable thing all the time.

These people don't, but people you've never heard of are always doing honorable things.

Might be some sort of connection there.


All of it is built from source, it's just that the current build process is not easy to audit. The build by definition needs to happen on multiple platforms or cross compiled, a root cert needs to be setup in the windows installer at boot time, and so on.

I agree that this is not an ideal way to boot an ISO, but the general public is unlikely to ever need a multiboot USB stick. I like this project enough to perhaps contribute.


The author is specifically talking about Raspberry Pi upstreaming changes. Isn't that about as close as you will get to a general purpose SoC?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: