85 karma · joined May 31, 2018
I had to ask google, because the article fails to explain it. Google says yes, this is something else than the fsync syscall (man 2 fsync).
I wish everyone knew the difference between patents and copyright.
You can download an open source HEVC codec, and use it for all they care according to their copyright. But! You also owe MPEG-LA 0.2 USD if you want to use it, not to mention an undisclosed sum to actors like HEVC Advance and all the other patent owners I don't remember, because they have their own terms, and it's not their problem that you compiled an open source implementation.
fast forward to the 2020s
Is there an app for that? I don't know how to put a shortcut on the a desktop anymore.
> set(${VAR}_VERSION ${VERSION})
This is the main reason I don't like CMake.
Does this new "privacy preserving attribution" feature respect multi-account containers? Or is it somehow not considered necessary, because it's meant to be less invasive than the tracking cookies it's supposed to replace? Call me skeptical for now.
I'm a happy user of multi-account containers, which lets me separate my cookie identities in Firefox. Before, I had to use different browsers for work and private, and yes, it solves this problem, but the best part is that I don't have to worry about tracking cookies, because they aren't tied to my personal accounts: In my experience, I can to a great extent escape the echo chamber I'm in, and the ads I see in it, by just deleting the cookies of my sacrificial default container.
Other than that, considering the status quo – that the web is already an unfriendly GDPR nightmare, I'm positive to the initiative. And because of the power of the default, I can understand that the feature wouldn't likely take off if it was opt-in, so I won't criticize Mozilla for that move either.
This has happened before. Remember the critique against Encrypted Media Extensions (https://en.wikipedia.org/wiki/Encrypted_Media_Extensions): Oh no, DRM in the browser! But remember that web video used to require Adobe Flash for the longest time, and even after a decade of HTML5 video, sites were still clinging onto Adobe Flash (and later also Microsoft Silverlight) for what turned out to be DRM purposes. At the time, these plagued proprietary blobs were not going anywhere. Except, after EME had widely supplanted this last holdout usecase, they were quietly allowed to die. The result is that we have much smaller-scoped proprietary blobs in the form of content delivery modules with a lot fewer bugs and portability issues.
~/.gitconfig
[sequence]
presentation-order-head-on-top = true
Branch: https://github.com/anordal/git-revise/commits/rebasehappy-in...https://github.com/mystor/git-revise
Its inability to change your worktree (operates in memory instead) is a big speed and safety feature: It won't invalidate your build, and you can't screw up the end state.
It also has features that regular rebase lacks, like splitting a commit and editing all commits at once. I'm more than a big fan of it.
Python 2 was charset agnostic, so it always worked, but the improvement with Python 3 was not only an improvement – how to tell a Python 3 script from a Python 2 script?
* If it contains the string "utf-8", it's Python3.
* If it only works if your locale is C.UTF-8, it's Python3.
Needless to say, I welcome this change. The way I understand it, it would "repair" Python 3.
You mention natural gas; that's one option (CH3 = methane).
Ammonia – NH3 – is another that's starting to look promising and really could use some of hydrogen's hype: https://en.wikipedia.org/wiki/Ammonia#Fuel
Not for personal transportation, though – it's toxic – but for big engines in ships and airplanes.
Yes, what C++ is supposedly good for – RAII, it actually got a little wrong:
1. Default construction / value initialization: Causes lots of initialization before assignment that is obviously unnecessary. Try allocating a buffer: `std::make_unique<char[]>` surprisingly memsets the buffer.
2. Constructors: No way to fail without exceptions. That buffer example again: Without exceptions, `std::make_unique<char[]>` will actually attempt to memset a nullptr on allocation failure … before your nullptr check (which btw makes the compiler entitled to delete your nullptr check as well).
3. Move is a (burdensome) runtime state that mandates nullability.
4. Destructors: Can't take arguments, forcing objects to contain implicit references to each other.
Rust's affine type system fixes 1-3, but not 4, which only a linear type system could: https://en.wikipedia.org/wiki/Substructural_type_system#The_...
In my mind, Git is very guilty of 1-5, and any CLI would struggle with 6 (save for discoverability), but excels in 7-10.
As such, good criteria: I think they criticise Git the right way.
The most important part of a commit message is the context.
Good enough commit log:
utils: Minor
drivers: Fix
assets: Update
docs: Typo
Hopeless commit log: Minor
Fix
Update
Typo
Context should answer the "what". Think of it as the one word you tell a new conversation participant to let them realize what you are talking about.When I say "industrial", I mean for home use, of course. There is obviously a lot of potential for a more robust yet cost effective and practical connector for home use. Field termination being no excuse. First off, even metal 8P8C connectors have plastic tabs. If single-pair ethernet ever takes off, the "industrial" M8 push-pull connector seems a good one.
https://en.wikipedia.org/wiki/Ethernet_over_twisted_pair#Con...
Every time someone utters the word "ascii", they just mean text. Saying “I'm using ASCII” doesn't mean anything anymore, because nobody uses EBCDIC anymore – you are, no matter what, effectively using a superset of ASCII, by default UTF-8. The real question is which one.