summaryrefslogtreecommitdiff
path: root/posts/gnu30.md
diff options
context:
space:
mode:
authorDavid Thompson <dthompson2@worcester.edu>2022-02-05 17:41:36 -0500
committerDavid Thompson <dthompson2@worcester.edu>2022-02-05 17:41:47 -0500
commit2c01d4daeff989a556083d26b7c6e5cf7f89b472 (patch)
tree9cddea13a0c3786af75593aa5282f4c5f5cdbf44 /posts/gnu30.md
parent25ca9fd2a435c3d16677f0501e86e020820fba8b (diff)
Prefix old post file names with dates.
Diffstat (limited to 'posts/gnu30.md')
-rw-r--r--posts/gnu30.md62
1 files changed, 0 insertions, 62 deletions
diff --git a/posts/gnu30.md b/posts/gnu30.md
deleted file mode 100644
index 3d42bf3..0000000
--- a/posts/gnu30.md
+++ /dev/null
@@ -1,62 +0,0 @@
-title: GNU 30th Anniversary Hackathon
-date: 2013-09-30 22:00
-tags: gnu, fsf, free software
-summary: Happy birthday, GNU!
----
-
-I spent my weekend at MIT at the GNU 30th anniversary hackathon. I had
-never participated in a hackathon before and was excited to see what
-it was like. Developers from many GNU and non-GNU projects were there
-to hack and help others get involved, and RMS was there to give the
-keynote speech.
-
-On Saturday, I spent nearly the entire day in the GNU FM room. About a
-year ago I wrote an
-[installation guide](http://bugs.foocorp.net/projects/fm/wiki/How_to_install)
-on the GNU FM wiki, and so Matt Lee asked me to walk some newcomers
-through getting a development environment up and running. I was able
-to help four people with this. They all had a functioning GNU FM
-server and they were able to scrobble their music to it. Setting up
-GNU FM can be quite a pain, and the guide I had written was missing
-some information and gave some bad advice. I simplified and rewrote
-some of it so that it’s easier to follow. Hopefully this will benefit
-a future contributor to GNU FM.
-
-At 5PM on Saturday, RMS gave a talk about the future of free software
-and the GNU project. He discussed the value of reverse engineering
-proprietary applications and device drivers in order to write free
-replacements. He also talked about the dangers of
-software-as-a-service and the “iThings”. His
-[new article](http://www.wired.com/opinion/2013/09/why-free-software-is-more-important-now-than-ever-before/)
-on Wired covers much of the same subject matter. After his speech, he
-raffled off a stuffed baby gnu and an “adorable” GNU 30th anniversary
-mug. Chris, owner of ThinkPenguin, won both items! After the speech
-came the reception in which I ate some delicious vegan cupcakes and
-acquired two 3D printed gnu logos that were sitting atop each
-cupcake. After the reception, I briefly went out to a pub with Matt
-Lee and Matthew Garrett. Donald Robertson of the FSF joined in later.
-
-On Sunday, I spent the first couple of hours helping out more with GNU
-FM because Matt Lee was sick. For lunch, I went with a large group to
-a chinese restaurant. Included in the group was the John Eaton, the
-GNU Octave author, and Zak Rogoff, Campaigns Manager at the FSF. It
-was interesting to talk to John about the challenges that he faced and
-continues to face when trying to keep up with Matlab and maintaining
-compatibility even when the Matlab engineers make bad design decisions.
-
-After lunch, I met up with Mark Weaver, one of the GNU Guile
-developers. He helped me write my first patch for Guile: a new REPL
-option called “read-wrapper” that allows external code to hook into
-the part of the REPL that waits for user input. Guile-2D needs this
-functionality in order to create a REPL that plays nice with the game
-event loop. Since the main thread is in an event loop, waiting for
-user input at the REPL prompt would stop the game entirely. To get
-around this, we used the “read-wrapper” option to pass the procedure
-that reads user input into another thread so that Guile-2D’s event
-loop can continue running. We achieved this functionality in less than
-100 lines of code. This hack showed me how great it is to use a
-language with first-class continuations.
-
-tl;dr: The hackathon was a great time. Happy birthday, GNU.
-
-![GNU 30th logo](/images/gnu30.jpg)