vimwiki

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 4738f2403950c39c046c89a888b09b55227934c6
Author: C. Beau Hilton <cbeauhilton@gmail.com>
Date:   Mon, 22 Jun 2020 08:31:47 -0500

migrating

Diffstat:
A.tags | 7+++++++
A.vimdir | 4++++
A.vimwiki_tags | 16++++++++++++++++
AREADME.md | 2++
Adiary/2019-10-19.md | 10++++++++++
Adiary/2019-11-13.md | 22++++++++++++++++++++++
Adiary/2020-01-19.md | 24++++++++++++++++++++++++
Adiary/diary.md | 13+++++++++++++
Aflorilegium/commonplace_book.md | 8++++++++
Aflorilegium/deep_work_by_cal_newport.md | 12++++++++++++
Aflorilegium/design_of_everyday_things_don_norman.md | 14++++++++++++++
Aflorilegium/essentialism_greg_mckeown.md | 8++++++++
Aflorilegium/finite_infinite_games_james_p_carse.md | 52++++++++++++++++++++++++++++++++++++++++++++++++++++
Aflorilegium/lyrics.md | 13+++++++++++++
Aflorilegium/misc.md | 67+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Aimages/dl_ml_venn.jpg | 0
Aindex.md | 112+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Alearn/anki.md | 5+++++
Alearn/doing_science.md | 13+++++++++++++
Alearn/dr_rose_on_ai_in_healthcare.md | 10++++++++++
Alearn/memory.md | 42++++++++++++++++++++++++++++++++++++++++++
Alearn/olga_botvinnik.md | 19+++++++++++++++++++
Alearn/random_survival_forests.md | 14++++++++++++++
Ateach/2018_job_roles_of_2025_educator.md | 36++++++++++++++++++++++++++++++++++++
Ateach/2018_learning_sci_immersive_vr.md | 24++++++++++++++++++++++++
Ateach/cognitive_load.md | 18++++++++++++++++++
Ateach/ed_tech.md | 56++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Ateach/introducing_ml.md | 13+++++++++++++
Ateach/introducing_python.md | 19+++++++++++++++++++
Atech/SSH_in_git.md | 9+++++++++
Atech/blarbs.md | 7+++++++
Atech/convert_many_pdfs_to_jpg.md | 6++++++
Atech/convert_tex_table_to_csv.md | 8++++++++
Atech/doc_formatting.md | 18++++++++++++++++++
Atech/latex_groff_pro_typographers.md | 5+++++
Atech/ncmpcpp.md | 10++++++++++
Atech/time.md | 8++++++++
Atech/vimrc.md | 41+++++++++++++++++++++++++++++++++++++++++
Atech/vimwiki_in_git.md | 23+++++++++++++++++++++++
Atech/working_with_python.md | 20++++++++++++++++++++
Atheo/desert_fathers.md | 3+++
41 files changed, 811 insertions(+), 0 deletions(-)

diff --git a/.tags b/.tags @@ -0,0 +1,7 @@ +!_TAG_FILE_SORTED 1 +git SSH_in_git.md 1;" vimwiki:SSH_in_git\tSSH_in_git +git vimwiki_in_git.md 1;" vimwiki:vimwiki_in_git\tvimwiki_in_git +linux_setup time.md 1;" vimwiki:time\ttime +rmarkdown doc_formatting.md 1;" vimwiki:doc_formatting\tdoc_formatting +rmarkdown working_with_python.md 1;" vimwiki:working_with_python\tworking_with_python +ssh SSH_in_git.md 1;" vimwiki:SSH_in_git\tSSH_in_git diff --git a/.vimdir b/.vimdir @@ -0,0 +1,4 @@ +:cd %:p:h +silent! !git pull > /dev/null +:e! +autocmd! BufWritePost * silent! !git add .;git commit -m "vim autocommit" > /dev/null; git push > /dev/null& diff --git a/.vimwiki_tags b/.vimwiki_tags @@ -0,0 +1,16 @@ +!_TAG_FILE_FORMAT 2 +!_TAG_FILE_SORTED 1 +!_TAG_OUTPUT_MODE vimwiki-tags +!_TAG_PROGRAM_AUTHOR Vimwiki +!_TAG_PROGRAM_NAME Vimwiki Tags +!_TAG_PROGRAM_URL https://github.com/vimwiki/vimwiki +!_TAG_PROGRAM_VERSION 2.4.1 +git SSH_in_git.md 2;" vimwiki:SSH_in_git\tSSH_in_git#ssh_in_git +git vimwiki_in_git.md 2;" vimwiki:vimwiki_in_git\tvimwiki_in_git#vimwiki_in_git +learn anki.md 2;" vimwiki:anki\tanki#anki +lectures_2019 dr_rose_on_ai_in_healthcare.md 2;" vimwiki:dr_rose_on_ai_in_healthcare\tdr_rose_on_ai_in_healthcare#dr_rose_on_ai_in_healthcare +linux_setup time.md 2;" vimwiki:time\ttime#time +rmarkdown doc_formatting.md 2;" vimwiki:doc_formatting\tdoc_formatting#doc_formatting +rmarkdown working_with_python.md 2;" vimwiki:working_with_python\tworking_with_python#working_with_python +ssh SSH_in_git.md 2;" vimwiki:SSH_in_git\tSSH_in_git#ssh_in_git +vimwiki vimwiki_in_git.md 2;" vimwiki:vimwiki_in_git\tvimwiki_in_git#vimwiki_in_git diff --git a/README.md b/README.md @@ -0,0 +1 @@ +index.md+ \ No newline at end of file diff --git a/diary/2019-10-19.md b/diary/2019-10-19.md @@ -0,0 +1,10 @@ +I think I'm close to a comfortable place with Vimwiki. +Still many enhancements to be made, but maybe not? +E.g. I considered making a Vimwiki -> Jekyll workflow, +but the more I think about it the more I'm convinced it's better to +keep these separate and migrate material as it makes sense +(use the Vimwiki for a personal wiki, +private Git repo, +and when stuff is interesting enough to share then y/p the relevant parts). + +This is my first diary entry, btw. diff --git a/diary/2019-11-13.md b/diary/2019-11-13.md @@ -0,0 +1,22 @@ +On my way back to PHX, this time for an interview at UofA. + +Excited to see fam, +also get the X220 going (writing this on the 2011 macbook). + +As of now, top programs are: +1. UPMC (pitt) +2. URMC (rochester) +3. VUMC (vandy - haven't yet interviewed, maybe will jump to 1 or 2) +4. CCF (haven't yet interviewed, but will likely remain #4 or go down) +5. UofA (interview 11-15) +7. UofU (interview 11-something_after_15) + +Looking forward to finishing ASH poster, also readmission paper review. +Excited to write bone marrow failure manuscript. +Really enjoying this little NLP on Pycon vids project, +found the master repo with all the links to pretty much ever Pycon-esque vid ever, +all on GitHub in JSON format. +Probs a waste of time, but if I find anything cool it would be good to submit to Pycon +(it's in Pittsburgh in 2020, but in April so Lori might just kill me...). + + diff --git a/diary/2020-01-19.md b/diary/2020-01-19.md @@ -0,0 +1,24 @@ +# Come follow me + +## 1 Nephi 8-10 - Lehi's vision + +### 8 +- How did Lehi get to the Tree? Wandering in darkness -> *eleison* -> large and spacious field -> tree -> go forth and partake. No rod here, and angel seems to have disappeared. + +- 8:27 "manner of dress was exceedingly fine": more on class differences, attitudes (mocking, shaming) + +- 8:37 "did exhort them": despite seeing the vision, Lehi did not think it was fatalistic? Laman & Lemuel redeemable? + +- 8: 24 "clinging" fell away, vs. 8:30 "continually holding fast" were able to not heed the great and spacious folks. Maybe a difference between the dead word and the living word? Sense of desperation in "cling" vs. self-sufficiency in "holding fast." Also 8:24 came forth and partook, vs. 8:30 "fell down" and partook (cf. Lehi above and *eleison* prior to deliverance). + +- overall: major contrasts of humility and pride - *eleison* and "fell down and partook" vs. "exceedingly fine dress," also perhaps superficial vs. deeper use of the "rod" (clinging vs. holding fast) - in what ways may these be one concept? Authenticity and phenomenological approach to faith rather than (ill)preconceived notions of what faith *should* be? + +### 9 +- 9:5 wise purpose "which purpose I know not" +- 9:6 "all" used repeatedly + +### 10 +- 10:17 "see, and hear, and know" + - seems progressive: intellectual understanding/exposure to the idea, then hear as in "hearken", then sure knowledge from experience. + - "hear" etymology, fun tidbit: 'Old English also had the excellent adjective hiersum "ready to hear, obedient," literally "hear-some" with suffix from handsome, etc.' https://www.etymonline.com/word/hear + diff --git a/diary/diary.md b/diary/diary.md @@ -0,0 +1,13 @@ +# Diary + +## 2019 + +### November + + - [2019-11-13](2019-11-13.md) + +### October + + - [2019-10-19](2019-10-19.md) + + diff --git a/florilegium/commonplace_book.md b/florilegium/commonplace_book.md @@ -0,0 +1,8 @@ +# commonplace_book + +The Commonplace Book is not so much "commonplace" as it is a "common place" for gathering ideas. +From loci communes of antiquity (maybe related to the memory palace?), +to the Medieval florilegium, or "gathering of flowers," +which were scrapbooks of religious themes, +and on around to Ryan Holiday's shoebox of 3x5 notecards, +it is essentially a homemade thought bank from which to withdraw and deviously employ someone else's hard-earned insights. diff --git a/florilegium/deep_work_by_cal_newport.md b/florilegium/deep_work_by_cal_newport.md @@ -0,0 +1,12 @@ +# Deep Work by Cal Newport +:book: + +> One of the chief things which my typical man +has to learn is that the mental faculties +are capable of a continuous hard activity; +they do not tire like an arm or a leg. +> All they want is change---not rest, except in sleep. + +* Arnold Bennett, "How to Live on 24 Hours a Day, 1910" +* p. 214 + diff --git a/florilegium/design_of_everyday_things_don_norman.md b/florilegium/design_of_everyday_things_don_norman.md @@ -0,0 +1,14 @@ +# The Design of Everyday Things by Don Norman +:book: + +A conceptual model is an explanation, +usually highly simplified, of how something works. +It doesn't have to be complete or even accurate as long as it is useful. +Simplified models are valuable only as long as the assumptions that support them hold true. + +* pp. 25-26 + +People don't want to buy a quarter-inch drill. They want a quarter-inch hole! + +* pp. 33-34 +* Theodore Levitt diff --git a/florilegium/essentialism_greg_mckeown.md b/florilegium/essentialism_greg_mckeown.md @@ -0,0 +1,8 @@ +# Essentialism by Greg McKeown +:book: + +The crime which bankrupts men and states is that of job-work; +declining from your main design to serve a turn here or there. + +* p.124 +* Ralph Waldo Emerson diff --git a/florilegium/finite_infinite_games_james_p_carse.md b/florilegium/finite_infinite_games_james_p_carse.md @@ -0,0 +1,52 @@ + +# Finite and Infinite Games by James P. Carse + +It is an invariable principle of all play, +finite and infinite, +that whoever plays, plays freely. +Whoever _must_ play, cannot _play_. + +* p. 56 + +_Beau's Note_ + +This is reason enough for removing "necessity" +by whatever means necessary---the idea of need, +financial need (Money Mustache), +caloric need (fasting), +even moral need (skillful means, _Veni, Sancte Spiritus_). + +Therefore, poets do not "fit" into society, +not because a place is denied them +but because they do not take their "places" seriously. +They openly see its roles as theatrical, +its styles as poses, its clothing costumes, +its rules conventional, its crises arranged, +its conflicts performed, and its metaphysics ideological. + +* p. 56 + +Society is... an attempt to forget +that we have willfully forgotten +our decision to enter this or that contest and to continue in it. + +* p. 41 + +The joyfulness of infinite play, +its laughter, lies in learning to start something we cannot finish. + +* Section 24 + +Death in life can be regarded as an achievement, +the result of a spiritual discipline, say, +intended to extinguish all traces of struggle with the world, +a liberation from the need for any title whatsoever. +"Die before ye die," declare the Sufi mystics. + +* Section 20 + +_Beau's Note_ + +Which Sufi(s) say this? +I frequently entertain the idea of not hanging my degree certificates on the wall of my office. + diff --git a/florilegium/lyrics.md b/florilegium/lyrics.md @@ -0,0 +1,13 @@ +I mean if you got a cat for one day, man +I mean, if you, say, say, if you want a cat for 365 days, right +you ain't got him for 365 days, you got him for one day, man. +Well I tell you that one day, man, better be your life, man. +Because, you know, you can say, oh man, you can cry about the other 364, man, +but you're gonna lose that one day, man, and that's all you've got. +You gotta call that love, man. That's what it is, man. +If you got it today you don't want it tomorrow, man, 'cause you don't need it. +'Cause, as a matter of fact, as we discovered on the train, +tomorrow never happens, man. It's all the same fucking day, man. + +* (Not really a lyric, more of a mid-song pontification). +* Janis Joplin, "Ball and Chain" diff --git a/florilegium/misc.md b/florilegium/misc.md @@ -0,0 +1,67 @@ +# miscellaneous quotes +:quotes: + +> Emitte Spiritum tuum et creabuntur; +> Et renovabis faciem terrae. + +> Send forth Thy Spirit and they shall be created +> And Thou shalt renew the face of the earth. +* [link](http://www1.cpdl.org/wiki/index.php/Emitte_spiritum_tuum) +* Psalm 104, "Antiphon for Pentecost" + +> The way to fame goes through the palaces, +> the way to happiness goes through the markets, +> the way to virtue goes through the deserts. +* Chinese proverb + +> Reading maketh a full man; +> conference a ready man; +> and writing an exact man; +> and, therefore, if a man write little, he had need have a great memory; +> if he confer little, he need have a present wit; +> and if he read little he need have much cunning to seem to know that he does not. +* Francis Bacon + + +> It may be, then, that form serves us best +when it works as an obstruction to baffle us +and deflect our intended course. +It may be that when we no longer know what to do +we have come to our real work and that +when we no longer know which way to go +we have begun our real journey. +The mind that is not baffled is not employed. +The impeded stream is the one that sings. +* Wendell Berry, "Standing by Woods" + +> It's dark because you are trying too hard. +Lightly, child, lightly. +Learn to do everything lightly. +* Aldous Huxley + +> The most difficult things in the world +Must be accomplished through the easiest. +The greatest things in the world +Must be accomplished through the smallest. +Therefore the Sage +Never attempts great things and so accomplishes them. +* Lao Tzu, _Tao Te Ching_ Chapter 63 + +> The first and fundamental principle of our holy religion is, +that we believe that we have a right to embrace all, +and every item of truth, +without limitation or +without being circumscribed or +prohibited by the creeds or +superstitious notions of men, or by the +dominations of one another, +when that truth is clearly demonstrated to our minds, +and we have the highest degree of evidence of the same. +* Joseph Smith, Letter to Isaac Galland, Mar. 22, 1839, Liberty Jail + +> sometimes it is necessary to shake the kaleidoscope: same elements - different pattern - new direction +* Roman Dale, personal communication, 4 June 2018 + +> Australian psychiatrist W. Béran Wolfe: “If you observe a really happy man you will find him building a boat, writing a symphony, educating his son, or looking for dinosaur eggs in the Gobi Desert.” + +> Psychologist Sonja Lyubomirsky: “Find a happy person, and you will find a project.” diff --git a/images/dl_ml_venn.jpg b/images/dl_ml_venn.jpg Binary files differ. diff --git a/index.md b/index.md @@ -0,0 +1,112 @@ +# todo + +- [ ] [https://jnd.org/emotion_design_attractive_things_work_better/ ] +- [ ] [https://jnd.org/the_future_of_design_when_you_come_to_a_fork_in_the_road_take_it/ ] +- [ ] [https://jnd.org/videos_from_design_of_everyday_things/ ] +- [ ] [https://jnd.org/learning_from_the_success_of_computer_games/ ] +- [ ] [https://www.nixdell.com/classes/HCI-and-Design-Spring-2017/The-Design-of-Everyday-Things-Revised-and-Expanded-Edition.pdf ] +- [ ] [http://web.archive.org/web/20150417042513/http://typophile.com/node/43702 ] +- [ ] [http://www.bbc.com/travel/story/20191015-japans-most-remote-onsen ] +- [ ] [http://rjcarterphoto.squarespace.com/ ] +- [ ] [https://nickjanetakis.com/blog/run-the-first-edition-of-unix-1972-with-docker ] +- [ ] [https://www.nytimes.com/2019/10/24/us/nuclear-weapons-floppy-disks.html ] +- [ ] [https://harvardmacy.org/index.php/hmi/who-is-buzzing-at-your-planning-table ] +- [ ] [https://journals.lww.com/academicmedicine/Fulltext/2018/12000/Going_Up__Tips_for_the_Medical_Educator_s.39.aspx ] + +============================================================================== + +# tech + +## linux setup +- [time](tech/time.md) +- [blarbs](tech/blarbs.md) +- [ncmpcpp](tech/ncmpcpp.md) +- [vimrc](tech/vimrc.md) + +## typesetting software + +- [latex_groff_pro_typographers](tech/latex_groff_pro_typographers.md) + +## r markdown +- [working_with_python](tech/working_with_python.md) +- [doc_formatting](tech/doc_formatting.md) + +## LaTeX + +- [convert_tex_table_to_csv](tech/convert_tex_table_to_csv.md) + +## git +- [vimwiki_in_git](tech/vimwiki_in_git.md) +- [SSH_in_git](tech/SSH_in_git.md) + +## image_processing + +- [convert_many_pdfs_to_jpg](tech/convert_many_pdfs_to_jpg.md) + +============================================================================== + +# learn +- [anki](learn/anki.md) +- [memory](learn/memory.md) + +## lectures +### 2019 +- [dr_rose_on_ai_in_healthcare](learn/dr_rose_on_ai_in_healthcare.md) + +## blogs + +- [Olga Botvinnik](learn/olga_botvinnik.md) + +## machine_learning +- [random_survival_forests](learn/random_survival_forests.md) + +## doing_science +- [doing_science](learn/doing_science.md) + +============================================================================== + +# teach + +- [cognitive_load](teach/cognitive_load.md) + +## readings + +- [2018_job_roles_of_2025_educator](teach/2018_job_roles_of_2025_educator.md) +- [2018_learning_sci_immersive_vr](teach/2018_learning_sci_immersive_vr.md) + +## teach_ml + +- [introducing_ml](teach/introducing_ml.md) +- [introducing_python](teach/introducing_python.md) + +## ed_tech + +- [ed_tech](teach/ed_tech.md) + +============================================================================== + +# florilegium + +- [commonplace_book](florilegium/commonplace_book.md) + +## books +- [deep_work_by_cal_newport](florilegium/deep_work_by_cal_newport.md) +- [finite_infinite_games_james_p_carse](florilegium/finite_infinite_games_james_p_carse.md) +- [essentialism_greg_mckeown](florilegium/essentialism_greg_mckeown.md) +- [design_of_everyday_things_don_norman](florilegium/design_of_everyday_things_don_norman.md) +- + +## lyrics + +- [lyrics](florilegium/lyrics.md) + +## misc + +- [misc](florilegium/misc.md) + +============================================================================== + +# theo + +- [desert_fathers](theo/desert_fathers.md) + diff --git a/learn/anki.md b/learn/anki.md @@ -0,0 +1,5 @@ +# anki +:learn:vimwiki: + +# spaced repetition +Wouldn't it be nice if I could tag some statement, run a sed command, output to a csv, and import into Anki? diff --git a/learn/doing_science.md b/learn/doing_science.md @@ -0,0 +1,13 @@ +## On doing science + +### Mysteries vs puzzles +https://adcontrarian.blogspot.com/2020/04/puzzles-and-mysteries.html + +[locally_saved_post](file:/home/beau/dox/surfed/puzzles-and-mysteries.html) + +"Puzzles ... are problems for which there is not enough information. ... Mysteries are problems for which we have plenty of information, but no accurate analysis." + +Gladwell gives an example of WWII, spies vs. the "screwball division." Spies went to gather more information, screwball division analyzed already available data. Screwball division figured out the V-1 rocket had been developed, had been stalled, and accurately projected when it would be finished. + +It seems like much of medical ML is this - we have SO MUCH data, but it hasn't been properly cleaned and analyzed. It's also often siloed and unavailable to the "screwball division." + diff --git a/learn/dr_rose_on_ai_in_healthcare.md b/learn/dr_rose_on_ai_in_healthcare.md @@ -0,0 +1,10 @@ +# dr_rose_on_ai_in_healthcare +:lectures_2019: + +You may find the stuff on "opening the black box" interesting - SHAP (their GitHub readme is great), Zhao and Hastie's paper on causal inference. For tree-based methods (e.g. random forests, gradient-boosting machines), explainability is fairly solved. For deep learning on images, explainability is also fairly straightorward. Deep learning on tabular data is far less solved (e.g. the Google readmission paper - had to use a handicapped version of their neural network for explainability, and even then was not super useful). Thankfully, tree-based methods are often as good or better in terms of performance on tabular data. + +In my opinion, in all healthcare-facing ML, explainability methods should be baked into the pipeline. It's so easy now, literally a few more lines of code to generate the model that explains the model (incorporating the output in a meaningful way is a little more expensive in terms of code, but if I can figure it out then so can any researcher). The thing we should be building is not a model that is reapplied across systems, but a pipeline for data ingestion, model-building, and explanation that could be rapidly deployed in different systems (e.g. for internal testing and validation). This would still disadvantage poorer systems with less ability to collect data, but maybe not by much - everyone has CBCs, data on discharges and admissions, basic demographic information, etc., and almost everyone uses some kind of EMR. + +On the anthropomorphic relationships with computers, have you heard about https://en.wikipedia.org/wiki/ELIZA ? It was developed in the 60s at MIT, simple rules-based conversation "bot," and people developed deep personal connections, on a level equalling or exceeding the current relationships people are building with Alexa (I would argue exceeding, as the conversations were purposefully therapeutic and do not avoid sensitive subjects). + +Would be interested in thoughts on why, exactly, Google/Amazon/etc. are needed. We have clinician-scientists, PhD researchers, collaboration with other universities (e.g. CWRU has great comp-sci). We can do NLP, DL, whatever, on our own. Google would have some extra data on searches, all the stuff they can get from cookies, etc., phone data. Amazon would have similarly rich data. But we get into some of the same issues we've seen trying to use Facebook, Twitter, etc. - there's a huge selection bias with who uses those services, and, even if usage nears 100%, the type of usage will vary between pts by orders of magnitude. This could help increase predictive power, but how much? This is a whole different ballgame than simply using AWS or Google Cloud to store or even process data, which is also of questionable utility (we have some rockin' servers over at LRI, and they're buying more). diff --git a/learn/memory.md b/learn/memory.md @@ -0,0 +1,42 @@ +# Memory +:memory: + +## Recall among chess masters depends on templates +Relevant cites in my acad.bib : @gobet1996a, @frey1976recall. + +Had a discussion about the studies Andersson loves to cite +on chess masters who could play dozens of simultaneous boards, +but seem to have no special short-term memory. + +The seminal set of studies was done by Frey and Adesman, published in 1976. +Shows that advanced players can remember pieces on a board only +if those pieces could have gotten there in the course of a regular chess game, +i.e. there are meaningful patterns between the pieces. +When they are shown pieces randomly arranged, +their memory is no better than the novice's. + +Another set of later studies +(and there are tons of other citations to explore) +by Gobet and Simon in 1996 confirmed the initial findings, +and further found that even "chunking" as an explanation +is inadequate to explain the mechanism by which +the chess masters could remember so many pieces. +They suggest instead templates, which I do not fully understand +but seem to be what they sound like, +larger frameworks that tell the story of how the current state +came to be. + +Neil Mehta suggested a wonderful exercise of going through the history +of antibiotics and their development +(what problems did each successive generation of drugs solve?) +as a way to build a framework for antibiotics in general. +This would help the student deliberately build the framework that the experienced attending developed piece by piece over time, +and the idea could be extended to one of my favorite subjects of teacher empathy for student learning: +the student is trying to build a framework that is second nature for the attending (resident/fellow) from scratch, +and it can be hard or impossible to remember how hard or impossible that task felt at the time. +That is, the learner can be encouraged to build a framework in a specific way, +and the teacher can be encouraged to think about all the steps that brought them to their current state of knowledge, +and maybe even to "think out loud" when they perform reasoning +(which can be hard because perhaps they are, appropriately, +mostly functioning on unconscious reflex that was build over time). + diff --git a/learn/olga_botvinnik.md b/learn/olga_botvinnik.md @@ -0,0 +1,19 @@ +Olga Botvinnik's bioinformatics musings (among other things). +She has a great +[post](https://olgabotvinnik.com/blog/teaching-data-cleaning/) +on teaching coding to biologists, +which links to the Software Carpentry's page +[here](https://carpentries.github.io/instructor-training/). +It's basically all of Mehta's stuff, customized for coding, and Botvinnik's post has the feedback she got from students with some nice reflections. + +Cool ideas include: pair up, and the more experienced student is not allowed to type; +use pink and blue post-its to indicate whether a pair is still working or ready to advance (pink = still working). +She had some of the same issues I had with different OS in the audience (even at CCLCM!). +It's honestly the biggest barrier to starting up. +Maybe CoLab and the like, but we're trying to make capable researchers, so... +Maybe whoever sets up the Surfaces could just install miniconda and add it to the PATH! +That would probably take care of a lot of the issues. + +Another [gem](https://nbviewer.jupyter.org/gist/olgabot/5357268) +from Olga Botvinnik, using Tufte's ideas in MPL. + diff --git a/learn/random_survival_forests.md b/learn/random_survival_forests.md @@ -0,0 +1,14 @@ +# Random Survival Forests +:machine_learning: + +Random survival forests (RSFs) function by +randomly selecting a bootstrap sample of the data to grow a "tree." +A randomly selected subset of variables is used +to find a candidate variable that maximizes the difference +in survival between subsequent branches, +and this is repeated until the algorithm runs out +of branching points and satisfies the requirement that there be +at least one unique death at the terminal branching points. + +Sampling assumes independence and samples with replacement. +Pull random samples of the same size by allowing duplicate entries (e.g. in row 1, "4" is used twice). diff --git a/teach/2018_job_roles_of_2025_educator.md b/teach/2018_job_roles_of_2025_educator.md @@ -0,0 +1,36 @@ +# Job Roles of the 2025 Medical Educator +:teach: + +- Futurist concept of *hard trends* (the cite, sadly, is not Kevin Kelly) + - measurable predictions +- Outsourcing +- WTH do they mean by "big data"? In what world will there be enough data streams of sufficient size coming from med students to justify this terminology? + +## Roles + +- Diagnostic Assessor + - Even if the use if the term "big data" is misguided, the idea is well-taken - data will be generated, some of it useful for predictive modeling. Can we collect data that can lead to meaningful early interventions, etc.? + +- Content Curator + - situatedness (the smoke filled back room, the history of the thing) + - levels of curation + - + + +- Technology Adopter + - maybe KK's "Amish Hackers" article would be good addition here + - I don't know if "must be early adopters" is right at all + - + +- Learner-Centered Navigator and Professional Coach + - another aspect of this may be that as medical knowledge expands, medical education shrinks to cover the essentials (whatever those are deemed to be) and allow self-directed exploration of deeper topics in whichever field. The coach would help the student discover and direct deeper interests, and connect them with resources (human and technological) + - + +- Clinician Role Model + - yup, on board with this one + - tho I don't think each clinician has to model everything perfectly, nor could they + +- Learning Environment Designer, Engineer, Architect, and Implementer + - kind of ties much of the above together - know what the students need (has assessed the state), what content is already available, which technologies may or may not be useful to fill the gap. May or may not have coach and/or role model roles as well. + - + diff --git a/teach/2018_learning_sci_immersive_vr.md b/teach/2018_learning_sci_immersive_vr.md @@ -0,0 +1,24 @@ +# VR vs not-VR for learning +:teach: + +## multimedia learning +- learn from words and pictures + +## coherence principle +- people learn better when extraneous words are excluded +- not just words, but details (e.g. cartoons can work better than photographs in certain settings) +- what is extraneous depends on context and learning goal + +## segmenting principle +- people learn better in user-directed segments + +## generative learning theory +- selecting, organizing, integrating + +## add a feature +- have people step in and out of the game to process (e.g. give them a worksheet to fill out as they play the game) + + +# some thoughts +- autotune +- apples vs apples (brought up repeatedly by the authors) diff --git a/teach/cognitive_load.md b/teach/cognitive_load.md @@ -0,0 +1,18 @@ +# types of cognitive load +:teaching: + +Three types of cognitive load: +- Germane +- Intrinsic +- Extraneous + +Richard Mayer - 9 Strategies for cognitive load + + + +| Cognitive Processing | Description | Instruction Design Goal | +|----------------------|---------------------------------------------------------------|-------------------------| +| Extraneous | Not related to instructional goal | Reduce | +| Essential | Caused by complexity of material (unavoidable) | Manage | +| Generative | Aimed at making sense of material, caused by learner's effort | Foster | + diff --git a/teach/ed_tech.md b/teach/ed_tech.md @@ -0,0 +1,56 @@ +# educational_technology +:teach: + +## Don Norman on video games + +Beautiful thoughts from Don Norman. + +He begins by talking about how video games can engage +even the most unruly and distractable learner, +and how the same things that keep the gamer involved +can be employed to keep the learner involved +(for they are one and the same). + +His list of what tech can do is a masterclass in itself. + +Tech can: +- motivate +- make visible what is otherwise not +- allow for the study of the complex +- take care of the drudgery [and thus] +- allow for concentration on the profound +- **be patient** +- give endless rewards and challenges +- continually engage the mind +- move the teacher into the roles of guide, mentor, and **fellow explorer of knowledge** + +The idea of tech as patient +(if you build it right, +it will *let* you try over and over again, +until you get it right or decide to move on) +is a refreshing reversal of the way I often think about it: +I *had* to keep on trying over and over again, +until I finally got it right. (This in relation to bugs). +But it could be: +I *got* to keep on trying over and over again, until I finally got it right. +(This in relation to hard concepts that take a while to sink in). +And really, as I've programmed more and more, "bugs" and "hard concepts" are one and the same. +Though of course bugs due to poor software design do exist, +I have learned it is more productive to first (and second and third) +question my grasp of the concept, before jumping to an accusation or +intimation of ill will or laziness on the part of the designer. + + +https://jnd.org/learning_from_the_success_of_computer_games/ + +--- + +> Technology is not the answer to the ailments of education. All of us succeeded in an educational system that was mainly empty of technology. But technology can help. It can motivate, it can make visible what is otherwise not, allow for the study of the complex, taking care of the drudgery and allowing for concentration on the profound. It can be patient. It can give endless rewards and challenges. It continually engages the mind. And it provides a new, more rewarding role for the teacher as a guide, mentor, and fellow explorer of knowledge. + +> The proper technology, coupled with proper teachers, can indeed transform. Learning is through doing, or though what I once proclaimed was a state of "critical confusion." People learn best, I argued, when challenged -- just enough to be confused, just enough to be motivated to search, to struggle, and to achieve. + +> We learn not by having our heads filled with the great thoughts and ideas of others, but by constructing them within our own conceptual structures. But this construction works best when the scenario is rigged so as to lead us to the ideas, to force us to confront them and understand them. This is what the successful game designer does. This is what the successful educator must do. + +> Technology is not the answer, but proper technology coupled with informed pedagogy, coupled with teachers that are coaches, guides and mentors, can lead the way. + +--- diff --git a/teach/introducing_ml.md b/teach/introducing_ml.md @@ -0,0 +1,13 @@ +# Teaching ML +:teach: + +## Introduction + +Artificial intelligence is the science of getting machines to do things that intelligent beings do. +*draw circle with AI*. +Machine learning is an approach to + + +![dl_ml_venn](/images/dl_ml_venn.jpg) + +https://arxiv.org/pdf/1206.5538.pdf diff --git a/teach/introducing_python.md b/teach/introducing_python.md @@ -0,0 +1,19 @@ +# colab + +Colab is great. + + +# twitter + +consumer_key = 'ENTER_YOUR_CONSUMER_KEY' +consumer_secret = 'ENTER_YOUR_CONSUMER_SECRET' +access_token = 'ENTER_YOUR_ACCESS_TOKEN' +access_token_secret = 'ENTER_YOUR_ACCESS_TOKEN' + +{ezNwnILv8rPXid5shxCXUi8t4} (API key) +{tQLPLzQ41irSIveROjtxkxibekYEoGtX38xO4oKAkvTBniRJWk} (API secret key) + +{788048438-oDRCMjkwYiew69HTSYk5rTKeIbpYedOqipjIaXYG} (Access token) +{PYLcdWuI7kgMsVqASIdGEDOD4bOhy28oxAZRA3RZpbEFc} (Access token secret) +Read and write (Access level) + diff --git a/tech/SSH_in_git.md b/tech/SSH_in_git.md @@ -0,0 +1,9 @@ +# ssh_in_git +:git:ssh: + +Entering one's passphrase/password every time a commit is pushed is annoying. Github has a nice guide for setting up SSH access and SSH-agent: https://help.github.com/en/articles/connecting-to-github-with-ssh . + +I need to figure out how to make it automatically sign in to SSH-agent when I unlock the computer. + +I think I got it working with these instructions: https://unix.stackexchange.com/questions/339840/how-to-start-and-use-ssh-agent-as-systemd-service + diff --git a/tech/blarbs.md b/tech/blarbs.md @@ -0,0 +1,7 @@ +# blarbs +I decided to fork Luke Smith's LARBS setup. +I was hesitant at first, mostly because they are still making pretty frequent updates, and I don't want to go through the trouble of updating mine to match theirs, plus my own edits. +After a while I realized that there's really nothing super broken in LARBS as it is, so I might as well get on with forking it before my X220 arrives. +There's also a bunch of stuff I will be removing (e.g. all the special character bindings in the .vimrc). I want to keep some of the rad things, like leader-c for compiling all the things, and the overall workflow and aesthetic, but take things apart, understand how they work, and optimize them for my own stuff (i.e. I do a lot of Python programming, and use Jekyll rather than Luke's minimalist wubsite thing). + +BTW, Serge Gainsbourg is a hoot. diff --git a/tech/convert_many_pdfs_to_jpg.md b/tech/convert_many_pdfs_to_jpg.md @@ -0,0 +1,6 @@ +# Convert Many PDFs Into JPG +:image_processing: + + for f in *.pdf; do convert -verbose -density 150 -trim "$f" -quality 100 -flatten -sharpen 0x1.0 "${f%pdf}jpg" ; done + +This gives pretty nice rendering of text and images, though it isn't perfect. It's the best solution I've found so far. diff --git a/tech/convert_tex_table_to_csv.md b/tech/convert_tex_table_to_csv.md @@ -0,0 +1,8 @@ +# Convert TeX table into csv(ish) +:latex: + + cat table2detex.tex | sed 's/\\%/percent/g' | detex | sed 's/&/;/g' | sed 's/percent/%/g' > tab2file.txt + +I copy the table into a new file, then convert the % symbols so detex doesn't get rid of them, then detex to get rid of the LaTeX markup, then convert the & into whichever delimiter you want (;, pipe, tab, etc.), then reconvert the percents back into symbols, and output to a .txt file. It's important to NOT use a csv if you are going to open in Excel, because it will assume commas are the delimiter. If you use a text file, it will ask you what you want the delimiter to be. + +The next step here would be to insert a special commented-out sequence before and after all the LaTeX tables so you can select that portion with a sed/grep/awk command and not have to make a new TeX file. diff --git a/tech/doc_formatting.md b/tech/doc_formatting.md @@ -0,0 +1,18 @@ +# doc_formatting +:rmarkdown: + +# Bibliography formatting +CSL files specify the format for bibliographies, and also in-text citations. +In order to switch the citation style for a given project, just switch the CSL file. +This can be done in two main ways in RMarkdown: download the CSL file to your machine and tell the YAML header where it is (`csl: path/to/nejm.csl`) or specify a url (`csl: https://raw.githubusercontent.com/citation-style-language/styles/61b34393eb1b7db87603b537ebd61e0936565e99/the-new-england-journal-of-medicine.csl ). +Both have advantages: the first means you don't have to be online for your doc to compile, and the second means you don't have to clutter up your directory or worry as much about the format changing without you knowing it. +In my experience, most journals actually aren't as particular as they tend to claim, so as long as the changes aren't major nobody is likely to notice you aren't using the very newest version of their citation requirements. + +# Bibliography location +If left to its own devices, RMD files will throw the references section at the very end. +For most journals, you will want the figures and tables after the references. +The easiest way to change the location of the references section is to add in this html tag: +`<div id="refs"></div>` +This will pull in the references section wherever you put the tag. Easy-peasy. +I also love that RMD/MD accepts arbitrary pieces of html (though I do not know the limits of this approach). + diff --git a/tech/latex_groff_pro_typographers.md b/tech/latex_groff_pro_typographers.md @@ -0,0 +1,5 @@ +# troff_vs_tex_vs_pro_typographers + +This article and the discussion below is one of the best examples of what the Internet is for: http://web.archive.org/web/20150417042513/http://typophile.com/node/43702 . +The author asks why TeX and troff (etc.) haven't more traction outside of the sciences, +and gets a discussion about the strengths and weaknesses of these software, and of WYSIWYG tools (a la InDesign). diff --git a/tech/ncmpcpp.md b/tech/ncmpcpp.md @@ -0,0 +1,10 @@ +Getting the visualizer to work in ncmpcpp was a pain, followed the instructions on the +[Arch wiki](https://wiki.archlinux.org/index.php/Ncmpcpp) +and made the /etc/mpd.conf and ~/.config/mpd/mpd.conf match (at least the parts shown in the wiki , I left everything else alone), +and copied the stuff from the Arch wiki into the ~/.config/ncmpcpp/config file, +making sure all the other instances of those settings were commented out. + +BTW, I really like that the ncmpcpp config file is also the manual, +but it makes scrolling through it a bit tedious, so I'm plus/minus on that way of doing things. + + diff --git a/tech/time.md b/tech/time.md @@ -0,0 +1,8 @@ +# time +:linux_setup: + +I noticed at one point that some websites were getting angry that my time didn't match theirs. It seems the easiest way to fix this is to install ntp (Network Time Protocol), then install networkmanager-dispatcher-ntpd and reboot. https://wiki.archlinux.org/index.php/Network_Time_Protocol_daemon#Start_ntpd_on_network_connection + +It may also be useful here to note the NetworkManager dispatcher script found on https://wiki.archlinux.org/index.php/System_time#Update_timezone_every_time_NetworkManager_connects_to_a_network . It will automatically switch the timezone appropriately whenever you connect to a network. + + diff --git a/tech/vimrc.md b/tech/vimrc.md @@ -0,0 +1,41 @@ +:vim: + +# sudo command for when you forget +I often forget to open files in sudo when it's needed, +and don't notice until I've done a bunch of work +that I would prefer not to lose. +This is a great couple of lines to add, from +[Stack Overflow](https://stackoverflow.com/questions/2600783) + + cmap w!! w !sudo tee > /dev/null % + +This teaches a few things, as outlined on the SO post: +% means "current file" +When you call :w in Vim, it actually isn't modifying your file, +it is rather sending the current buffer to a file with the name you specify, +which is the current file if you pass no extra commands to :w, but could be anything +(e.g. :w biji2.mom). +In this case, we send it to `tee`, which sends to the specified file +(`%`) as well as the standard output, +which we redirect to `/dev/null` so it doesn't clutter up the stdout. +Vim is often not sudo-accessible, but tee is, so we bypass the problem I usually have. + +# SpellBad and friends + +Useful commands: +- leader + o to turn on spellcheck (Luke Smith's binding, nice). +- ]s to go to the next misspelled word, [s to go to the previous. +- zg to add a word to the internal dictionary. + +Add the following into your .vimrc to get more sane orthographic highlighting: + + hi clear SpellBad + hi clear SpellLocal + hi clear SpellCap + hi clear SpellRare + hi SpellBad ctermfg=red + hi SpellLocal ctermfg=green + hi SpellCap ctermfg=yellow + hi SpellRare ctermfg=green + + diff --git a/tech/vimwiki_in_git.md b/tech/vimwiki_in_git.md @@ -0,0 +1,23 @@ +# vimwiki_in_git +:git:vimwiki: + +# Setup +It took a bit of work to get this working, but I think we're there now. EDIT: I abandoned the .wiki version in favor of vanilla .git . It's much easier, and I can use folders. + +Steps to reproduce: + +- Make a new repo (this is probably optional, could have just used my "life" repo, but repos are free. :) +- Get GitHub Pro with my student ID (wiki's are a Pro-only feature) +- Navigate to the "wiki" tab on the website +- Click into any of the pages, then "clone this wiki locally" (will have a link something like https://github.com/cbeauhilton/vimwiki.wiki.git - I converted this to an SSH format so I could use my key: git@github.com:/cbeauhilton/vimwiki.wiki.git ) +- Git clone git@github.com:/cbeauhilton/vimwiki.wiki.git +- Either start writing from here, or copy in the old vimwiki contents (e.g. cp -a vimwiki/. vimwiki.wiki/ ) +- Git add/commit/push +- Check it out on GitHub! + +The tutorial found here is very good, and I used most of its steps, subbing in GitHub for GitLab: https://opensource.com/article/18/6/vimwiki-gitlab-notes + +# Organization +I tried to put things into folders to make the directory cleaner, but that borked the compatibility with GitHub (it could probably be worked out, but...). It seems that the best way to keep this organized and compatible with GH is to keep the structure flat, then make the index.md collapsible and well organized visually. On GH, the "pages" page will be essentially useless, but accessing the index will show a pretty and well-organized page. If I decide to sidestep GH at some point, I could pretty easily go back to folders. + +EDIT: Using the .wiki style ended up being a pain, and the links in a normal GitHub repo work just fine. diff --git a/tech/working_with_python.md b/tech/working_with_python.md @@ -0,0 +1,20 @@ +# working_with_python +:rmarkdown: + +# Enabling Python in RMD +Install the reticulate package. +Enable it as below. +It's the bee's knees. + +# Conda environments +Call an R command `use_condaenv("env_name")` like so: + +```{r, echo=FALSE} +library(reticulate) +use_condaenv("lgb_shap") +``` + +# Matplotlib plots +They work. Make sure to call `plt.tight_layout()` so the formatting is pretty. + + diff --git a/theo/desert_fathers.md b/theo/desert_fathers.md @@ -0,0 +1,3 @@ +# On the individuality of worship + +A brother asked one of the elders: What good thing shall I do, and have life thereby? The old man replied: God alone knows what is good. However, I have heard it said that someone inquired of Father Abbot Nisteros the great,the friend of Abbot Anthony, asking: What good work shall I do? and that he replied: Not all works are alike. For Scripture says that Abraham was hospitable and God was with him. Elias loved solitary prayer, and God was with him. And David was humble, and God was with him. Therefore, whatever you see your soul to desire according to God, do that thing, and you shall keep your heart safe.