Update the notebook

Not all changes are here though.
This commit is contained in:
Gabriel Arazas 2022-01-09 12:24:55 +08:00
parent a454332352
commit 8d88983e21
8 changed files with 167 additions and 82 deletions

15
notebook/cli.ripgrep.org Normal file
View File

@ -0,0 +1,15 @@
#+title: Command line: ripgrep
#+date: 2021-11-07 20:56:49 +08:00
#+date_modified: 2021-11-07 20:59:33 +08:00
#+language: en
A modern replacement for grep... that is written in [[id:d7d7d8f0-adf9-461d-ace5-c8624dab1083][Rust language]]... because why not make it faster?
* Flags
- =-i, --ignore-case= enables searches regardless of letter case (e.g., uppercase, lowercase).
- =-g, --glob [GLOB...]= searches for the file to be included in the search; you can prepend the glob with =!= to exclude it

View File

@ -3,7 +3,7 @@
:END: :END:
#+title: GitHub Actions #+title: GitHub Actions
#+date: "2021-06-20 18:58:48 +08:00" #+date: "2021-06-20 18:58:48 +08:00"
#+date_modified: "2021-09-24 22:19:21 +08:00" #+date_modified: "2022-01-05 22:37:05 +08:00"
#+language: en #+language: en
@ -12,6 +12,7 @@
- a CI/CD tool integrated into GitHub - a CI/CD tool integrated into GitHub
- it is free for public repos but limited time per month for private repos - it is free for public repos but limited time per month for private repos
- [[https://docs.github.com/en/actions/learn-github-actions/understanding-github-actions][documentation]] for it
- focused into creating workflows which can be separate and applied in different contexts - focused into creating workflows which can be separate and applied in different contexts
+ a workflow is activated from an event + a workflow is activated from an event
+ stored in ~.github/workflows~ in the remote repo + stored in ~.github/workflows~ in the remote repo
@ -26,10 +27,24 @@
* Ecosystem * Ecosystem
- there is also a [[https://docs.github.com/en/actions/guides][detailed guide]] in introducing the overall concept
- the workflow allows you to create build artifacts; - the workflow allows you to create build artifacts;
you have fine-grained control such as letting you [[https://github.com/marketplace/actions/upload-a-build-artifact][upload certain files to be artifacts]] and [[https://github.com/marketplace/actions/download-a-build-artifact][downloading them]] after a workflow run; you have fine-grained control such as letting you [[https://github.com/marketplace/actions/upload-a-build-artifact][upload certain files to be artifacts]] and [[https://github.com/marketplace/actions/download-a-build-artifact][downloading them]] after a workflow run;
it also enables sharing of data between jobs it also enables sharing of data between jobs
- it can make automated releases - it can make automated releases like what I have done with [[https://github.com/foo-dogsquared/pop-launcher-plugin-duckduckgo-bangs/blob/d878e991dbb3269b4ea520e8c41bfa3e6346e4ab/.github/workflows/release.yml][one of my projects]]
- it can create automated Git commits with [[https://github.com/marketplace/actions/git-auto-commit][Git Auto Commit]];
combine with the ability to set schedules, you can create an automatic sync following a project
- otherwise, you can also create automated release but have to go through a merge request;
for example, this is how [[https://github.com/simple-icons/simple-icons/blob/9020eb4a8163817813f90f493c66e8d6b565d31c/.github/workflows/create-release.yml][Simple Icons maintain their releases]]
* Actions
- each of the job is mostly built with the actions
- like previously mentioned, you can search these actions in GitHub's marketplace
- the actions are primarily defined with =actions.yml= from the root which can serve as a documentation for the parameters

15
notebook/lang.rust.org Normal file
View File

@ -0,0 +1,15 @@
:PROPERTIES:
:ID: d7d7d8f0-adf9-461d-ace5-c8624dab1083
:END:
#+title: Rust language
#+date: 2021-09-14 21:35:47 +08:00
#+date_modified: 2021-09-14 21:49:14 +08:00
#+language: en
- [[https://doc.rust-lang.org/book/][Rust handbook]]
- Haskell with the familiarity of C
- variables are immutable by default and has to be annotated with the =mut= keyword;
for full immutability, you can declare constants with the =const= keyword and has to be type-annotated
- namespacing is available through =mod= and all of the items are private by default;
if you intended an item to be accessed with others, you have to add the =pub= keyword

23
notebook/lang.sed.org Normal file
View File

@ -0,0 +1,23 @@
#+title: GNU sed
#+date: 2021-08-02 22:00:52 +08:00
#+date_modified: 2021-08-02 22:09:07 +08:00
#+language: en
#+source: https://www.gnu.org/software/sed/
Stands for *stream editor*, it is a language for interfacing with text streams.
Quick pointers
- the tool will interact with the stream per line
- ~;~ to denote end of expression
- ~-E, --regexp-extended~ to use PCRE
- ~s~ is one of the most common and extensive commands for it
#+begin_src shell
printf "Hello\nThere" | sed -E -e 's/[aeiou]//g; s/[l]//g'
#+end_src
#+results:
: H
: Thr

View File

@ -3,7 +3,7 @@
:END: :END:
#+title: systemd #+title: systemd
#+date: "2021-05-20 22:37:22 +08:00" #+date: "2021-05-20 22:37:22 +08:00"
#+date_modified: "2021-08-29 00:07:15 +08:00" #+date_modified: "2022-01-03 22:03:26 +08:00"
#+language: en #+language: en
#+property: header-args :eval no #+property: header-args :eval no
@ -48,3 +48,15 @@ systemctl show-environment
systemctl --user start $SERVICE systemctl --user start $SERVICE
#+end_src #+end_src
* Extra information
- =systemd.directives.7= is an index of configuration directives including unit keys, environment variables, and command line options for systemd-related things.
Also contains the related manual pages for a deeper references.
[fn:: How did I pass a year without knowing this?]
- =systemd.mount= units require the filename to be the mountpoint.
Though, it has to be converted to what systemd accepts (e.g., =systemd-escape --path $PATH=).

View File

@ -3,7 +3,7 @@
:END: :END:
#+title: Flatpak packages #+title: Flatpak packages
#+date: "2021-06-27 23:46:41 +08:00" #+date: "2021-06-27 23:46:41 +08:00"
#+date_modified: "2021-11-17 13:31:30 +08:00" #+date_modified: "2021-12-13 17:04:58 +08:00"
#+language: en #+language: en
@ -47,3 +47,10 @@ To get us on the same page very quickly, here's the terminologies you'll encount
+ [[https://github.com/flathub/org.libretro.RetroArch][RetroArch]] is similarly complex to Gnucash with its vendored dependencies packaged as its own module + [[https://github.com/flathub/org.libretro.RetroArch][RetroArch]] is similarly complex to Gnucash with its vendored dependencies packaged as its own module
- Flathub has a [[https://github.com/flatpak/flatpak-builder-tools][curated set of scripts]] to automate building manifests for several projects such as Python, Rust, and Node similar to roam:nixpkgs - Flathub has a [[https://github.com/flatpak/flatpak-builder-tools][curated set of scripts]] to automate building manifests for several projects such as Python, Rust, and Node similar to roam:nixpkgs
- Flathub also has a [[https://github.com/flathub/shared-modules/][collection of modules intended to be shared among the repo]] serving as an additional base for the most common dependencies that cannot be found in runtimes - Flathub also has a [[https://github.com/flathub/shared-modules/][collection of modules intended to be shared among the repo]] serving as an additional base for the most common dependencies that cannot be found in runtimes
* Nuances
- the pip generator from [[https://github.com/flatpak/flatpak-builder-tools/tree/68aacd5d076070db2dd5eca2a86f15955bcd700b][flatpak-builder-tools]] will not build with binary wheels;
as of the linked commit, it does accept it [[https://github.com/flatpak/flatpak-builder-tools/blob/68aacd5d076070db2dd5eca2a86f15955bcd700b/pip/flatpak-pip-generator#L229][but only in certain formats]]

View File

@ -3,7 +3,7 @@
:END: :END:
#+title: Nix flakes #+title: Nix flakes
#+date: 2021-07-18 22:34:11 +08:00 #+date: 2021-07-18 22:34:11 +08:00
#+date_modified: 2021-12-28 21:12:39 +08:00 #+date_modified: 2022-01-07 13:58:21 +08:00
#+language: en #+language: en
@ -46,7 +46,7 @@ It is really just an attribute set that mainly deals with three attributes:
- =description= which is self-descriptive enough to see what's it for. ;p - =description= which is self-descriptive enough to see what's it for. ;p
- =inputs= which contains inputs (that are other flakes) to be used for... - =inputs= which contains inputs (that are other flakes) to be used for...
- ...the =outputs= which is a function that returns an attribute set to be exported. - ...the =outputs= which is a set or a function that returns an attribute set to be exported.
Here's a real example of a basic flake. Here's a real example of a basic flake.

View File

@ -18,11 +18,11 @@
abstract = {Ever wonder about that mysterious Content-Type tag? You know, the one youre supposed to put in HTML and you never quite know what it should be? Did you ever get an email from your friends in…}, abstract = {Ever wonder about that mysterious Content-Type tag? You know, the one youre supposed to put in HTML and you never quite know what it should be? Did you ever get an email from your friends in…},
langid = {american}, langid = {american},
organization = {{Joel on Software}}, organization = {{Joel on Software}},
file = {/home/foo-dogsquared/library/references/storage/63QJDRG2/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and.html} file = {/home/foo-dogsquared/Zotero/storage/63QJDRG2/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and.html}
} }
@book{ahrensHowTakeSmart2017, @book{ahrensHowTakeSmart2017,
title = {How to {{Take Smart Notes}}: One {{Simple Technique}} to {{Boost Writing}}, {{Learning}} and {{Thinking}} for {{Students}}, {{Academics}} and {{Nonfiction Book Writers}}}, title = {How to {{Take Smart Notes}}: {{One Simple Technique}} to {{Boost Writing}}, {{Learning}} and {{Thinking}} for {{Students}}, {{Academics}} and {{Nonfiction Book Writers}}},
shorttitle = {How to {{Take Smart Notes}}}, shorttitle = {How to {{Take Smart Notes}}},
author = {Ahrens, Sönke}, author = {Ahrens, Sönke},
date = {2017-02-24}, date = {2017-02-24},
@ -38,14 +38,16 @@
@video{AlanKayLecture2016, @video{AlanKayLecture2016,
title = {History of {{Computers}} \& {{User Interface Images}} \& {{Symbols}}}, title = {History of {{Computers}} \& {{User Interface Images}} \& {{Symbols}}},
shorttitle = {Alan {{Kay}} - {{Lecture}}}, shorttitle = {Alan {{Kay}} - {{Lecture}}},
editor = {Kay, Alan},
date = {1987-10-01}, date = {1987-10-01},
url = {https://www.youtube.com/watch?v=6ZdxiQoOBgs&feature=youtu.be&t=3080}, url = {https://www.youtube.com/watch?v=6ZdxiQoOBgs&feature=youtu.be&t=3080},
urldate = {2020-07-06}, urldate = {2020-07-06},
abstract = {This is part of the University Video Communication - Distinguished Lecture Series on history of computers and human machine interaction. Alan Kay in this lecture goes over the full history of computer with special empahis on first attempts for creating an interactive User Interface and the mouse/keyboard. This lecture goes under the title: "Doing with images makes symbols : communicating with computers" which was recorded in Oct 27, 1987 and sponsored by Apple Computers. For those who do not know - Alan Kay's research and ideas on User Interface Design were the foundation of Apple and Windows. This is of two vidoe tapes I had laying in my library for many years - since 1994 - and recently decided to digitize and upload and share.} abstract = {This is part of the University Video Communication - Distinguished Lecture Series on history of computers and human machine interaction. Alan Kay in this lecture goes over the full history of computer with special empahis on first attempts for creating an interactive User Interface and the mouse/keyboard. This lecture goes under the title: "Doing with images makes symbols : communicating with computers" which was recorded in Oct 27, 1987 and sponsored by Apple Computers. For those who do not know - Alan Kay's research and ideas on User Interface Design were the foundation of Apple and Windows. This is of two vidoe tapes I had laying in my library for many years - since 1994 - and recently decided to digitize and upload and share.},
editortype = {director}
} }
@online{allanconSoftwareHeritageFilesystem2021, @online{allanconSoftwareHeritageFilesystem2021,
title = {The {{Software Heritage Filesystem}} ({{SwhFS}}): Integrating {{Source Code Archival}} with {{Development}}}, title = {The {{Software Heritage Filesystem}} ({{SwhFS}}): {{Integrating Source Code Archival}} with {{Development}}},
shorttitle = {The {{Software Heritage Filesystem}} ({{SwhFS}})}, shorttitle = {The {{Software Heritage Filesystem}} ({{SwhFS}})},
author = {Allançon, Thibault and Pietri, Antoine and Zacchiroli, Stefano}, author = {Allançon, Thibault and Pietri, Antoine and Zacchiroli, Stefano},
date = {2021-02-12}, date = {2021-02-12},
@ -57,7 +59,7 @@
abstract = {We introduce the Software Heritage filesystem (SwhFS), a user-space filesystem that integrates large-scale open source software archival with development workflows. SwhFS provides a POSIX filesystem view of Software Heritage, the largest public archive of software source code and version control system (VCS) development history.Using SwhFS, developers can quickly "checkout" any of the 2 billion commits archived by Software Heritage, even after they disappear from their previous known location and without incurring the performance cost of repository cloning. SwhFS works across unrelated repositories and different VCS technologies. Other source code artifacts archived by Software Heritage-individual source code files and trees, releases, and branches-can also be accessed using common programming tools and custom scripts, as if they were locally available.A screencast of SwhFS is available online at dx.doi.org/10.5281/zenodo.4531411.}, abstract = {We introduce the Software Heritage filesystem (SwhFS), a user-space filesystem that integrates large-scale open source software archival with development workflows. SwhFS provides a POSIX filesystem view of Software Heritage, the largest public archive of software source code and version control system (VCS) development history.Using SwhFS, developers can quickly "checkout" any of the 2 billion commits archived by Software Heritage, even after they disappear from their previous known location and without incurring the performance cost of repository cloning. SwhFS works across unrelated repositories and different VCS technologies. Other source code artifacts archived by Software Heritage-individual source code files and trees, releases, and branches-can also be accessed using common programming tools and custom scripts, as if they were locally available.A screencast of SwhFS is available online at dx.doi.org/10.5281/zenodo.4531411.},
archiveprefix = {arXiv}, archiveprefix = {arXiv},
keywords = {Computer Science - Software Engineering,reproducibility}, keywords = {Computer Science - Software Engineering,reproducibility},
file = {/home/foo-dogsquared/library/references/storage/EZNYIY3K/Allançon et al. - 2021 - The Software Heritage Filesystem (SwhFS) Integrat.pdf;/home/foo-dogsquared/library/references/storage/SDKLQAQB/2102.html} file = {/home/foo-dogsquared/Zotero/storage/EZNYIY3K/Allançon et al. - 2021 - The Software Heritage Filesystem (SwhFS) Integrat.pdf;/home/foo-dogsquared/Zotero/storage/SDKLQAQB/2102.html}
} }
@video{andrewhuangLearnMusicTheory, @video{andrewhuangLearnMusicTheory,
@ -77,23 +79,12 @@
langid = {english} langid = {english}
} }
@article{beardEBethArkeSyriacDigital2017, @online{AvoidingComplexitySystemd,
title = {The {{eBethArké Syriac}} Digital Library: A Case Study}, title = {Avoiding Complexity with Systemd},
shorttitle = {The {{eBethArké Syriac}} Digital Library}, url = {https://mgdm.net/weblog/systemd/},
author = {Beard, Isaiah}, urldate = {2022-01-03},
date = {2017-01-01}, abstract = {Using systemd to avoid having to write some risky code},
journaltitle = {Digital Library Perspectives}, file = {/home/foo-dogsquared/Zotero/storage/BJPD7T4G/systemd.html}
volume = {33},
number = {1},
pages = {40--47},
publisher = {{Emerald Publishing Limited}},
issn = {2059-5816},
doi = {10.1108/DLP-07-2016-0017},
url = {https://doi.org/10.1108/DLP-07-2016-0017},
urldate = {2020-06-25},
abstract = {Purpose The purpose of this paper is to review and describe the teamwork, collaboration and learning experiences involved in meeting the unique challenges of establishing a new digital library for Syriac collections. The eBetharké Syriac Digital Library Portal is a collaborative effort between the libraries at Rutgers, The State University of New Jersey, and the Beth Mardutho Syriac Institute, a traditional library of texts, to create a specialized digital library collection online. This digital library features content in and relating to Syriac, an Aramaic dialect spoken in the first century A.D. and for which a great deal of historically significant documents was written during the period. Design/methodology/approach This task required effort and research on multiple fronts, including software development; collaboration on technical, interpersonal and policy-based levels; and in overcoming challenges related to the predominant computing platforms installed and in use by potential users of this digital library. Findings This collaboration provided significant new challenges and learning experiences among the staff who worked on this project and provides a base upon which our digital library platforms can diversify and be more culturally aware. Social implications There have been increasing calls within the academic community for better support in the technological space for this and other contemporary languages of the region. Creation of such a platform and expanding it significantly would benefit scholars of Middle Eastern texts in much the same way digital repositories have revolutionized online text access for the Western world. Originality/value The project is unique in that it is believed to the first production-level, digital preservation-specific Syriac digital library of its kind. It supports the display of metadata and descriptive details for digital library objects not just in English, but in Arabic and Syriac languages as well, where appropriate},
keywords = {Beth Mardutho,Digital library,Institutional repository,Preservation,Rutgers,Syriac},
file = {/home/foo-dogsquared/library/references/storage/8HCG86JC/html.html}
} }
@online{boronine_color_2012, @online{boronine_color_2012,
@ -102,11 +93,11 @@
date = {2012-03-26}, date = {2012-03-26},
url = {https://www.boronine.com/2012/03/26/Color-Spaces-for-Human-Beings/}, url = {https://www.boronine.com/2012/03/26/Color-Spaces-for-Human-Beings/},
urldate = {2020-09-19}, urldate = {2020-09-19},
file = {/home/foo-dogsquared/library/references/storage/NTN2Y772/Color-Spaces-for-Human-Beings.html} file = {/home/foo-dogsquared/Zotero/storage/NTN2Y772/Color-Spaces-for-Human-Beings.html}
} }
@article{civanBetterOrganizePersonal2009, @article{civanBetterOrganizePersonal2009,
title = {Better to Organize Personal Information by Folders or by Tags?: The Devil Is in the Details}, title = {Better to Organize Personal Information by Folders or by Tags?: {{The}} Devil Is in the Details},
shorttitle = {Better to Organize Personal Information by Folders or by Tags?}, shorttitle = {Better to Organize Personal Information by Folders or by Tags?},
author = {Civan, Andrea and Jones, William and Klasnja, Predrag and Bruce, Harry}, author = {Civan, Andrea and Jones, William and Klasnja, Predrag and Bruce, Harry},
date = {2009-06-01}, date = {2009-06-01},
@ -120,21 +111,14 @@
url = {http://doi.wiley.com/10.1002/meet.2008.1450450214}, url = {http://doi.wiley.com/10.1002/meet.2008.1450450214},
urldate = {2020-06-22}, urldate = {2020-06-22},
langid = {english}, langid = {english},
file = {/home/foo-dogsquared/library/references/storage/L2WJNYJ4/Civan et al. - 2009 - Better to organize personal information by folders.pdf} file = {/home/foo-dogsquared/Zotero/storage/L2WJNYJ4/Civan et al. - 2009 - Better to organize personal information by folders.pdf}
} }
@online{ConnectingReproducibleDeployment, @online{ConnectingReproducibleDeployment,
title = {Connecting Reproducible Deployment to a Long-Term Source Code Archive — 2019 — {{Blog}} — {{GNU~Guix}}}, title = {Connecting Reproducible Deployment to a Long-Term Source Code Archive — 2019 — {{Blog}} — {{GNU~Guix}}},
url = {https://guix.gnu.org/en/blog/2019/connecting-reproducible-deployment-to-a-long-term-source-code-archive/}, url = {https://guix.gnu.org/en/blog/2019/connecting-reproducible-deployment-to-a-long-term-source-code-archive/},
urldate = {2021-07-25}, urldate = {2021-07-25},
file = {/home/foo-dogsquared/library/references/storage/6ZMUJVCM/connecting-reproducible-deployment-to-a-long-term-source-code-archive.html} file = {/home/foo-dogsquared/Zotero/storage/6ZMUJVCM/connecting-reproducible-deployment-to-a-long-term-source-code-archive.html}
}
@online{CreativeScala,
title = {Creative {{Scala}}},
url = {https://www.creativescala.org/},
urldate = {2021-04-06},
file = {/home/foo-dogsquared/library/references/storage/7NTKJJFJ/www.creativescala.org.html}
} }
@video{cs50GitInternalsJohn, @video{cs50GitInternalsJohn,
@ -145,17 +129,6 @@
editortype = {director} editortype = {director}
} }
@online{deutschHowBuildSelfdriving2019,
title = {How to Build a Self-Driving Car in One Month},
author = {Deutsch, Max},
date = {2019-05-13T18:07:11},
url = {https://medium.com/@maxdeutsch/how-to-build-a-self-driving-car-in-one-month-d52df48f5b07},
urldate = {2020-07-07},
abstract = {Its not as hard as it seems…},
langid = {english},
organization = {{Medium}}
}
@thesis{dolstraPurelyFunctionalSoftware2006, @thesis{dolstraPurelyFunctionalSoftware2006,
title = {The Purely Functional Software Deployment Model}, title = {The Purely Functional Software Deployment Model},
author = {Dolstra, Eelco}, author = {Dolstra, Eelco},
@ -165,7 +138,7 @@
isbn = {9789039341308}, isbn = {9789039341308},
langid = {english}, langid = {english},
annotation = {OCLC: 71702886}, annotation = {OCLC: 71702886},
file = {/home/foo-dogsquared/library/references/storage/DA53ZMUG/Dolstra - 2006 - The purely functional software deployment model.pdf} file = {/home/foo-dogsquared/Zotero/storage/DA53ZMUG/Dolstra - 2006 - The purely functional software deployment model.pdf}
} }
@online{DrawaboxFreeExercise, @online{DrawaboxFreeExercise,
@ -174,16 +147,16 @@
urldate = {2021-08-21}, urldate = {2021-08-21},
abstract = {A free, exercise based approach to learning the fundamentals of drawing. We tackle drawing in a logical, analytical fashion inspired by concept artists and industrial designers, focusing on technical skills that can be developed with hard work and determination.}, abstract = {A free, exercise based approach to learning the fundamentals of drawing. We tackle drawing in a logical, analytical fashion inspired by concept artists and industrial designers, focusing on technical skills that can be developed with hard work and determination.},
organization = {{Drawabox.com}}, organization = {{Drawabox.com}},
file = {/home/foo-dogsquared/library/references/storage/6A9ZMNUT/drawabox.com.html} file = {/home/foo-dogsquared/Zotero/storage/6A9ZMNUT/drawabox.com.html}
} }
@article{galanterWhatGenerativeArt, @article{galanterWhatGenerativeArt,
title = {What Is {{Generative Art}}? Complexity {{Theory}} as a {{Context}} for {{Art Theory}}}, title = {What Is {{Generative Art}}? {{Complexity Theory}} as a {{Context}} for {{Art Theory}}},
author = {Galanter, Philip}, author = {Galanter, Philip},
pages = {21}, pages = {21},
abstract = {In this paper an attempt is made to offer a definition of generative art that is inclusive and provides fertile ground for both technical and art theoretical development. First the use of systems is identified as a key element in generative art. Various ideas from complexity theory are then introduced. It is noted that systems exist on a continuum from the highly ordered to the highly disordered. Citing examples from information theory and complexity science, it is noted that highly ordered and highly disordered systems are typically viewed as simple, and complex systems exhibit both order and disorder. This leads to the adoption of effective complexity, order, and disorder as organizing principles in the comparison of various generative art systems. This inclusive view leads to the somewhat surprising observation that generative art is as old as art itself. A number of specific artists and studies are discussed within this systems and complexity theory influenced paradigm. Finally a number of art theoretical questions are introduced to exercise the suggested generative art definition and implicit paradigm.}, abstract = {In this paper an attempt is made to offer a definition of generative art that is inclusive and provides fertile ground for both technical and art theoretical development. First the use of systems is identified as a key element in generative art. Various ideas from complexity theory are then introduced. It is noted that systems exist on a continuum from the highly ordered to the highly disordered. Citing examples from information theory and complexity science, it is noted that highly ordered and highly disordered systems are typically viewed as simple, and complex systems exhibit both order and disorder. This leads to the adoption of effective complexity, order, and disorder as organizing principles in the comparison of various generative art systems. This inclusive view leads to the somewhat surprising observation that generative art is as old as art itself. A number of specific artists and studies are discussed within this systems and complexity theory influenced paradigm. Finally a number of art theoretical questions are introduced to exercise the suggested generative art definition and implicit paradigm.},
langid = {english}, langid = {english},
file = {/home/foo-dogsquared/library/references/storage/QXUELZE8/Galanter - What is Generative Art Complexity Theory as a Con.pdf} file = {/home/foo-dogsquared/Zotero/storage/QXUELZE8/Galanter - What is Generative Art Complexity Theory as a Con.pdf}
} }
@inproceedings{greenbergUnixShellProgramming2021, @inproceedings{greenbergUnixShellProgramming2021,
@ -199,22 +172,24 @@
url = {https://dl.acm.org/doi/10.1145/3458336.3465294}, url = {https://dl.acm.org/doi/10.1145/3458336.3465294},
urldate = {2021-06-15}, urldate = {2021-06-15},
abstract = {The Unix shell is a powerful, ubiquitous, and reviled tool for managing computer systems. The shell has been largely ignored by academia and industry. While many replacement shells have been proposed, the Unix shell persists. Two recent threads of formal and practical research on the shell enable new approaches. We can help manage the shells essential shortcomings (dynamism, power, and abstruseness) and address its inessential ones. Improving the shell holds much promise for development, ops, and data processing.}, abstract = {The Unix shell is a powerful, ubiquitous, and reviled tool for managing computer systems. The shell has been largely ignored by academia and industry. While many replacement shells have been proposed, the Unix shell persists. Two recent threads of formal and practical research on the shell enable new approaches. We can help manage the shells essential shortcomings (dynamism, power, and abstruseness) and address its inessential ones. Improving the shell holds much promise for development, ops, and data processing.},
eventtitle = {{{HotOS}} '21: Workshop on {{Hot Topics}} in {{Operating Systems}}}, eventtitle = {{{HotOS}} '21: {{Workshop}} on {{Hot Topics}} in {{Operating Systems}}},
isbn = {978-1-4503-8438-4}, isbn = {978-1-4503-8438-4},
langid = {english}, langid = {english},
file = {/home/foo-dogsquared/library/references/storage/R758CARA/Greenberg et al. - 2021 - Unix shell programming the next 50 years.pdf} file = {/home/foo-dogsquared/Zotero/storage/R758CARA/Greenberg et al. - 2021 - Unix shell programming the next 50 years.pdf}
} }
@video{HowDrawAnything2008, @video{HowDrawAnything2008,
title = {How {{To Draw Anything}}}, title = {How {{To Draw Anything}}},
editor = {Mission: Renaissance},
date = {2008-01-16}, date = {2008-01-16},
url = {https://www.youtube.com/watch?v=p9TFLQq1Uh4}, url = {https://www.youtube.com/watch?v=p9TFLQq1Uh4},
urldate = {2020-07-07}, urldate = {2020-07-07},
abstract = {Here's a great video from an art teacher in Los Angeles named Larry Gluck. He runs a school called Mission Renaissance and teaches thousands of people how to draw.} abstract = {Here's a great video from an art teacher in Los Angeles named Larry Gluck. He runs a school called Mission Renaissance and teaches thousands of people how to draw.},
editortype = {director}
} }
@online{InformationLiteracyUser2014, @online{InformationLiteracyUser2014,
title = {The {{Information Literacy User}}'s {{Guide}}: An {{Open}}, {{Online Textbook}}}, title = {The {{Information Literacy User}}'s {{Guide}}: {{An Open}}, {{Online Textbook}}},
shorttitle = {The {{Information Literacy User}}'s {{Guide}}}, shorttitle = {The {{Information Literacy User}}'s {{Guide}}},
date = {2014-04-04T18:20:08+00:00}, date = {2014-04-04T18:20:08+00:00},
url = {https://textbooks.opensuny.org/the-information-literacy-users-guide-an-open-online-textbook/}, url = {https://textbooks.opensuny.org/the-information-literacy-users-guide-an-open-online-textbook/},
@ -222,7 +197,7 @@
abstract = {Good researchers have a host of tools at their disposal that make navigating todays complex information ecosystem much more manageable. Gaining the knowledge, abilities, and self-reflection necessary to be a good researcher helps not only in academic settings, but is invaluable in any career, and throughout ones life. The Information …}, abstract = {Good researchers have a host of tools at their disposal that make navigating todays complex information ecosystem much more manageable. Gaining the knowledge, abilities, and self-reflection necessary to be a good researcher helps not only in academic settings, but is invaluable in any career, and throughout ones life. The Information …},
langid = {american}, langid = {american},
organization = {{Open SUNY Textbooks}}, organization = {{Open SUNY Textbooks}},
file = {/home/foo-dogsquared/library/references/storage/8YJDMZEN/the-information-literacy-users-guide-an-open-online-textbook.html} file = {/home/foo-dogsquared/Zotero/storage/8YJDMZEN/the-information-literacy-users-guide-an-open-online-textbook.html}
} }
@book{kunProgrammerIntroductionMathematics2020, @book{kunProgrammerIntroductionMathematics2020,
@ -234,7 +209,7 @@
} }
@video{mathieugauthierFamiStudioTutorialUpdated, @video{mathieugauthierFamiStudioTutorialUpdated,
title = {{{FamiStudio}} 3.0.0 - {{Tutorial}} ({{Updated Mid}}-2021)}, title = {{{FamiStudio}} 3.0.0 - {{Tutorial}} ({{Updated Mid-2021}})},
editor = {{Mathieu Gauthier}}, editor = {{Mathieu Gauthier}},
url = {https://www.youtube.com/watch?v=UyECgqFbZPQ}, url = {https://www.youtube.com/watch?v=UyECgqFbZPQ},
urldate = {2021-07-25}, urldate = {2021-07-25},
@ -248,7 +223,7 @@
url = {https://notes.andymatuschak.org/z4SDCZQeRo4xFEQ8H4qrSqd68ucpgE6LU155C}, url = {https://notes.andymatuschak.org/z4SDCZQeRo4xFEQ8H4qrSqd68ucpgE6LU155C},
urldate = {2021-05-08}, urldate = {2021-05-08},
organization = {{Andyʼs working notes}}, organization = {{Andyʼs working notes}},
file = {/home/foo-dogsquared/library/references/storage/CSWGPERC/z4SDCZQeRo4xFEQ8H4qrSqd68ucpgE6LU155C.html} file = {/home/foo-dogsquared/Zotero/storage/CSWGPERC/z4SDCZQeRo4xFEQ8H4qrSqd68ucpgE6LU155C.html}
} }
@article{mckenney_is_2019, @article{mckenney_is_2019,
@ -257,16 +232,16 @@
date = {2019-12-22}, date = {2019-12-22},
pages = {561}, pages = {561},
langid = {english}, langid = {english},
file = {/home/foo-dogsquared/library/references/storage/T3CQ8E5S/McKenney - Is Parallel Programming Hard, And, If So, What Can.pdf} file = {/home/foo-dogsquared/Zotero/storage/T3CQ8E5S/McKenney - Is Parallel Programming Hard, And, If So, What Can.pdf}
} }
@article{nielsenAugmentingLongtermMemory2018, @article{nielsenAugmentingLongtermMemory2018,
title = {Augmenting {{Long}}-Term {{Memory}}}, title = {Augmenting {{Long-term Memory}}},
author = {Nielsen, Michael}, author = {Nielsen, Michael},
date = {2018}, date = {2018},
url = {http://augmentingcognition.com/ltm.html}, url = {http://augmentingcognition.com/ltm.html},
urldate = {2021-05-14}, urldate = {2021-05-14},
file = {/home/foo-dogsquared/library/references/storage/LWS5WBWK/ltm.html} file = {/home/foo-dogsquared/Zotero/storage/LWS5WBWK/ltm.html}
} }
@video{noauthor_how_2019, @video{noauthor_how_2019,
@ -282,28 +257,51 @@
title = {Linux {{Device Drivers}}, {{Third Edition}} [{{LWN}}.Net]}, title = {Linux {{Device Drivers}}, {{Third Edition}} [{{LWN}}.Net]},
url = {https://lwn.net/Kernel/LDD3/}, url = {https://lwn.net/Kernel/LDD3/},
urldate = {2020-09-17}, urldate = {2020-09-17},
file = {/home/foo-dogsquared/library/references/storage/CFXMPM5G/LDD3.html} file = {/home/foo-dogsquared/Zotero/storage/CFXMPM5G/LDD3.html}
} }
@online{PEP518Specifying, @video{packagingconChangesPythonPackaging2021,
title = {{{PEP}} 518 -- {{Specifying Minimum Build System Requirements}} for {{Python Projects}}}, title = {Changes in {{Python}} Packaging What Downstream Packagers Need to Know - {{Thomas Kluyver}}},
url = {https://www.python.org/dev/peps/pep-0518/}, editor = {{PackagingCon}},
urldate = {2021-07-17}, date = {2021-11-22},
abstract = {The official home of the Python Programming Language}, url = {https://www.youtube.com/watch?v=S291gr473dg},
langid = {english}, urldate = {2021-12-21},
organization = {{Python.org}}, abstract = {PackagingCon 2021 https://pretalx.com/packagingcon-2021... Python packaging has changed a lot in the last few years. New tools such as Poetry and Flit allow creating packages without the traditional setup.py file, and new standards mean that pyproject.toml files are now the linchpin for building and installing Python modules. The wheel package format, which is somewhat older, has also gained a more central role. Ill explain what has changed, including a brief summary of what motivated these changes. Then Ill discuss how you can use the new standard interfaces and formats, with a focus on people re-packaging Python packages into other distribution systems such as Conda, Spack, or Linux distribution repositories. Ill introduce the low-level build and installer tools, and compare them to the more widely used pip install.},
file = {/home/foo-dogsquared/library/references/storage/L29JBP5K/pep-0518.html} editortype = {director},
keywords = {packaging,python}
}
@video{packagingconPackagingGrailLudovic2021,
title = {The {{Packaging Grail}} - {{Ludovic Courtès}} | {{PackagingCon}} 2021},
editor = {{PackagingCon}},
date = {2021-11-23},
url = {https://www.youtube.com/watch?v=tcTOkXlE_ac},
urldate = {2021-12-28},
abstract = {More info: https://pretalx.com/packagingcon-2021... Description: Package managers are so old that one may wonder why we are here discussing recent tools in this area. What are we trying to achieve that existing tools failed to provide? And why-oh-why does so much energy go into sidestepping package managers through “application bundles” à la Docker? In this talk, Ill present the grail that GNU Guix is after, taking examples from core features and key packaging practices. You may recognize bits from other projects: the rigor of Debian, the functional paradigm of Nix, the flexibility of Spack. Youll also see salient differences: Guix tries to go as far as possible in each of these directions while remaining pragmatic. Theres a fine line between pragmatism and deception that Guix tries not to cross. Ill explain what the projects “red lines” are and why we think users and implementors should care. Ill reflect on how we can collectively shape a brighter future for software deployment.},
editortype = {director}
}
@video{packagingconPythonPackagingWhy2021,
title = {Python {{Packaging Why}} Don't You Just? - {{Tzu-ping Chung}} | {{PackagingCon}} 2021},
shorttitle = {Python {{Packaging Why}} Don't You Just?},
editor = {{PackagingCon}},
date = {2021-11-22},
url = {https://www.youtube.com/watch?v=jpP07nZiicE},
urldate = {2021-12-21},
abstract = {Every packaging system has its specific way of doing things, but to an outsider. Pythons seems to have a knack of finding the most non-straightforward and weird solution for every choice. This talk attempts to trace some of the peculiarities to find out the reasoning behind the decisions, and how they stand in the modern packaging landscape.},
editortype = {director},
keywords = {packaging,python}
} }
@online{PixelJointForum, @online{PixelJointForum,
title = {Pixel {{Joint Forum}}: The {{Pixel Art Tutorial}}}, title = {Pixel {{Joint Forum}}: {{The Pixel Art Tutorial}}},
url = {http://pixeljoint.com/forum/forum_posts.asp?TID=11299}, url = {http://pixeljoint.com/forum/forum_posts.asp?TID=11299},
urldate = {2021-03-31}, urldate = {2021-03-31},
file = {/home/foo-dogsquared/library/references/storage/H5VPM3FZ/forum_posts.html} file = {/home/foo-dogsquared/Zotero/storage/H5VPM3FZ/forum_posts.html}
} }
@online{PrivilegeEscalationPolkit2021, @online{PrivilegeEscalationPolkit2021,
title = {Privilege Escalation with Polkit: How to Get Root on {{Linux}} with a Seven-Year-Old Bug}, title = {Privilege Escalation with Polkit: {{How}} to Get Root on {{Linux}} with a Seven-Year-Old Bug},
shorttitle = {Privilege Escalation with Polkit}, shorttitle = {Privilege Escalation with Polkit},
date = {2021-06-10T16:00:52+00:00}, date = {2021-06-10T16:00:52+00:00},
url = {https://github.blog/2021-06-10-privilege-escalation-polkit-root-on-linux-with-bug/}, url = {https://github.blog/2021-06-10-privilege-escalation-polkit-root-on-linux-with-bug/},
@ -311,7 +309,7 @@
abstract = {polkit is a system service installed by default on many Linux distributions. Its used by systemd, so any Linux distribution that uses systemd also uses polkit. As a member of GitHub Security Lab, my job is to help improve the security of open source software by finding and reporting vulnerabilities. A few weeks ago, I found a privilege escalation vulnerability in polkit.}, abstract = {polkit is a system service installed by default on many Linux distributions. Its used by systemd, so any Linux distribution that uses systemd also uses polkit. As a member of GitHub Security Lab, my job is to help improve the security of open source software by finding and reporting vulnerabilities. A few weeks ago, I found a privilege escalation vulnerability in polkit.},
langid = {american}, langid = {american},
organization = {{The GitHub Blog}}, organization = {{The GitHub Blog}},
file = {/home/foo-dogsquared/library/references/storage/IUA3ENCQ/2021-06-10-privilege-escalation-polkit-root-on-linux-with-bug.html} file = {/home/foo-dogsquared/Zotero/storage/IUA3ENCQ/2021-06-10-privilege-escalation-polkit-root-on-linux-with-bug.html}
} }
@book{robinsonTextMining, @book{robinsonTextMining,
@ -321,7 +319,7 @@
urldate = {2020-06-15}, urldate = {2020-06-15},
abstract = {A guide to text analysis within the tidy data framework, using the tidytext package and other tidy tools}, abstract = {A guide to text analysis within the tidy data framework, using the tidytext package and other tidy tools},
keywords = {data-mining}, keywords = {data-mining},
file = {/home/foo-dogsquared/library/references/storage/BANUJYQE/www.tidytextmining.com.html} file = {/home/foo-dogsquared/Zotero/storage/BANUJYQE/www.tidytextmining.com.html}
} }
@video{spudlyoConsistentTechnicalDocuments2019, @video{spudlyoConsistentTechnicalDocuments2019,
@ -347,11 +345,11 @@
title = {Structure and {{Interpretation}} of {{Computer Programs}}}, title = {Structure and {{Interpretation}} of {{Computer Programs}}},
url = {https://mitpress.mit.edu/sites/default/files/sicp/full-text/book/book.html}, url = {https://mitpress.mit.edu/sites/default/files/sicp/full-text/book/book.html},
urldate = {2020-07-08}, urldate = {2020-07-08},
file = {/home/foo-dogsquared/library/references/storage/MKKYYSRM/book.html} file = {/home/foo-dogsquared/Zotero/storage/MKKYYSRM/book.html}
} }
@online{WasWrongSpeed2015, @online{WasWrongSpeed2015,
title = {I {{Was Wrong About Speed Reading}}: Here Are the {{Facts}}}, title = {I {{Was Wrong About Speed Reading}}: {{Here}} Are the {{Facts}}},
shorttitle = {I {{Was Wrong About Speed Reading}}}, shorttitle = {I {{Was Wrong About Speed Reading}}},
date = {2015-01-19T21:38:32+00:00}, date = {2015-01-19T21:38:32+00:00},
url = {https://www.scotthyoung.com/blog/2015/01/19/speed-reading-redo/}, url = {https://www.scotthyoung.com/blog/2015/01/19/speed-reading-redo/},
@ -369,7 +367,7 @@
abstract = {What tacit knowledge is, and why it is the most interesting topic in the study of expertise today.}, abstract = {What tacit knowledge is, and why it is the most interesting topic in the study of expertise today.},
langid = {english}, langid = {english},
organization = {{Commonplace - The Commoncog Blog}}, organization = {{Commonplace - The Commoncog Blog}},
file = {/home/foo-dogsquared/library/references/storage/FK4A7WUP/tacit-knowledge-is-a-real-thing.html} file = {/home/foo-dogsquared/Zotero/storage/FK4A7WUP/tacit-knowledge-is-a-real-thing.html}
} }
@article{yurichevReverseEngineeringBeginners, @article{yurichevReverseEngineeringBeginners,
@ -378,7 +376,7 @@
pages = {1063}, pages = {1063},
langid = {english}, langid = {english},
keywords = {programming,security}, keywords = {programming,security},
file = {/home/foo-dogsquared/library/references/storage/UXP46KMJ/Yurichev - Reverse Engineering for Beginners.pdf} file = {/home/foo-dogsquared/Zotero/storage/UXP46KMJ/Yurichev - Reverse Engineering for Beginners.pdf}
} }