summaryrefslogtreecommitdiff
path: root/non-posts/projects.skr
blob: 4c950c1cbbd3630c35274a548c2a6686e51a8608 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
(post
 :title "Projects"

 (h1 [Projects])

 (p [Here is a list of some of the projects that I’m involved with that
     actually might be useful to others.])


 (h2 [Hacking the Wavedrum])

 (p [I wrote a ,(ref "/tags/wavedrum.html" "series of blog posts") in
     which I document my efforts to understand and possibly manipulate
     the firmware of Korg’s Wavedrum.  The PCB is easily accessible
     and exposes big connector pads as well as a microSD card—an
     invitation to play with the hardware.])

 (p [The ,(ref "/wavedrum/index.html" "project page") is the best
     place to get an overview and to see the current status.  It
     contains links to the sources of any software artifacts I create
     in the process.])


 (h2 [GNU Guix])

 (p [,(ref "https://guix.gnu.org" "GNU Guix") is a novel package
     manager for ,(ref "http://gnu.org" "GNU systems").  In Guix a
     package is treated as a pure function whose output is fully
     described by its inputs (its dependencies).  I’m packaging lots
     of bioinformatics software when I’m in the office and audio tools
     when I’m off work.])

 (p [The Guix package manager forms the foundation of the Guix System,
 which is the GNU system I use on my laptop.])


 (h2 [GNU Guix Workflow Language])

 (p [,(ref "https://www.guixwl.org" "The Guix Workflow Language
 (GWL)") provides a scientific computing extension to GNU Guix's
declarative language for package management for the declaration of
scientific workflows.])

 (p [It combines the specification of work units and their
relationship to one another with the reproducible software deployment
facilities of the functional package manager GNU Guix.  A GWL workflow
will always run in a reproducible environment that GNU Guix
automatically prepares.])

 (h2 [Guile Picture Language])
 (p [,(ref "/guile-picture-language" "The Guile Picture Language")
     provides a Guile library containing simple procedures to generate
     primitive shapes, to manipulate them, and to compose them to build
     complex pictures.  While this library could be used to procedurally
     generate images, it is really meant to be used interactively.])

 (h2 [LV2 plugins])

 (p [I have ported two VST instruments to the LV2 plugin framework,
     because I missed them after my move to GNU/Linux.])

 (ul
  (li (ref "/lv2/mdaepiano/index.html" "mda EPiano"))
  (li (ref "/lv2/mdapiano/index.html" "mda Piano"))))