As I've been exploring the brave new world of AI developments, I keep coming across different tools and platforms for the different types of AI. I'm talking about categorizing by Text to Video models,
AI
![[Part VI] Healthcare and Health Insurance in the US](https://michaelcho.me/cdn-cgi/image/width=1280,quality=82,format=auto,fit=scale-down/uploads/ba740840/au-to-us-guide-part-vi.webp)
This post covers healtchare and health insurance issues when working in the US as an Aussie.
Personal
![[Part V] Finding Housing in the US as an Aussie - Renting, Buying, and Selling](https://michaelcho.me/cdn-cgi/image/width=1280,quality=82,format=auto,fit=scale-down/uploads/2f4c5e34/au-to-us-guide.webp)
Part V in my series of posts about moving to the US as a software engineer covers finding housing in the US, including renting, buying, and selling real estate as an Aussie.
Personal

My updated list of various AI-specific terms as I learn about the field.
AI
Part IV of the guide for moving from Melbourne to San Francisco covers my experience with the E3 visa, which allows myself and my wife to work in the US.
Personal
![[Part III] Compensation and Interviewing in Tech: Differences between Australia and the US](https://michaelcho.me/cdn-cgi/image/width=1280,quality=82,format=auto,fit=scale-down/uploads/cc5faedf/au-to-us-guide.png)
This is Part III, the third post in a series about how I moved from Australia to the US as a software engineer. This post dives into the compensation and interviewing differences used by tech companies in San Francisco.
Personal
The second post in a series about moving from Australia to the US as a software engineer. This time focussed on finding a job.
Personal
<p>The first part in a series of 4 posts about my experience moving from Australia to San Francisco as a software engineer with a wife and young family.</p>
Personal
<p>A summary of how to serialize and deserialize from Python data structures into JSON-compatible strings, which is especially useful when working with API requests and responses.</p>
Python · Javascript
<p>A primer on bitwise operators in Python - left and right shifting, bitwise and / or / exclusive or, and complements.</p>
Python · Software Fundamentals
<p>An easy introduction to binary numbers, which will lead to a follow-up article on bit manipulation in Python.</p>
Python · Software Fundamentals
<p>Basic overview of parallel / concurrent programming, including comparisons between multiprocessing, multithreading, and asyncio (coroutines) in Python.</p>
Python

<p>How to find Redshift current date and other common expressions for working with date, time, datetime, and timestamp columns in MySQL 5.7.x and Redshift.</p>
MySQL · Redshift
<p>Using Python, a short example on how to delegate specified methods to another object, as compared to composition and inheritance.</p>
Python

<p>How to use enums in your models to enforce value consistency.</p>
SQLAlchemy · MySQL · Python
<p>A template file for using conditional arguments when running Python scripts from the command line.</p>
Python
<p>I've always struggled to remember between these very similar methods in the SQLALchemy ORM - so I took some time out to research these and write it down.</p>
Python
<p>A few notes on the code review process, and the steps I go through when reviewing.</p>
Product · Python

<p>Building model definitions for many-to-many relationships via a secondary table.</p>
Python
<p>Sick of `alembic merge heads` slowing down your builds? Here's a short bash script I wrote to rename your migration files and update its down revision.</p>
Python · Tools · Bash · MySQL · SQLAlchemy
<p>Want the power of Periscope or Tableau, without the big monthly bill? Setup Metabase to run locally on your CentOS server.</p>
Product · Servers and Scaling · Tools
<p>Mount a directory to be shared between multiple servers using Network File System (NFS).</p>
Servers and Scaling
<p>Dive into SQLAlchemy's little known `event.listen` method to automatically generate slugs when saving a model instance.</p>
Python
<p>How to use the `do` Jinja extension to modify an existing dictionary in your view template.</p>
Python
<p>Configuring your Lambda function for use with an Alexa skill.</p>
Product · Servers and Scaling
How to create and configure a custom Alexa Skill.
Product · Servers and Scaling
How to build a server-less application which handles authentication, saves details to DynamoDB, and communicates via Amazon's Alexa-enabled products.
Product · Servers and Scaling
<p>A short snippet for creating a template filter, to present datetime objects in Jinja templates.</p>
Python

<p>Want to store JSON-serialized data in your database? But sick of calling `json.loads()` and `json.dumps()` when dealing with this data in your Flask app? Read on!</p>
Python
<p>A step by step guide (with example files) to open a port using IPtables, to allow restricted inbound traffic to a server.</p>
Servers and Scaling

<p>How to fix alembic's "Multiple head revisions are present for given argument 'head'" error.</p>
Python

<p>Guide to automating server deployments with Ansible playbooks, with example files.</p>
Servers and Scaling

<p>Centralize your logging by using Filebeat to send log files to Logstash.</p>
Servers and Scaling
<p>A small Python script to take action whenever a new file is uploaded to a directory or its contents change.</p>
Python · Servers and Scaling
<p>Review of 3 common Python-based data pipeline / workflow frameworks from AirBnb, Pinterest, and Spotify.</p>
Python · Servers and Scaling
<p>A simple Bash script to check multiple server instances are responding, and rows are being added to a MySQL database.</p>
Servers and Scaling · Bash · MySQL

<p>Installation steps to start serving any PHP application (eg Wordpress) using FPM on CentOS, together with a sample Nginx config file.</p>
Servers and Scaling
<p>Screen is one of my favourite utilities when managing servers - it allows you to use multiple shell windows from a single SSH session and to keep these active even after logging out. It is super useful for monitoring long-running processes.</p>
Servers and Scaling

Short snippets showing how I usually parse JSON objects from API responses into a custom Typescript class, and how it's used in VueJS.
Javascript

A handful of useful command line snippets for Bash and ZSH.
Bash

Fiddling with Algolia's vue-instantsearch component to reset the search input when selecting a result.
Javascript
<p>My notes for introducing a junior engineer to client-side Javascript for the first time, touching briefly on vanilla JS, jQuery, and VueJS.</p>
Javascript

<p>Some thoughts on what code reviews are and are not.</p>
Product

<p>Summary notes from the Browser Rendering Optimization course on Udacity focussed on building 60 fps apps.</p>
Product · Javascript

<p>Are there any factors which help evaluate a product as a bronze, silver, or gold standard of quality?</p>
Product

<p>A glossary of terms commonly used in Angular JS documentation and tutorials.</p>
Javascript

<p>A short snippet for testing AngularJS with Jasmine.</p>
Javascript
<p>AngularJS has a good balance of maturity, community support, and productivity - suitable for use either by itself or together with jQuery in production apps.</p>
Javascript

<p>Notes on using a HTTP / reverse proxy (Charles) to view all traffic between your mobile device and the internet.</p>
Tools · Android

<p>I like to use CSS selectors like .margin-top-10, .padding-right-20, etc to quickly style a new page. Here's how I create them in SASS.</p>
Tools

<p>My notes on using RoR for formatting times and datetimes to strings, and parsing strings to time objects.</p>
Ruby on Rails

<p>Using EventBus to update your Android app after receiving the contents of a JSON API.</p>
Android
<p>Square's Retrofit library together with EventBus makes it super simple to parse the contents of a JSON API into your Android app.</p>
Android
<p>A really simple utility file I keep around in my Android projects which processes a raw JSON file into a List of objects.</p>
Android

<p>Build a swipe to refresh list, which only refreshes when at the top of the list.</p>
Android

<p>How to create an autocomplete text field in Android, which displays suggestions in the dropdown and has a clear button.</p>
Android

<p>A short Rspec snippet to verify the correct concerns have been included in a controller.</p>
Ruby on Rails
<p>Organise your routes.rb file into smaller files, works in both Rails 3 and 4.</p>
Ruby on Rails
<p>A technique to generate a full static HTML page for caching, based on any specified conditions.</p>
Ruby on Rails

<p>Listing out my top 10 recommendations for how to structure and layout rspec tests for Rails models.</p>
Ruby on Rails
© 2026 Michael Cho