26 Matching Annotations
- Sep 2024
-
stackoverflow.com stackoverflow.com
-
Disable all observers in your test suite by default. They should not be complicating your model tests because they should have separate concerns anyway. You don't need to unit test that observers actually fire, because ActiveRecord's test suite does that, and your integration tests will cover it.
-
- Dec 2023
-
developers.google.com developers.google.com
-
Warning: Do not accept plain user IDs, such as those you can get with the GoogleUser.getId() method, on your backend server. A modified client application can send arbitrary user IDs to your server to impersonate users, so you must instead use verifiable ID tokens to securely get the user IDs of signed-in users on the server side.
-
- Jun 2023
-
www.postgresql.org www.postgresql.org
-
Writing json_populate_record in the FROM clause is good practice, since all of the extracted columns are available for use without duplicate function calls.
-
- May 2023
-
ux.stackexchange.com ux.stackexchange.com
-
Since using case insensitivity is so widespread, take their sign up email address and make it lower case. Whenever they try to log in, convert that to lowercase as well, for comparison purposes, when you go to see if the user exists. As far as sign up and sign in go, do a case insensitive comparison. If the person signs up as Steve@example.com, you'll still want to allow them to sign in later with steve@example.com or sTeVE@example.com.
-
But you should also keep track of the email address that they signed up with in a case sensitive fashion. Any time you send an email to them, be sure to send it with that original casing. This allows the email server to handle it however it feels like it needs to. So even though the person may always be signing in to your site with steve@example.com, if they signed up as Steve@example.com, you'll always send email to Steve@example.com, just to be safe.
-
- Apr 2023
-
security.stackexchange.com security.stackexchange.com
-
If you send links with a secret login token with email, then they should be single-use and expire rather quickly.
-
- Jan 2023
-
-
It's usually undesirable to add a default scope. It will take more effort to work around and will cause more headaches. If you know you need a default scope, it's easy to add yourself .
-
- Nov 2022
-
learn.microsoft.com learn.microsoft.com
-
Glyph 0 must be assigned to a .notdef glyph. The .notdef glyph is very important for providing the user feedback that a glyph is not found in the font. This glyph should not be left without an outline as the user will only see what looks like a space if a glyph is missing and not be aware of the active font’s limitation.
-
- Sep 2022
-
rubystyle.guide rubystyle.guide
-
Prefer alias when aliasing methods in lexical class scope as the resolution of self in this context is also lexical, and it communicates clearly to the user that the indirection of your alias will not be altered at runtime or by any subclass unless made explicit.
reassurance of lack of possibility for run-time shenanigans
-
- Jun 2021
-
stackoverflow.com stackoverflow.com
-
a principle I use is: If you have an accessor, use the accessor rather than the raw variable or mechanism it's hiding. The raw variable is the implementation, the accessor is the interface. Should I ignore the interface because I'm internal to the instance? I wouldn't if it was an attr_accessor.
-
- May 2021
-
interpersonal.stackexchange.com interpersonal.stackexchange.com
-
Please don't write answers in comments; we have a policy against this. If you have an answer to the question, write it up as an answer. Thanks.
-
-
www.impressivewebs.com www.impressivewebs.com
-
For this very reason, we have the hx’s on our site dynamically create id’s. I love being able to direct people directly to a particular part of a page when I find something interesting, but the problem is that only we, as developers, know how to do this.
-
- Mar 2021
-
www.chevtek.io www.chevtek.io
-
Write modules that do one thing well. Write a new module rather than complicate an old one.
.
-
- Jan 2021
-
blog.linuxmint.com blog.linuxmint.com
-
We can certainly explain the issues snap cause without using political or religious arguments. We did so in the documentation I linked to above.
-
-
unix.stackexchange.com unix.stackexchange.com
-
For the future, you should: Install LTS (Long-term support) versions as they have an 8-year life span (with Extended Security Maintenance) or 5 years without. The current LTS version is Ubuntu 18.04.1 LTS Bionic Beaver released on July 26, 2018 with an EOL in April 2023. OR Carefully watch the EOL of the interim / development releases and upgrade frequently.
-
- Aug 2020
-
signalvnoise.com signalvnoise.com
-
I used to be a staunch defender of proper reply styles, even for casual emails. Insert your replies below the relevant paragraph and trim the exchange to be just about the matters of discussion.
-
- Jun 2020
-
medium.com medium.com
-
Don’t apply caching if the process is expected to react to changes during the caching period. i.e. Don’t cache when mixing reads and writes.
-
- May 2020
-
kellysutton.com kellysutton.com
-
there’s 3 steps to building software: Make it work Make it right Make it fast
-
-
gitlab.com gitlab.com
-
Good commit hygiene in general is a tough thing to enforce. It requires manual labor and descipline, from both the author and the reviewer.
-
-
developer.mozilla.org developer.mozilla.orgPromise1
-
in the absence of an immediate need, it is simpler to leave out error handling until a final .catch() statement.
-
- Apr 2020
-
guides.rubyonrails.org guides.rubyonrails.org
-
When sanitizing, protecting or verifying something, prefer whitelists over blacklists.
-
-
-
in order to track the always-improving upstream project, we continuously rebase our patches on top of the upstream master
-
-
-
it reminds me of IT security best practices. Based on experience and the lessons we have learned in the history of IT security, we have come up with some basic rules that, when followed, go a long way to preventing serious problems later.
-
The fact is that it doesn’t matter if you can see the threat or not, and it doesn’t matter if the flaw ever leads to a vulnerability. You just always follow the core rules and everything else seems to fall into place.
-
-
-
Remove upper bound in our dependencies Doing this we are only asking people to fork our gem or open issues when they want to use a new version of the dependency and we still didn't tested with it.
-
-
stackoverflow.com stackoverflow.com
-
I usually write example code that is for both Chrome and Firefox WebExtensions.
-