Hacker News new | past | comments | ask | show | jobs | submit | more HenrikB's comments login

This is true also for fiber. Depending on the ISP fiber setup, the fiber can run for many 10's of km without a power relay.

I can run 1 Gbps symmetric for ~48h without power by running my optical network terminal (ONT) and a teeny travel router on battery packs. (Used this set up through several long power outages.)


"AOMedia Video 1 (AV1) is an open, royalty-free video coding format initially designed for video transmissions over the Internet." [0]

[0] https://en.wikipedia.org/wiki/AV1



Maybe also:

- Write lots of tests with high test coverage before migration. Then you can rely on them on a continuous basis to make sure any updates do not break the existing functionality


This sounds like it could be a fun exercise all by itself (I'm a test engineer, and I enjoy testing :D )


Yes, extending the test suite may definitely be worthwhile. Also, using AFL+ to collect non-crashing test cases can make this quick and somewhat exhaustive (while admittedly not giving as easy hints about what might be broken than manually created tests would).

Just in case you're interested in joining the sessions that I initiated, see https://news.ycombinator.com/item?id=30973570


This is the only way to ensure sanity is maintained through this arduous process.


Thanks for doing this. Have you considered making it open source (FOSS)?


Hey Henrik, the main link from this post is actually to the Github repo hosting the source for this extension. Is there more to making the source code public when you say making it open source/FOSS?


(Disclaimer: I'm the co-developer)

Together with GitHub user xPMo, I created a Shellcheck REPL tool (https://github.com/HenrikBengtsson/shellcheck-repl) that validates your Bash commands using ShellCheck _before_ they are evaluated. For example,

$ words="lorem ipsum dolor" $ echo $words ^-- SC2086: Double quote to prevent globbing and word splitting.

It was a toy project at first, but since I've learned so much about Bash from using it, I now have it enabled all the time.


A very happy and grateful user here, jumping in here just to thank you for the time and efforts to create this one! It saved me many hours of debugging after stupid midnight-coding-sessions mistakes. We even have it in our coding-style internal guidelines for some time now.


Neat. I like it.

I do have one suggestion: you have it ignoring "SC2154: 'var' is referenced but not assigned" by default, which makes sense on the command line because you're often not assigning and then referencing the same variable in a single command. But, I think it would be useful to have a similar warning like "SCREPL01: 'var' is not defined in the local environment," or something, which you might implement in shellcheck-repl itself. That rule could simply check to see if 'var' exists in the current shell's environment or if it's defined in the user's current command.

I think bash is simple enough that you might not have to a full-blown parse on the input to pick out instances of variable use (just look for 'export var', 'unset var', 'var=', and the like). You'd also want to take into account special variables like $RANDOM and $HOSTNAME, but that's pretty trivial.


Thank you, and thanks for the suggestion. Yes, it should be possible to keep the SC2154 check. I probably just disabled it as a quick fix when first started out. I'm tracking this in https://github.com/HenrikBengtsson/shellcheck-repl/issues/15.

> You'd also want to take into account special variables like $RANDOM and $HOSTNAME, but that's pretty trivial.

It seems like ShellCheck is already aware of these special Bash variable, e.g. 'echo $RANDOM' will not trigger SC2154 (or even SC2086 that otherwise asks you to quote variables).


I am not an expert, so forgive me for asking, Does Zsh also has this pitfalls?


:thumbsup: This one allows you to put the '## help text' comments on the line just before the target. No need to put them after the prerequisite.


In case OP, and others don't know, it is the copyright holders that can decide on the license. Copyright holders are the persons who contributed to the code. In this case, it sounds like OP is the sole author and therefore the sole copyright holder.

You cannot change the past, but as a copyright holder, you can always set a new license for future releases.

Thus, OP, if you're uncertain, I definitely was when I started out, go with a restrive license as recommended here (GPL). That, together with publishing the code online (e.g. GitHub, Gitlab, ...) as well as a with your article, will give you some protection against plagiarism. Anyone who use include parts of your code for their research code, will have to share theirs code the same. If you later on feel like you want to relax the license, you can always change it to, say, MIT.


Sinclair ZX81 is calling and wanna have a word about memory requirements :p


shellcheck-repl: Validation of Shell Commands Before Evaluation

https://github.com/HenrikBengtsson/shellcheck-repl

This tool validates your commands at the Bash prompt using ShellCheck and refuses to evaluate them if there's a mistake. It ignores a set of rules that doesn't play well with oneliners.

(Disclaimer: I'm one of the authors)


Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: