My goal is to consistently learn new concepts and ideas that help me grow and enhance my understanding of software. I hope to develop this repository by adding summary notes on new topics throughout my career. The purpose of this repository is to help me retain all the information I have learned, so take a look into my brain and find some topics to delve into!
I take a lot of summary notes here, but I will often also put my learnings into an anki deck which is a wonderful way to do spaced repetition learning for long term retention. Taking summary notes in combination with some form of active recollection has worked really well for me and it would be my recommendation to anyone looking to always be learning in this fast changing industry.
Write notes in Markdown with embedded LaTeX. When you push to develop
, get CircleCI to render HTML pages using a small Ruby script and Pandoc, and then push the results to a Github Pages branch. The website build process is based on work by @davepagurek.
Each folder that contains Markdown files will have its own index in the rendered site. I tend to use one folder per course. Inside a course folder, I also make an img
directory that just has images I use in my notes that I then reference with a relative path (e.g. <img src="img/some_image.png" />
).
I use Vim to edit my files. I use my fork of markdown-preview to create a Markdown preview with MathJax support, only refreshed on save. Here's a snippet from my .vimrc
:
" In Vundle setup
Plugin 'iamcco/mathjax-support-for-mkdp'
Plugin 'davepagurek/markdown-preview.vim'
Plugin 'drmingdrmer/vim-syntax-markdown'
" Markdown preview config
" Only refresh preview on save (default is every edit, jumps around too much for my liking
let g:mkdp_refresh_on_save = 1
" Use Safari for preview (feel free to change to Chrome)
let g:mkdp_path_to_chrome = "open -a Safari"
" Use <Leader>mm to launch preview, <Leader>mn to close
nmap <silent> <Leader>mm <Plug>MarkdownPreview
nmap <silent> <Leader>mn <Plug>StopMarkdownPreview
" Enable MathJax
let g:vim_markdown_math = 1
develop
branchmaster
deploy.sh
We live in interesting times. As development gets distributed across the globe, you learn there are lots of people capable of doing your job. You need to keep learning to stay marketable. Otherwise, y
The recap of the Toastermater Day from BBB center: Word of Day: ?? President Opening Issa Ma Issa Ma, our powerful & strong president, has introduced about the Toastmasters International as a
我们大多数人都可以学会用简单的指令自己做一些简单的事情。然而,要了解更复杂的事情,最好是有一个老师。 Most of us can learn that use some easy command ./instructions to do some easy things (simple) on our own/by ourselves However ,to learn about someth
The first day,when I read 'we need practice so we need a Javascript Interpreter.','Every browser has Javascript Interpreter.' we can find them in the SETTING or TOOLS-> Developement Tools/Web console
2015年已经过去了1/6,但是却毫无收获,新年的目标看起来实现也是遥遥无期,或许期望太高,或许目标不现实。或许执行力不够。 还没开始任性,都已经要30了,有人说,一天天过去了,回想起来却毫无印象,不知道自己怎么过去的。 听到后,我也有同感,深感害怕。 想到Matt Cutts 的“Try something new for 30days",开始变得有吸引力,似乎能够阻挡将要老去的时光一般。 下面
You Never Really Learn Something Until You Teach It As software developers we spend a large amount of time learning. There is always a new framework or technology to learn. It can seem impossible to k
Dropbox saves one million files every 15 minutes, more tweets than even Twitterers tweet. That mind blowing statistic was revealed by Rian Hunter, a Dropbox Engineer, in his presentation How Dropbox
This is Tim Ferriss circa 1979 A.D. Age two. You can tell by the power squat, I was a very confident boy -- and not without reason. I had a very charming routine at the time, which was to wait until l
Unit 1B - First Day: Give Us 15 Minutes a Day First Day: Give Us 15 Minutes a Day Wilfred Funk and Norman Lewis Your boss has a bigger vocabulary than you have. That's one good reason why he's your bo
Unit 6B - Take It Easy to Learn Better Take It Easy to Learn Better Donald A. Laird Spare-time learners are usually the best learners. Their rate of learning is helped, of course, by the fact that the
描述 (Description) Javascript数组every方法都测试数组中的所有元素是否都通过了提供的函数实现的测试。 语法 (Syntax) 其语法如下 - array.every(callback[, thisObject]); 参数细节 (Parameter Details) callback - 测试每个元素的函数。 thisObject - 执行回调时用作this对象的对象。
每个方法都测试数组中的所有元素是否都通过了提供的函数实现的测试。 语法 (Syntax) array.every(callback[, thisObject]); 参数 (Parameters) callback - 测试每个元素的函数。 thisObject - 执行回调时用作此对象的对象。 返回值 (Return Value) 如果此数组中的每个元素都满足提供的测试函数,则返回true 。
如果谓词对于每个值都为true,则返回true,否则返回false。 语法 (Syntax) 以下是语法。 (every? p1 col) Parameters - 'p1'是需要测试的谓词。 'col'是需要测试的值集合。 Return Value - 如果谓词对于每个值都为true,则返回true,否则返回false。 例子 (Example) 以下是每个人的一个例子? 在Clojure。
Checks whether every element in this sequence satisfies a given predicate. Signature Sequence.every = function(predicate) { /*...*/ } Sequence.every = function every(predicate) { predicate = createC
every 函数签名: every(predicate: function, thisArg: any): Observable 如果完成时所有的值都能通过断言,那么发出 true,否则发出 false 。 示例 示例 1: 一些值不符合条件 ( Stackblitz | jsBin | jsFiddle ) // RxJS v6+ import { every } from 'rxjs/oper
获取一组谓词并返回一个函数'f',如果其所有组合谓词都针对其所有参数返回逻辑真值,则返回true,否则返回false。 语法 (Syntax) 以下是语法。 (every-pred p1 p2 .. pn) Parameters - 'p1 p2 ... pn'是需要测试的所有谓词的列表。 Return Value - 如果所有组合谓词都针对其所有参数返回逻辑真值,则返回true,否则返回fal