297 private links
Notes stow metadata about anything tracked by git—any object: commits, blobs, and trees.
The git project itself offers an example of git notes in the wild. They link each commit to its discussion on their mailing list.
Other folks are using notes for things like:
- Tracking time spent per commit or branch
- Adding review and testing information to git log
- And even fully distributed code review
Review notes are used by Gerrit (Wikimedia) and many google projects. For example:
commit d1d17908d2a97f057887a4afbd99f6c40be56849
Author: User <user@example.com>
Date: Sun Mar 27 18:10:51 2022 +0200
Change the thing
Notes (review):
Verified+1: SonarQube Bot
Verified+2: jenkins-bot
Code-Review+2: Reviewer Human <reviewerhuman@wikimedia.org>
Submitted-by: jenkins-bot
Submitted-at: Tue, 14 Jun 2022 21:59:58 +0000
Reviewed-on: https://gerrit.wikimedia.org/r/c/mediawiki/core/+/774005
Project: mediawiki/core
Branch: refs/heads/master
There is also an extension from Google to git notes dedicated to code review: https://github.com/google/git-appraise. Request review, comment and review and merge are included.
Its authors have declared it a “fully distributed code review”—independent of GitHub, GitLab, or any other code forge.
Git notes are however a pain to use. Mhmhmhm #idea #project on top of the git note commands?
For commits, you can make viewing and adding notes easier using fancy options in your gitconfig3. But for storing notes about blobs or trees? Forget it. You’d need to be comfortable rooting around in git’s plumbing first.
Much of the value of git repos ends up locked into forges, like GitHub. Git notes are a path toward an alternative and it could make it possible to distribute the history of an entire project.
aria-label and aria-labelledby are exclusive. So they can be enforced for components in typescript:
type ToggleSwitchProps = {
name: string;
checked: boolean;
handleToggle: () => void;
size?: "sm" | "lg" | "base";
classNames?: string;
} & ({ ariaLabel: string; ariaLabelledBy: never } | { ariaLabel: never; ariaLabelledBy: string });The idea of this webring is to allow anyone to have a cute little badge on their website that shows their relationship (whether platonic or romantic) with a certain character!
Smoothen the fork of Firefox
It’s a reminder that reliability, consistency, and user satisfaction can coexist in the realm of software development.
Maintaining, improving code, fixing bugs and delivering minor features. Small step by small steps.
Just for the expression:
Russian: Killing two rabbits with one shot
German: Killing two flies with one swat
Francais: Faire d'une pierre deux coups
TL;DR security vulnerabilities introduced by new Rust contributors are largely less than C++ contributors. They use the amount of commits to measure it as experience. It confirms the claim of the
Namely, while it may still be true that Rust may feel like a more difficult language to learn, in at least some ways, new contributors benefit from its adoption, with their first contributions being less than 2% as likely to introduce vulnerabilities as C++, and first-time contributors appearing at a notably higher rate in the projects examined.
The results should not be used as is, as there are some effects:
- does Rust increase the number of contributors or does Rust act as its own filter and
reduce the rate of new contributors entirely - it is possible Rust developers are more experienced with programming in general. Note that the study focused on new contributors, not new maintainers.
- at around 18,000 commits, a C++ developer will be less likely to introduce a vulnerability than an equivalently experienced Rust developer.
- Finally, there is some limitation to these results in that they
all come from Oxidation projects.
Nice: a web service that creates a calendar event from a URL
To my surprise they didn’t use skip links when they were presented one. [...] They didn’t understand the purpose of these links.
He explained that when he clicks on a link, for instance to an interesting article about skip links, he expects the first thing he encounters to be the article itself.
Instead of a "Skip to content", a "Skip to navigation" could be better.
- Automating stuff gives you superhero strengths
- Coding is fun (and we can forget the rest)
- Sharing is fun too
- Elegant, creative solutions
- Talk to a machine
- Standing on the shoulders of giants
The author takes the example of a tree structure.
TL;DR; Start with lifetimes, if it is not enough and you don't need a specific guarantee: Box, then go for Rc or Arc if needed.
The difference between professional and hobby is accountability. In professional programming, you're expected to get the job done.
If a skill becomes obsolete, it's not a skill.
Professional programmers have to balance constraints: deadlines, budgets, and code quality for example.
At the end one of the most important fact is communication.
Various way to print "Hello World!" in rust
Advantages of types: they are here to help, improve readability, and provide context