Skip to content

Instantly share code, notes, and snippets.

View 0xcafed00d's full-sized avatar
👾
Pew. Pew. Pew.....

Lee Witek 0xcafed00d

👾
Pew. Pew. Pew.....
View GitHub Profile
KERNEL="ttyUSB[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="lmw"
KERNEL="ttyACM[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="lmw"
@0xcafed00d
0xcafed00d / startBrowser.go
Last active May 14, 2016 10:08
start browser in from go
/ startBrowser tries to open the URL in a browser
// and reports whether it succeeds.
func startBrowser(url string) bool {
// try to start the browser
var args []string
switch runtime.GOOS {
case "darwin":
args = []string{"open"}
case "windows":
args = []string{"cmd", "/c", "start"}
@0xcafed00d
0xcafed00d / Rob Pike's 5 Rules of Programming.md
Last active September 8, 2023 03:00
Rob Pike's 5 Rules of Programming

#Rob Pike's 5 Rules of Programming

##Rule 1. You can't tell where a program is going to spend its time. Bottlenecks occur in surprising places, so don't try to second guess and put in a speed hack until you've proven that's where the bottleneck is.

##Rule 2. Measure. Don't tune for speed until you've measured, and even then don't unless one part of the code overwhelms the rest.

##Rule 3. Fancy algorithms are slow when n is small, and n is usually small. Fancy algorithms have big constants. Until you know that n is frequently going to be big, don't get fancy. (Even if n does get big, use Rule 2 first.)