Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

457 total results found

SES: SMTP user credentials

Infrastructure (AWS) SES

SMTP credentials vs. IAM Access Keys If it looks like an IAM credential, walks like an IAM credential, and quacks like an IAM credential... well, this time it's actually an SMTP credential.  When you create SMTP user credentials in SES, be aware that althoug...

HTMLPurifier

Third-party libraries Backend libraries

Homepage https://htmlpurifier.org/ What is it? A heavyweight library for sanitizing strings that may contain malicious or 'dirty' HTML. Why did we choose it? The comprehensiveness of its checks, and its integration with PHP. What do we use it for? Serve...

LAMP (Linux, Apache, MariaDB, PHP)

Tech stack Frameworks & Runtime Environments

Homepage https://en.wikipedia.org/wiki/LAMP_(software_bundle) What is it? A common bundle of four pieces of software used to power webservers: L: the Linux operating system A: the Apache webserver software M: the MySQL database software (or more modern...

Node Package Manager (npm)

Tech stack Build, dependency and code management

Homepage https://www.npmjs.com/ What is it? A dependency and package manager for Node.js projects, and a central repository for Node libraries. Why did we choose it? It's damn good, that's why. All manner of useful libraries there that help us to make bet...

GitHub

Tech stack Build, dependency and code management

Homepage https://github.com/ What is it? A version control manager; effectively it's a cloud service and a client for using the Git version control system for code management. Why did we choose it? It's free, works well, and has solid support and usabilit...

Requesting SSL certificates with more than one domain

Infrastructure (AWS) ACM

When requesting an ACM certificate, AWS will ask you to add some CNAME records in Route 53 (or your DNS provider if not using Route 53) to prove you own the domain. If you are requesting a certificate that covers multiple domains (e.g. "yourwebsite.com" and "...

robots.txt files

Code Standards: Backend

If you are against crappy, unethical AI bots scraping your website (as you should be), bear in mind that improper use of the robots.txt file can do more harm than good. Do not disallow everything A simple robots txt file that disallows all web crawlers looks...

Outdated AWS docs for CloudFront+WAF integration

Infrastructure (AWS) CloudFront

There are several outdated articles on the AWS website about how to integrate CloudFront and WAF (including some articles that mention writing your own Lambda function to automatically update your load balancer's security group with CloudFront IP addresses). ...

Do we use an AI detector?

Frequently Asked Questions

No. Why we do not use an AI detector Bad Accuracy AI detectors are notorious for vastly overstating their accuracy, because they usually cherry-pick the sample data on which to conduct tests, and then use the results of those tests to advertise themselves. ...

Do we use a search provider?

Frequently Asked Questions

No, we don't. Why we don't use a search provider There isn't anything specifically wrong with most search providers - they don't have the same ethical issues as 'AI detection' providers, for instance. There are two reasons we don't use a search provider: Co...

The special Lightsail VPC

Infrastructure (AWS) Lightsail

Normally when you use Lightsail, you can't connect to other AWS resources from your Lightsail servers (e.g: you won't be able to connect to an RDS database). This is because your Lightsail resources are inside their own special VPC, and thus they can't see you...

JavaScript does not support 64-bit integers

Language pitfalls JavaScript

In most languages, a long is a 64-bit integer, for use when a 32-bit integer isn't big enough. JavaScript doesn't have such a concept: all numbers in JavaScript are represented as 64-bit doubles (i.e. double precision floats). That does not have the same maxim...

Swing / AWT

Language pitfalls Java

Invoking changes to your Swing UI All Swing events happen on one thread (The EDT, or Event Dispatch Thread). Doing processing on this thread in your normal code logic will cause your UI to freeze up while your processing is done, since all Swing rendering is ...

Asynchronous code pitfalls

Language pitfalls General pitfalls across languages

Using Promises incorrectly Not respecting the order of code execution can have unexpected results. For instance: async function determineCultureLevel() { let cultureLevel = "Philistine"; let promise = new Promise((resolve, reject) => { // ...

PHP version changes

Language pitfalls PHP

Some seemingly basic functions only exist in PHP 8+ Some normally core functions in other languages only exist in new-ish versions of PHP. Here's a list of functions that are not available in older versions: // https://www.php.net/manual/en/function.str-cont...

Null comparisons and falsey values

Language pitfalls General pitfalls across languages

Some languages have weird rules for null comparisons and falsey values; try to keep that in mind when coding weird edge cases. Some examples below. PHP $shadalooLeader = "M. Bison" $ryu = ''; $ryu == null; // Evaluates to true $ryu === null; // Eval...

Passing by value vs reference

Language pitfalls General pitfalls across languages

In some languages, you have to pay attention to using variables from a greater scope (e.g. a global variable or function variable) inside an anonymous function, if you intend to return the same reference back. PHP Example Here's some code using promises: us...

Deprecated or incorrect usage of functions

Language pitfalls PHP

A lot of older PHP functions and constants are effectively deprecated or not recommended for use, and it's not always obvious that this is the case or what the replacements are. FILTER_SANITIZE_STRING (for the filter_var, filter_input methods) is deprecated, ...

Configuring iptables

Webserver Documentation

You can configure IPTables to restrict access to a particular server by IP address. Unless you save the configuration for permanent use via the iptables-save command, your configuration will not persist between server restarts.  Be sure your configuration is...

Image Download Function

Infrastructure (AWS) CloudFront

Below is an example of a function you can use to set the Content-Disposition HTTP header when a URL's query string includes "dl=1", i.e. when you want a user's browser to download an image rather than display it. var validSuffixes = [".jpg", ".png", ".jpeg", ...