Show Navigation
Notices by Verius (verius@community.highlandarrow.com), page 21
-
@purplehippo True, but I've found the game not to be quite up my alley anyway so this was actually the most fun part of the game for me. :D
-
Got Uplink. Got a bit annoyed at the pace of the game. Decided to apply the theme of hacking properly. Fired up gdb. Now I'm rich and can do the story missions without fear of missing hardware. :P
-
@maiyannah More like get kicked up the nuts or get shafted through the rear. And like with VBA vs JS you'll find few people who prefer the former and quite a few people who prefer the latter. </bad-analogy>
-
TIL Office 2016 allows add-ins to be written in JavaScript. I'm trying to figure out whether that's better or worse than VBA.
-
@mangeurdenuage Yes, but only in Dutch.
-
The best use of a 1 petaflop supercomputer in a Russian nuke research center? According to some scientists there: mining bitcoins. Unfortunately for them they got caught, that center actually has decent opsec and connecting the computer to the internet caused set off a warning. Whoops.
-
Also, hurrah for expanded post limit and QVitter no longer eating my newlines.
-
I find it hard to completely blame Github for this, but it's new to me that they allow username reuse: https://donatstudios.com/GithubsTotalSecurityFacepalm
Combined with rather dumb package managers which treat Github as part of their security model that's gonna lead to security issues.
I guess it just goes to show how bad it is to rely on just URL's. A proper system relies on some form of cryptographic signing instead to indicate that the author of an artifact is indeed the owner of the expected key.
-
@jonvaldes Oh, that, I agree on. It's not really a C++ thing that invalid-pointer dereference can trigger undefined behavior (https://doc.rust-lang.org/reference/behavior-considered-undefined.html) but in C++ it's really easy to mess up if you don't have a good static analyzer and are serious about using it. This is why raw pointers in modern C++ are generally considered tricky and the core guidelines have a lot to say about when to use them (pretty rarely if you combine all the guidelines), e.g. https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rf-ptr-ref (you may disagree about that note about null references being uncommon I guess). However as with any old language that has undergone significant backward compatible changes there's a lot of existing crappy code out there written by programmers with only half a clue of what they're doing (which is easy in C++ given how hard it is to understand even half the language), so I understand where you're coming from.
-
@jonvaldes Now that I'm being a proper computer I can add one additional data point: Rust has nullable references too: https://godbolt.org/g/9aegxS Yes, it involves unsafe but `let ptrref: &i32 = &*ptr;` isn't really that much different than your C++ code. The main thing Rust adds is a warning sign for code review.
-
@jonvaldes That's true. But it still doesn't mean that gat C++ has nullable references. What it does mean is that it's ridiculously easy to get into undefined land and peek through the abstraction curtaib. That's something Rust, C# and pretty much all other modern languages do better. But references cannot be null in a correct program (and yes, I am very aware how little that means in practice) and for a statement about languages, as I have made, thar is the relevant criterium.
-
@maiyannah Doesn't an insanity plea just change your sentence from prison to guarded mental hospital? At least hereabouts many criminals actively avoid being examined for mental issues in order not to end up in a guarded mental hospital, mainly because a prison sentence is finite but the criminally insane only get out if they pass a review and can be kept indefinitely if judged to remain a danger to society.
-
@jonvaldes Ok, I guess you can technically make a frankenconstruct in some implementations. Note that per the standard you cannot do that in a well defined program. The problem here comes from pointer dereferencing, once you dereference a nullptr all bets are off (undefined behaviour). So technically C++, the language, doesn't have null references even if there are C++ implementations that allow creating them through undefined behavior.
-
How do you distinguish a seasoned engineer from an inexperienced one? Ask them about the downsides of their favorite tool and when they'd use their least favorite tool.
-
NPE's don't impact memory safety though and aren't undefined behaviour. Regardless, I agree that default nullability is a bad thing. So do the C# designers, they said they'd remove them if it wasn't for backward compatibility. And C++? Doesn't have nullable references (pointers, yes, references, no). I think Rust isn't trying harder to be perfect, it just has a different idea of perfection and little worry about backward compatibilty yet.
-
@maiyannah @lnxw48a1 Frankly, when it comes to currencies, I very much prefer those that central banks control. If anything the eurocrisis has taught us that too little control over a currency by a central bank is a bad thing (Greece couldn't devalue its currency to help fix its economy).
-
@maiyannah Ok, let me be more precise. They don't like economic issues where they don't make a profit on first.
-
Nice art style. But it takes shoehorning to a whole new level: https://docs.microsoft.com/en-us/powershell/digital-art