RSS.Social

Tuan-Anh Tran

follow: @[email protected]

Posts

Fix Battle.net agent went to sleep BLZBNTBNA00000005

Execution is cheap(er)

On MCP security

AI không còn là điểm khác biệt chiến lược của sản phẩm nữa

Download view-only Google Sheets

Writing your first Arch Linux package

Lite Youtube Embed for Hugo

OBS - Fedora fiasco

In market for a new TV in 2025

How to install Cursor CLI on Linux

0x0.st - temporary file hoster

PaX basic

On adopting Chainguard Images

Machine learning rig

Roblox on Linux

Cloud cost optimization at scale part 1

Reproducibility

Writing your first Wolfi package

Almost** instant k8s secret update for your application

Assume role without instance profile

CS:GO launch failure fix

Public ECR and private subnets

Shure MV7 working on Linux

Using k8s kind "rootlessly" without Docker

Làm quen với Pod Security Admission (PSA)

My blogging setup these days

How to write Node modules with Rust

What the fuck is even GitOps

Distributed tracing is the new structured logging

The state of Linux on desktop (2020)

Using Cloudflare Warp on Linux

An extremely fast streaming SAX parser for Node.js

camaro v6

From Zsh to Fish on macOS

kubectl run generators removed

Using Synology NFS as external storage with Kubernetes

Debugging Kubernetes: Unable to connect to the server: EOF

How to setup reverse proxy for homelab with Caddy server

Tips for first time rack buyer

How to setup a home VPN with Synology NAS

How to adopt UniFi Security Gateway to an existing network

Dynamic DNS with CloudFlare

Traffic from #1 post on Hacker News

The story behind my talk: Cloud Cost Optimization at Scale: How we use Kubernetes and spot instances to reduce EC2 billing up to 80%

Thoughts on Workers KV

reader

Experiment with Cloudflare Workers

Brag document

Debugging with git bisect

The state of tiling window manager on Windows 10

A beginner guide to CPU air cooling

Advanced filtering and sorting with redis (part 2)

Pi-hole

Microsoft Sculpt Ergonomic Desktop review

Optimal team size

From macOS to Windows 10

Tips on reducing WASM file size with Emscripten

Choosing a wireless router in 2019

Some lessons learnt after converting a native module to WebAssembly

How to delete Redis keys using pattern

Autocomplete at speed of light

2018: year in review

My keyboard layout

Favorite QMK hacks

Fastest way to transform XML to JSON in Node.js

Sharding and IDs

Advanced filtering and sorting with redis (part 1)

Notes on GraphQL

Kubernetes Meetup #2 slide

The Birth & Death of JavaScript

Advice to new managers

DejaLu - a new open source email client by Sparrow's author

Series and parallel execution with async/await

2017: year in review

Building containers in pure Bash and C

A better way to go through terminal command history

The silence of the Lambda

Traits of a good leader

node-prune

kompression - koa compression middleware with support for brotli

Docker Containers on the Desktop

If Your Boss Could Do Your Job, You’re More Likely to Be Happy at Work

Kubernetes-hosted application checklist (part 1)

Kubernetes-hosted application checklist (part 2)

Minimal Node.js docker container

Non-privileged containers FTW

Recent Node.js TSC fuss

node-pre-gyp and CI

tldr

Getting started with WebAssembly

The power of 2 random choices

camaro

Parsing XML at the Speed of Light

Redisearch - full text search with Redis

minideb - a small base image based on Debian

Using alpine as base Docker image

Running twemproxy on kubernetes

Setting up traefik as Ingress controller for Kubernetes

n-api: add support for abi stable module API

codis - proxy based redis cluster

Redis as a JSON store

Spot instances best practices

Debugging why k8s autoscaler wouldn't scale down

smaz.js - a Node.js module binding for smaz

Setting up fluentd log forwarding from Kubernetes to AWS Cloudwatch Logs

GopherCon 2016: Kelsey Hightower - Building a custom Kubernetes scheduler

Kubernetes spot termination notice handler

Fix Terminal no longer uses keychain in MacOS Sierra

Why we choose Kubernetes over ECS

Bring in the Goddamn Adults Already

Using ioredis with twemproxy

kube-monkey

Automate Let's Encrypt certificate genernation for Kubernetes Ingress

mycli

Sharing secret data in Kubernetes

Distelli - Your DevOps Dashboard for Kubernetes

Using squid proxy to bypass 3rd party API IP whitelisting

Getting started with Kubernetes

Should I use yarn?

The state of tiling window manager for OS X

AMP'ed

Breaking changes between v4 LTS and v6 LTS

mincss

Xbox Scorpio vs PS Neo

Do’s and Don’ts of AWS Lambda

How to import csv file in MySQL

No More Vietnam

Mildly interesting npm modules

AWS Lambda

Flynn 1.0

Open-source PaaS on AWS

Work hard and go home

Refined Twitter

Geo dynamic upstream with nginx

Build command line tools with Node.js

Classic Programmer Paintings

Google kick-starts engineering team in Singapore

Why JSON doesn't support comments

Concurrency and parallelism

Implement autocomplete with redis

Welcome the second Pom to my family

Setting up SSL certificate with Deis

Search airport by city name

How to install Discourse without Docker

A look back at 2015

MariaDB Raises $9M More, Michael Howard Named New CEO, Monty Widenius CTO

Chuyện tiền nong

Better MySQL pagination

Performance at Rest

Qmail

Explicit over clever

Step by step how to install Deis on AWS

Metalsmith - a static site generator written in Node.js

Possibly the easiest way to setup rtorrent/rutorrent

Snapp

Stuff you may not know about console

Node.js happy coding

ES6 in Node.js

Go Native - Calling C++ From NodeJS

Atom is slow but that's okay

Efficient branching workflow with git flow

Hello, HotelQuickly!

Cancelling $http request in AngularJS

How to install ZeroMQ on Ubuntu

My first Hackathon

Vì sao tôi thích xài email hơn là điện thoại

Markdown table sucks. Let's use jekyll's data files instead

Tắt tiếng của tab ở Chrome

A collective list of Manchester United players' autobiographies

MusicBrainz Picard

The Codeless Code - Fables and Kōans for the Software Engineer

Đặc quyền con người qua trò ném giấy vào thùng

Về một thách thức trong quá trình học hỏi

Love

Managing multiple SSH tunnels is easy with Secure Pipes

Official Oracle driver for Node.JS

Atom switches to io.js

BitTorrent Sync as an alternate backup solution

Incremental regeneration in latest jekyll build

Theming Apache's mod_autoindex directory listing

Some of the most useful tips I learn when working with NodeJS

Install io.js on Mac OS X

How the Other Half Works: an Adventure in the Low Status of Software Engineers

Things software developers wish they had known in their 20s

How movies could change your perception

Fix WELD-001408 unsatisfied dependencies for type error when deploying to GlassFish

REST APIs made easy with StrongLoop

Microsoft HoloLens

Create a contact form with jekyll

Fuck callbacks! Let's use generators

IO performance benchmark on RamNode

bluebird - a promise library with unmatched performance

So I upgraded my VPS

Scaling node.js application with cluster

io.js v1.0.0 released

Using AngularJS with jekyll

A minimal iTerm2 setup

AngularJS diary - Day 4

Pretender - a mock server library

The next bullet on my resume: AngularJS

How to setup rtorrent, rutorrent on Ubuntu

Using GitHub issue tracker as comment system for your static blog

Resume-driven developer

Shower thought about movie recommedation

Inline Google fonts to further reduce number of blocking CSS resources

Contexts is the perfect companion app for Amethyst

How to burn a bootable ISO file to USB stick on OS X

Awesome maching learning

Deferred font loading and using localStorage as cache

How to fix `Logon failed for login 'username' due to trigger execution` error with mssql

nodejs: callback vs promise

How to setup Sublime-IJulia with Sublime Text

A conversation with stranger

Social sharing button without embedding sharing script crap

When static website isn't fast enough

New theme

BAT script to execute commands on remote Unix machine with PuTTY

youtube-dl - A must have little gem in your toolbelt

Shorter code is better?

Where is the safest seat on airplane?

Filco Majestouch 2 Ninja Italian Red (TKL) review

Filco Majestouch 2 Italian Red (TKL) with blue switches

How to find table name when knowing column name and column value in Oracle

Some useful use cases for Java Reflection

Poker 2 keyboard with Granite and Dolch keycaps

Force Safari to refresh website's favicon

How to setup your VPS as a seedbox in under 15 mins

A poor man's seedbox for $15 a year

LaunchRocket

Download accelerators, managers for Mac

How to lazy-load CSS with JavaScript

Java 9 is coming with money API

SafariTabSwitching

Maxel - a native download accelerator for OS X

A better sitemap for jekyll

jQuery Tips and Tricks

Is Mailbox (for Mac) the last email client you ever need?

Fix unable to download huge files with varnish

Lift - an app that put your goals into action

Localization with jekyll

My favorite tiling window manager for OS X

How to setup Discourse local dev environment on OS X

Post scheduling with jekyll

CloudFlare to offer free-SSL by mid-October

jekyll full-text search without jQuery or plugin

Another attempt at regular blogging

jekyll plugin directory

Make your jekyll blog a little bit more SEO-friendly

Paginated post plugin for jekyll

How to use jekyll plugins with GitHub Pages

Writing your first jekyll plugin

Embedding Liquid code snippet with jekyll

Monthly/yearly post archive generator plugin for jekyll

Blogging with jekyll

BetterTube - A jekyll plugin for embedding YouTube videos

Optimizing the hell out of your site for PageSpeed

Static assets combine with jekyll

Things you may not know about JavaScript array

How to connect to remote Postgres DB through ssh tunnel

Returning query result as json array with Oracle 10G

Setup custom error page for jekyll on nginx

Speed up jekyll site generation with rsync

Hydra - an open-source window manager for OS X written in Lua

Clean code/dirty code

How to use SSH tunnel to access blocked websites

How to code like a dick in JS

Cakebrew

Matias Laptop Pro review

Programming is like writing a book

How to install Discourse on DigitalOcean

Tự do ngôn luận

Be happy

Matias Quiet Pro black matte case mod

My must-have Cydia tweaks/apps

Matias Ergo Pro

GasMask keycap

Features vs. Benefits

Google Nexus 5 review

Phân tâm

IntelliJ IDEA 13 released

If humans evolved from monkeys, then why are there still monkeys?

Who Needs Stored Procedures, Anyways? (2004 post)

IntelliJ IDEA 13 to be released with Java 7 Bundled Mac Installer

How to use Source Code Pro font with JetBrains IDE

FastR - an implementation of R in Java

What goes into what in MVC

How to group posts by month in Jekyll archive page

The six most common species of code

History of the browser user-agent string

Hyde

Humble New Tab Page

Letter to a young programmer

Pinboard tab sets

Nexus 5 and Android KitKat

Snip - another screenshot capture/annotation tool

Flamingo for Mac

Free OCR solution on OS X

Amethyst - A tiling window manager for OS X

Fixing Mac App Store error 100 when purchasing app

FACEMATH

Dropshelf

FileBot

Why We Hate Infographics And Why You Should

Liquid

Minbox

Volume Scroll

namebench

Contexts for Mac

Droplr Draw

Link Post in Jekyll

Nginx Plus

Shiori - A Pinboard & Delicious Client for OS X

Korean Buses Now Wirelessly Charge as They Drive

Magic

Z-Type

How Koreans Solve Their Parking Issue and Saving Oil

How To Fake Database Design

homebrew-cask

Daring Fireball User Custom Style

Layouts v2.0

MailDrop.cc - Free Throwaway Email Address

Trolling Or Just Pure Stupidity!?

Effeckt.css

A Proposal to A Better Format for Research Paper

Finally

About

Projects

Talks