- Consider your “distribution boundaries”. Are you gluing separate components together? Be aware of performance tradeoffs for monolithic vs distributed systems. source.
- “Every remote call travels on the cyber equivalent of a horse and carriage.”
- How fine/coarse-grained are your interfaces? The more distributed, the coarser your interfaces should be
- “All sorts of places in the system will change shape to minimize remote calls.”
- Introduce public vs private methods.
- Conflict between REST structural model and the need for “coarse-grained” interfaces at remote boundaries.
- The “remote facade” pattern (same source) is a way to work around this: Certain objects that explicitly (unavoidably, to anyone using them)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Detect type of caught error and return its message, optionally running type-specific callbacks | |
* | |
* @example | |
* catch (err) { | |
* const { message } = parseCaughtError(err); | |
* console.log(message); | |
* } | |
* | |
* @NOTE Returns an option, to ease iterating to return other properties when needed e.g. stack |
I hereby claim:
- I am mattheweppelsheimer on github.
- I am mattepp (https://keybase.io/mattepp) on keybase.
- I have a public key ASA_tiocasAaFuFN0-RMDvcnHHVRNbVJe_qQSRPi02IQvQo
To claim this, I am signing this object:
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Get an HTML img element representing an image attachment | |
* Based on wp_get_attachment_image(), without height and width. | |
* | |
* While $size will accept an array, it is better to register a size with | |
* add_image_size() so that a cropped version is generated. It's much more | |
* efficient than having to find the closest-sized image and then having the | |
* browser scale down the image. | |
* | |
* @since 2.0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Support TablePress shortcodes in the administrative back-end | |
* | |
* Hook to `admin_init`. | |
* | |
* @author Matthew Eppelsheimer | |
*/ | |
function rli_support_tablepress_shortcodes_in_admin() { |
Bandwidthism is differential treatment based on bandwidth quality or perceived bandwidth quality. Bandwidthism is the systematic oppression of subordinated bandwidth quality classes to advantage and strengthen the dominant bandwidth quality classes. It’s the systematic assignment of characteristics of worth and ability based on bandwidth class.
Adapted from Class Action's definition of Classism
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// An idea for a way to always look in the child theme first, even if you're in a Fractal (parent theme) class. | |
// Every time you use would require_once for a file with a class you're about to extend, use fractal_require(), instead. | |
function fractal_require( $file_name_without_extension ) { | |
$overriding_file = get_stylesheet_directory() . "/fractal/$file_name_without_extension.php"; | |
if ( file_exists( $overriding_file ) ) { | |
require_once $overriding_file; | |
return true; | |
} | |
// At this point, fall back to just require_once, and assume in the same directory |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Prepare post types to associate taxonomy with | |
// This will only return public post types (excluding for example attachments, revisions, and nav_menu_items) | |
$object_types = get_post_types( array( 'public' => true ), 'names' ); | |
// Prepare args to register taxonomy | |
$args = array( | |
'label' => _x( 'Objects', 'object taxonomy label' ) // plural label |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// Remove addition of "(Publication)" to WP Publication Archive title output | |
function rli_normalize_wp_pubarch_title_output( $modified_title, $original_title ) { | |
return $original_title; | |
} | |
add_filter( 'wp_pubarch_publication_title', 'rli_normalize_wp_pubarch_title_output', 100, 2 ); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# --- Ignore uploads | |
wp-content/uploads/ | |
# --- Ignore default content | |
wp-content/themes/twentyeleven/ | |
wp-content/themes/twentytwelve/ | |
wp-content/themes/twentythirteen/ | |
wp-content/themes/twentyfourteen/ |
NewerOlder