This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #![warn(rust_2018_idioms)] | |
| #[derive(Debug)] | |
| pub struct StrSplit<'haystack, D> { | |
| remainder: Option<&'haystack str>, | |
| delimiter: D, | |
| } | |
| impl<'haystack, D> StrSplit<'haystack, D> { | |
| pub fn new(haystack: &'haystack str, delimiter: D) -> Self { |
The PATH is an important concept when working on the command line. It's a list
of directories that tell your operating system where to look for programs, so
that you can just write script instead of /home/me/bin/script or
C:\Users\Me\bin\script. But different operating systems have different ways to
add a new directory to it:
- The first step depends which version of Windows you're using:
- If you're using Windows 8 or 10, press the Windows key, then search for and
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| # | |
| # Script for running `go test` a bunch of times, in parallel, storing the test | |
| # output as you go, and showing a nice status output telling you how you're | |
| # doing. | |
| # | |
| # Normally, you should be able to execute this script with | |
| # | |
| # ./go-test-many.sh | |
| # |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| % Some people asked the LaTeX template for http://pluskid.org/assets/chiyuan-resume.pdf | |
| % So I put a sample here. Feel free to use / modify it. Note you need to use xelatex to | |
| % compile it and change the fonts to the ones you prefer and have on your system. | |
| \documentclass[11pt]{article} | |
| \usepackage{color} | |
| \definecolor{ColorURL}{rgb}{0.1,0.12,0.45} | |
| \usepackage[colorlinks=true,urlcolor=ColorURL]{hyperref} | |
| \usepackage{fontspec,xunicode,xltxtra} | |
| \usepackage[left=.8in,right=.8in,top=.9in,bottom=.7in]{geometry} | |
| \usepackage{setspace} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env python3 | |
| # Copyright 2014 Brett Slatkin, Pearson Education Inc. | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Latency Comparison Numbers (~2012) | |
| ---------------------------------- | |
| L1 cache reference 0.5 ns | |
| Branch mispredict 5 ns | |
| L2 cache reference 7 ns 14x L1 cache | |
| Mutex lock/unlock 25 ns | |
| Main memory reference 100 ns 20x L2 cache, 200x L1 cache | |
| Compress 1K bytes with Zippy 3,000 ns 3 us | |
| Send 1K bytes over 1 Gbps network 10,000 ns 10 us | |
| Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD |