3,616 karma · joined February 7, 2013
SponsorLink will harvest email addresses from your git log(s)[0], injects code into your build[0], and is completely proprietary and closed-source.
The request to share the source was denied, with the reason given that it would be trivial to bypass otherwise[1]
I hope ksu comes to their sense soon enough at just what an unfathomably huge security risk this presents to anyone using Moq. GDPR violations are just the start.
[0]: https://www.cazzulino.com/sponsorlink.html [1]: https://github.com/devlooped/SponsorLink/issues/13
It is using a very well established (i.e., has been used for a long time) terminology to describe familial relationships.
The "first" refers to how many horizontal genealogy lines are crossed (self -> sibling -> first cousin -> second cousin -> etc.) the "once" refers to the vertical, so the "first cousin once removed" refers to either your cousin's parent or child, and as we refer to our cousin's parents as aunt or uncle, we usually conclude that your "first cousin once remove" is your aunt/uncle's grandchild, ergo your [first] cousin's child.
Well that's just awesome.
Fwiw I view MS as a terrible (software) product company. All of their products fall short of delivering, in my opinion. I think of them as the "80 percenters" - their prpduxts do 80% of what any user reasonably expects as UX of their products, or of what their competition offers.
Teams: 80% of Slack. Azure: 80% of AWS.
Etc.
Have discovered a bug within their product(s)? Unless you have an account manager on speedial (and thus are paying the kind of fees that get you an account manager) good luck getting any kind of response that isn't some cut/paste job by a community "MVP"
Not least because you don't even need to run the container at all when developing.
Of anything I suspect Elon saw what happened woth reddit and had a "wait, we should do that!" Moment.
> Discourse is the 100% open source discussion platform built for the next decade of the Internet
Are you thinking of Discord?
I suspect that was the intent.
As for learning a functional language, I recommend this Haskell tutorial[0], and accompanying video series of an experienced haskeller (Brian McKenna) running through it[1]. I've read countless texts and tutorials explaining Haskell and FP to me but it didn't fully click until I saw someone with experience using the language and tooling effectively.
[0]: https://github.com/system-f/fp-course [1]: https://www.youtube.com/playlist?list=PLly9WMAVMrayYo2c-1E_r...
There are a few other video series from other experienced haskellers available that may be better, too, I just haven't watched them so I cannot comment.
Twilio authored/published the package GP is referring to.
You start with a "main" rail of coats. Each coat is given a number, indicating what order it is in.
You start adding coats to a new, empty, rail, using the next number. When you are done collecting coats on this new rail, you want to move your coats onto the original rail.
In the time it has taken you to collect the coats onto your rail, someone else has already added coats from their new rail to the end of the "main" rail, and they used the same base number that you have - which means you cannot just add the coats from your rail onto the main rail, else the numbering would be broken - we call this a conflict. (NB: There is a magic guardian of the rails that means this just cannot happen, which is a plot device that is just to make this metaphor work so don't question it, it's just a metaphor.)
To resolve the conflict you have the following "rebase" options:
- Slide all of the coats on the main rail up to make room for yours, and update all of the numbers on your coats, using the new number from the last coat as the base number for your rail's sequence. This ensures that everything on the main rail is "before" your rail. This is the equivalent of a rebase. After this, you can then put your coats on the end of the main rail without conflict.
- Then there is the option to take a copy of the main rail onto the front of your rail, and organising the coats one-by-one (much like in the above), placing your coat(s) in between some of the new coats on the main rail, then forcibly replacing the main rail with your updated rail. This last one is just as drastic in reality as it sounds in this metaphor. We call this the "interactive rebase" and it is rewriting history for anyone who has used the main rail before.
- Finally we have a merge which means adding one big magic coat at the end that takes the coats from both rails and combines them in a singularity, with the new base number being Hawking's radiation or something, I dunno. The metaphor is no good for merges.
(Truth be told: the entire metaphor started in my head some years ago with just the visualisation of that distinct coat rail sweep noise to squish the garments on the rail to onside to fit what our main protagonist is holding onto the rail, the rest I just back-filled over time)
Parallel.For performance degrades significantly after 2.14 billion milliseconds of system uptime