Enable JavaScript to use search. / 検索を使用するには JavaScript を有効にしてください。
Posts
Thu, February 20, 2020
3 min read
Flutter Introduction | App Creation ~ Running on Android Emulator and iOS Simulator
A Flutter getting-started walkthrough — install, fix flutter doctor issues, and run on Android Emulator and iOS Simulator.
read more →
Sat, February 15, 2020
Solved Android 10 Tethering Issue
Fixing broken tethering on Android 10 by tweaking the IIJmio APN configuration.
Thu, February 13, 2020
2 min read
[G Suite] Settings and Rules for Sharing Google Drive with External Organizations and Personal Gmail Accounts
Operating rules and steps for sharing G Suite Google Drive with external orgs and personal Gmail accounts.
Tue, February 11, 2020
1 min read
[G Suite] Internal Operating Rules for Google Calendar
Internal Google Calendar rules in G Suite: personal-to-company import OK, company-to-personal export NG.
Sat, February 8, 2020
Steps to Request Release and Change GitHub Username
Requesting release of an inactive GitHub username and changing your account to it, with a sample support message.
Thu, February 6, 2020
[G Suite] Whitelisted Domains and Google Drive Sharing Settings
How to whitelist an external domain in G Suite so it can be added to a shared drive.
Tue, February 4, 2020
How to Deploy cors-anywhere to Heroku
Deploying cors-anywhere to Heroku to run your own CORS proxy.
Sat, February 1, 2020
How to Send Slack Messages with Google Apps Script (GAS)
Sample code for calling a Slack Incoming Webhook from Google Apps Script via UrlFetchApp.
Thu, January 30, 2020
4 min read
'Corporate Engineer Night #2: We'll Become Beloved Corporate IT' Participation Report #CorporateEngineerNight
A report from Corporate Engineer Night #2 in Tokyo, with LT summaries and startup corporate-IT advice from the after-party.
Tue, January 28, 2020
Google Drive Shared Drive and Folder Recommended Structure [For Corporations]
A recommended Google Drive shared drive and folder structure for corporations that have just adopted G Suite.
Sat, January 25, 2020
G Suite Administrator Post-Implementation Configuration Checklist
A post-deployment G Suite admin checklist — security, end-user access, Drive sharing, and email hardening.
Thu, January 23, 2020
Notion Introduction
A curated set of articles for going from Notion beginner to proficient user.
Tue, January 21, 2020
VALUE-DOMAIN DNS Settings Not Reflecting Due to Unconfigured Name Servers
How to fix VALUE-DOMAIN DNS not reflecting by configuring the name servers to ns*.value-domain.com.
Sat, January 18, 2020
[G Suite] How to Configure Mandatory Two-Factor Authentication
Reference links, my configuration, and an announcement email template for enforcing 2FA in G Suite.
Thu, January 16, 2020
.jp .co.jp Domain Registration and Management Service Comparison Survey Report
Comparing .jp and .co.jp registrars for corporate use, filtering on two-factor authentication and Whois privacy.
Tue, January 14, 2020
Book Review: Insights from 'A Not-So-Boring Future Found in Estonia, Leading the Way with Blockchain and AI'
Takeaways from Estonia's e-government — X-Road and the idea that data preservation is enough to rebuild a nation — applied to software design.
Sat, January 11, 2020
Express + Mongoose MongoDB Connection Configuration Sample Code
Sample code for connecting Express + Mongoose to MongoDB, walked through commit by commit.
Thu, January 9, 2020
Books I'd Recommend to Engineering Managers
Books I recommend to Engineering Managers, gathered as I handed off the EM role.
Tue, January 7, 2020
[Nginx] add_header Not Reflected Due to Overwrite Issue and Solution
Why Nginx add_header at the server level disappears when a location block adds one, and how to work around it.
Sat, January 4, 2020
How to Create Fixed URLs for Google Hangouts
Create a fixed Google Hangouts URL from a personal account by extracting a far-future Google Calendar video conference URL.
Thu, January 2, 2020
Personal Metrics for Story Points in Scrum Development
A personal Fibonacci story-point to time conversion table, anchored on the Pomodoro Technique.
Sat, December 28, 2019
ESLint Installation and Initial Setup for Express (Node.js) Projects
Installing and configuring ESLint in an Express (Node.js) project, walked through as a PR.
Thu, December 26, 2019
[JavaScript] Array.includes vs Array.indexOf Performance Comparison
A performance comparison of Array.includes vs Array.indexOf on jsPerf and across Node.js versions.
Tue, December 24, 2019
[Mongoose] How to Fix (node:42424) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
Fix the Server Discovery and Monitoring DeprecationWarning with useUnifiedTopology: true.
Sat, December 21, 2019
[Mongoose] How to Fix (node:42286) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
Fix the MongoDB URL parser DeprecationWarning by passing useNewUrlParser: true to mongoose.connect.
Thu, December 19, 2019
Amazon Elasticsearch Service 2.3 [script_exception] scripts of type [inline], operation [search] and lang [mustache] are disabled Error
Responding to the Mustache script_exception on Amazon Elasticsearch Service 2.3: drop Mustache or migrate to 5.1+.
Tue, December 17, 2019
[JavaScript] How to Extract Only URL from CSS background-image
Basic and class-scoped samples for pulling the URL out of a CSS background-image value with regex.
Sat, December 14, 2019
How to Measure Total Execution Time of MongoDB Queries
Measure total execution time of a multi-line MongoDB query block with a simple new Date() diff.
Thu, December 12, 2019
How to Prevent Sending JavaScript Errors from Specific Browsers with Sentry raven-js
Sample code that filters out errors from unsupported browsers (like pre-IE11) using Sentry raven-js's shouldSendCallback.
Tue, December 10, 2019
Free, Long-Duration, Multi-User Web Video Conferencing Tools
Comparing free web conferencing tools for long, multi-user calls — Google Hangouts, Skype, Zoom, and Whereby.
Sat, December 7, 2019
ReconnectingWebSocket - JavaScript Library for Handling WebSocket Auto-Reconnection Elegantly
Side-by-side sample code for WebSocket auto-reconnection using the raw API vs the ReconnectingWebSocket library.
Thu, December 5, 2019
Upgrading Windows 7 to Windows 10 (Lenovo G550, Backup, Memory Upgrade)
Upgrading a Lenovo G550 from Windows 7 to Windows 10 and bumping RAM to 8GB.
Tue, December 3, 2019
Engineering Manager in a Fully Remote Engineering Organization
Being an Engineering Manager in a fully remote org — tools, 1on1 prep, and attendance conventions.
Thu, November 28, 2019
AWS CLI Commands for Bulk Uploading Files to S3
`aws s3 cp` / `sync` commands for bulk-uploading files to S3, with --include / --exclude and --dryrun tips.
Tue, November 26, 2019
Recommended Articles for Understanding Cookies and Sessions
Recommended reading list for beginner web engineers to understand Cookies, Sessions, and IPA's session countermeasures series.
Sat, November 23, 2019
[Mongoose] How to Fix Error: Unable to invalidate a subdocument that has not been added to an array.
The 'unable to invalidate a subdocument' Mongoose error explained via a bad type: ObjectId value.
Thu, November 21, 2019
[Git] How to Fix error: cannot lock ref 'refs/remotes/origin/xxx': 'refs/remotes/origin/xxx/yyy' exists;
Resolving the git fetch cannot lock ref error by pruning stale remote refs with git remote prune origin.
Tue, November 19, 2019
Redis Replication (Master-Slave) Environment Setup [docker-compose Edition]
Setting up and verifying a Redis master-slave replication environment with docker-compose.
Sat, November 16, 2019
Determining Country, City, Postal Code, and ASN from IP Address [GeoIP2 + Node.js]
Node.js samples for looking up country, city, postal code, and ASN from an IP with GeoIP2.
Thu, November 14, 2019
[Linux] Command to Delete Old Files by Specifying Date and Time
Use find with -mtime / -atime and xargs rm to bulk delete old files on Linux when freeing up disk space.
Tue, November 12, 2019
[Linux] Command to Check Directories with High Disk Usage
Combine du and sort to find the top directories eating disk space on Linux when hit with a disk full warning.
Sat, November 9, 2019
How to Deploy an Existing Express.js Project to Heroku
Adding a Procfile to an existing Express.js app and deploying it to Heroku.
Thu, November 7, 2019
[JavaScript] Use unicode-substring for Extracting Parts of Strings Containing Unicode
Why substring breaks surrogate pairs — and how the unicode-substring package slices Unicode strings safely.
Tue, November 5, 2019
[JavaScript] Detecting Hyphens and Dashes with Regular Expressions Using unicode-regex + Dash_Punctuation
Detect the many kinds of hyphen and dash characters at once by combining unicode-regex with the Dash_Punctuation category.
Sat, November 2, 2019
[Express.js] Timeout Configuration Changes and Sample Code for Testing
Express.js default timeout, plus sample code for server / request / response setTimeout behavior.
Thu, October 31, 2019
JavaScript Function Currying Sample Code
Currying samples that let you call add(2)(3)(4).result(), written in both ES5 and ES6 styles.
Tue, October 29, 2019
[Linux/macOS] Batch Compress Files to .gz with gzip Command
Use gzip * to batch compress log files and free up disk space when hit with a sudden disk full incident.
Sat, October 26, 2019
Achieve Comfortable Video Calls with Noise Cancelling App Krisp
Using the Krisp noise-cancelling app to keep remote video calls clear from background noise.
Thu, October 24, 2019
[WordPress] Fixed Email Sending Issue with WP Mail SMTP Version 1.7.0
How I fixed WP Mail SMTP 1.7.0 by swapping the From Email and From Name fields back to their correct values.
Tue, October 22, 2019
Differences Between JavaScript Functions and Methods
The difference between JavaScript functions and methods, framed around MDN, CodeZine, and how this is bound.