Skip to content

Instantly share code, notes, and snippets.

View ianchanning's full-sized avatar

Ian Channing ianchanning

View GitHub Profile
{
"meta": {
"theme": "elegant"
},
"basics": {
"name": "Ian Channing",
"label": "Lead Software Developer",
"image": "",
"email": "ian@ianchanning.com",
"phone": "+32 491 482 747",
@ianchanning
ianchanning / init.vim
Created February 23, 2023 00:40
neovim init file that splits VS Code and neovim .vimrc files
set runtimepath^=~/.vim runtimepath+=~/.vim/after
let &packpath = &runtimepath
if exists('g:vscode')
" VSCode extension
source ~/.vimrc.vscode
else
" ordinary Neovim
source ~/.vimrc
endif
@ianchanning
ianchanning / .vscode.vimrc
Created February 23, 2023 00:36
VSCode subset of my main .vimrc file
let data_dir=has('nvim') ? stdpath('data') . '/site' : '~/.vim'
if empty(glob(data_dir . '/autoload/plug.vim'))
silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
endif
set nocompatible
call plug#begin('~/.vim/bundle')
Plug 'tpope/vim-sensible'
@ianchanning
ianchanning / output.txt
Created October 18, 2020 09:57
coc.nvim debug log
This file has been truncated, but you can view the full file.
11:54:54 DEBUG [transport] - request to vim: -1,nvim_get_api_info,[]
11:54:54 DEBUG [connection] - send to vim: [
"call",
"coc#api#call",
[
"get_api_info",
[]
],
-1
]
@ianchanning
ianchanning / output.txt
Created September 20, 2020 14:38
CocCommand showWorkspace output
[Trace - 12:31:46] Sending request 'initialize - (0)'.
Params: {
"processId": 26375,
"rootPath": "/home/channi16/imec/innovatrix",
"rootUri": "file:///home/channi16/imec/innovatrix",
"capabilities": {
"workspace": {
"applyEdit": true,
"workspaceEdit": {
"documentChanges": true,
@ianchanning
ianchanning / .eslintrc.json
Last active November 25, 2018 15:43
A Neural Network in JavaScript. This now has it's own Github repo: https://github.com/ianchanning/neural-network-js
{
"env": {
"browser": true,
"es6": true
},
"extends": "eslint:recommended",
"parserOptions": {
"ecmaFeatures": {
"jsx": true
},
@ianchanning
ianchanning / self-driving-cars-should-replace-amateur-instead-of-professional-drivers.md
Last active June 15, 2018 23:08
Self-driving cars should replace amateur instead of professional drivers

Keybase proof

I hereby claim:

  • I am ianchanning on github.
  • I am ianchanning (https://keybase.io/ianchanning) on keybase.
  • I have a public key ASB0bBCnW44BV-yA8TYmgkCqhxaDA-WYBGwTSBp9kkWGnQo

To claim this, I am signing this object:

@ianchanning
ianchanning / monad.md
Last active March 12, 2018 08:50
Yet another monad explanation

tl;dr Here's a really short explanation for JavaScript, as in just the flatmap part.

map is pretty well understood in JavaScript (and I'm assuming you understand it).

So you 'just' need to make the leap to flatmap. Which is mapping something and flattening the result.

Flattening a JavaScript array is concatenating a 2D array into an array.

Longer Python example

Another attempt at explaining monads, using just Python lists and the map function. I fully accept this isn't a full explanation, but I hope it gets at the core concepts.

@ianchanning
ianchanning / datatables.json
Created May 17, 2017 14:00
Data Tables JSON
{
"data": [
{
"name": "Tiger Nixon",
"position": "System Architect",
"salary": "$320,800",
"start_date": "2011/04/25",
"office": "Edinburgh",
"extn": "5421"
},