It's a 36 y/o language, mate. I still reference my copy all the time, and found it to be a great definitive resource when I was learning.
How many bash 4/5 features are you seriously using on a regular basis? What do you think is out-of-date?
It's a 36 y/o language, mate. I still reference my copy all the time, and found it to be a great definitive resource when I was learning.
How many bash 4/5 features are you seriously using on a regular basis? What do you think is out-of-date?
I highly recommend O'Reilly's Learning the Bash Shell in paperback form: https://www.oreilly.com/library/view/learning-the-bash/0596009658/.
The other responses you've received so far don't offer much insight into the historical background and underlying mechanics of the shell, which are crucial to understanding the "Why?"s of command-line quirkiness.
Thanks! I'm in central Texas - zone 8.
My wife and I are talking about moving up north towards the end of the summer, so I've been trying to make the most of this last season. I'll definitely miss the early start of spring, but I'm excited to try out new local plants wherever we end up. Having to hunt for plants that can deal with weeks of >100F days and no rain gets old after a while.
Great start OP! Some blunt honesty: it's overcrowded to the point that you will not be getting optimal results - but you've set yourself up for some good learning experience nonetheless. Further guidance:
League ran fine for many years on Linux. The problem is Tencent, not Linux.
Per Riot's own stats, the rates of scripting in competitive league went way up AFTER they rolled out Vanguard, so it's not about anti-cheat either.
Yeah, I totally agree with that framing.
Overwatch definitely has its high-level cheaters, but the reason for that article is their ban wave model that Blizzard carried over from WoW: they often wait a few days/weeks before nuking an account. This approach means it's possible for trolls to hack their way to high levels of the ranked ladder for a brief window, but those accounts are effectively canned in the long run. The upside is that cheaters have a much harder time figuring out why they're getting flagged.
I quit playing after Blitzchung (2019), so OW2 may have a totally different scene going on due to switching from P2P -> F2P, but I only ran into a single aimbotter in the span of several hundred games. I still have friends who play though, and haven't heard many complaints. A more recent reddit thread seems to agree too, e.g.:
Been playing for many years, and my roommate can agree with me. Probably the FPS game with the least amount of cheaters I've come across.
Blizzard did something right with the anti cheat.
https://old.reddit.com/r/Overwatch/comments/xwk02o/how_is_the_anti_cheat_in_this_game/ir6x5k7/
Rendering on client means you can still do all sorts of crap in terms of wallhacks, spoofing inputs and so on.
The solution for this that's now in vogue is server-side occlusion checking. Basically, map what objects/characters that player has line-of-sight on server-side, and send the client only data for those which are visible.
Could you do effective autoaim with just a rendered frame fast enough? I bet somebody would try.
This exists - it's usually done with a microcontroller that intercepts the monitor feed, scans nearby the player's cursor or center-of-screen for probable targets, and softly fuzzes mouse movements towards that target.
Hell, in some cases the cheating isn’t even on software these days. CS had a big argument about some keyboard behaviors recently, as did fighting games about leverless sticks enabling certain shortcuts.
Yep, 100%. That's why root-level AC is a bad option: cheaters are just switching over to these out-of-band techniques.
Companies prefer root-level AC because it gives non-technical stakeholders the impression that a game is "cheat-proof", and therefore, that they don't need to fund customer support to monitor and review reports of cheating. They're not using root-level, client-side AC because it's more effective than alternative options.
at least with running nothing but the renderer and the controller input client-side
Nearly all competitive multiplayer games run this way. The client is an untrusted rendering service, while the overall state of the game world is tracked server side.
I agree with your overall point.
However, as a professional codemonkey, I promise you that root-level AC is in fact less secure than server-side heuristic AC + user reporting, and tends to be user-hostile due to false-flagging of modified systems. Root-level AC can be bypassed rather easily these days with DMA and other out-of-band tooling.
As a case-study, League of Legends lacked any root-level AC for well over a decade, and was arguably the most popular game in the world at points. Cheaters were extraordinarily rare; the average player would typically encounter well under a dozen cheaters per thousand games.
Riot Games then released Valorant with full root-level AC, and had an aimbot explosion within a few months - mostly because they devalued player feedback & reporting in favor of their “robust” automated AC solution. Their overall anticheat strategy became less reliable on the whole, but they stuck to it because root-level AC is cheaper and easier to execute from the corporate-profit POV.
"Liquid fertilizer bad" is already an unhelpful reductionist take, but commenting that on a hydroponics post suggests you aren't interested in engaging with the posted content, and are instead looking for a reason to be combative. A quick peek at your post history here suggests that this is a common pattern of behavior for you.
Please reconsider the way you are engaging with this forum.
Synology runs a proprietary OS OOTB that's had multiple sloppy vulns exposing full remote access to users' files. Putting your data in the hands of fuckups who have and will continue to leak it is the opposite of total control.
It's completely trivial to store any data you want to in a cloud provider 100% securely just by piping it through openssl before uploading.
Bash has had some nice minor features and syntax sugar added, but the fundamentals are entirely the same. All the examples in the book work just the same today as they did when it was written.
What was added in 4.X or 5.x that you can't live without? What do you think has changed that merits inclusion?