Skip to content

Instantly share code, notes, and snippets.

View alvinlai's full-sized avatar

Alvin Lai alvinlai

  • Mountain View, CA
View GitHub Profile
@alvinlai
alvinlai / install-multiple-jdk-on-macos-high-sierra.md
Created February 28, 2018 00:33 — forked from ntamvl/install-multiple-jdk-on-macos-high-sierra.md
Install Multiple Java Versions on macOS High Sierra

Install Multiple Java Versions on macOS High Sierra

Install Homebrew Cask

On Mac, Homebrew is the de-facto package manager, and Homebrew Cask is the app manager. I’m going to use Cask to install Java 7 and 8.

Install Homebrew Cask first if you haven’t:

brew update
brew tap caskroom/cask
@alvinlai
alvinlai / install.sh
Last active December 31, 2017 07:43 — forked from chaos-ad/install.sh
Installing erlang in ubuntu
#!/bin/bash
# installing erlang on ubuntu's
VERSION="18.2.1"
sudo apt-get install build-essential libncurses5-dev openssl libssl-dev
sudo mkdir -p /opt/erlang/
cd /usr/local/bin/
sudo curl -O https://raw.githubusercontent.com/kerl/kerl/master/kerl && chmod a+x kerl

Effective Engineer - Notes

What's an Effective Engineer?

  • They are the people who get things done. Effective Engineers produce results.

Adopt the Right Mindsets

Rich Hickey on becoming a better developer

Rich Hickey • 3 years ago

Sorry, I have to disagree with the entire premise here.

A wide variety of experiences might lead to well-roundedness, but not to greatness, nor even goodness. By constantly switching from one thing to another you are always reaching above your comfort zone, yes, but doing so by resetting your skill and knowledge level to zero.

Mastery comes from a combination of at least several of the following:

@alvinlai
alvinlai / README.md
Created April 6, 2016 23:39 — forked from jimothyGator/README.md
Nginx configuration for Mac OS X with Homebrew, using sites-enabled directory.
mkdir -p /usr/local/etc/nginx/sites-{enabled,available}
cd /usr/local/etc/nginx/sites-enabled
ln -s ../sites-available/default.conf
ln -s ../sites-available/default-ssl.conf

File locations:

  • nginx.conf to /usr/local/etc/nginx/
  • default.conf and default-ssl.conf to /usr/local/etc/nginx/sites-available
  • homebrew.mxcl.nginx.plist to /Library/LaunchDaemons/
@alvinlai
alvinlai / pom.xml
Last active August 29, 2015 14:27 — forked from rmetzler/pom.xml
using log4j with the maven-jetty-plugin
<!-- Run the application using "mvn jetty:run" -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.9</version>
<configuration>
<scanIntervalSeconds>5</scanIntervalSeconds>
<contextPath>/</contextPath>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
//
// Regular Expression for URL validation
//
// Author: Diego Perini
// Updated: 2010/12/05
// License: MIT
//
// Copyright (c) 2010-2013 Diego Perini (http://www.iport.it)
//
// Permission is hereby granted, free of charge, to any person
@alvinlai
alvinlai / backend-architectures.md
Last active August 29, 2015 14:25 — forked from ngocphamm/backend-architectures.md
Backend Architectures
@alvinlai
alvinlai / simple-capistrano-docker-deploy.rb
Last active August 29, 2015 14:25 — forked from johnbintz/simple-capistrano-docker-deploy.rb
Simple Capistrano deploy for a Docker-managed app
# be sure to comment out the require 'capistrano/deploy' line in your Capfile!
# config valid only for Capistrano 3.1
lock '3.2.1'
set :application, 'my-cool-application'
# the base docker repo reference
set :name, "johns-stuff/#{fetch(:application)}"
@alvinlai
alvinlai / Gemfile
Last active August 29, 2015 14:22 — forked from siddharthbhagwan/Gemfile
source 'https://rubygems.org'
gem 'rails', '4.0.2'
gem "redis-rails", "~> 4.0.0"
gem 'puma'
gem 'unicorn'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'