Skip to content

Instantly share code, notes, and snippets.

View RubenVerborgh's full-sized avatar

Ruben Verborgh RubenVerborgh

View GitHub Profile
@RubenVerborgh
RubenVerborgh / eventually-with-flags.js
Last active December 11, 2015 01:38
Demo implementation of eventually with flags.
(function (chaiModule) {
"use strict";
// NodeJS
if (typeof require === "function" && typeof exports === "object" && typeof module === "object")
module.exports = chaiModule;
// AMD
else if (typeof define === "function" && define.amd)
define(function () { return chaiModule; });
// Other
else

Open-source webslides die iedereen kan delen en aanpassen

Gedaan met lelijke, verwarrende en gesloten PowerPoint-slides. Ik stel voor om lesmateriaal zoals slides open-source te maken en ze in een online samenwerkingsplatform te plaatsen. Dan kunnen studenten comments posten, vragen stellen, en aanpassingen voorstellen. De beste lesgevers leren immers van hun studenten, dus waarom passen we dit principe ook niet toe op slides, hét meestgebruikte lesmateriaal?

Ik stel voor om slides in HTML te maken, de manier waarop ook websites in elkaar zitten. De voordelen van HTML zijn:

  • Slides zijn leesbaar op ieder toestel – ook mobiel.
  • Aangezien HTML focust op de structuur in plaats van op de opmaak, krijg je eenvoudigere slides die er minder verwarrend uitzien.
  • Voeg met gemak YouTube-filmpje, tweets uit Twitter, interactieve webpagina's toe aan slides. Alles wat op het Web staat, kan je gebruiken!
  • Je kan slides bewerken in je favoriete programma.
@RubenVerborgh
RubenVerborgh / parallel.js
Created April 1, 2016 16:24
Connection rate test
const http = require('http');
const baseUrl = 'http://en.wikipedia.org/wiki/', max = 100;
var index = 1;
(function fetchNext() {
if (index < max) {
var url = baseUrl + index++;
console.log(`fetching ${url}`);
request = http.request(url);
@RubenVerborgh
RubenVerborgh / iri-resolution.jsonld
Last active June 29, 2016 12:51
Turtle IRI resolution compliance test
[
{
"@context": {"@base": "http://a/bb/ccc/d;p?q", "urn:ex:p": {"@type": "@id"}},
"@graph": [
{"@id": "urn:ex:s001", "urn:ex:p": "g:h"},
{"@id": "urn:ex:s002", "urn:ex:p": "g"},
{"@id": "urn:ex:s003", "urn:ex:p": "./g"},
{"@id": "urn:ex:s004", "urn:ex:p": "g/"},
{"@id": "urn:ex:s005", "urn:ex:p": "/g"},
{"@id": "urn:ex:s006", "urn:ex:p": "//g"},
@RubenVerborgh
RubenVerborgh / eratosthenes.js
Created July 3, 2016 22:40
Sieve of Eratosthenes with AsyncIterator
var AsyncIterator = require('asynciterator'),
TransformIterator = AsyncIterator.TransformIterator;
function EratosthenesIterator(base) {
TransformIterator.call(this);
base = base || AsyncIterator.range(2);
base.once('data', prime => {
this._push(prime);
this.source = new EratosthenesIterator(base.filter(n => n % prime));
});
#!/bin/bash
$1 $2 || echo -e "$2\terror"
diff --git 1/v1.0.6.css 2/v2.0.6.css
index a813751..bd0c9ab 100644
--- 1/v1.0.6.css
+++ 2/v2.0.6.css
@@ -1,27 +1,42 @@
+/**
+ * Ribbon theme for Shower HTML presentation engine
+ * shower-ribbon v2.0.6, https://github.com/shower/ribbon
+ * @copyright 2010–2016 Vadim Makeev, http://pepelsbey.net/
+ * @license MIT
var i = 2e5, start = new Date();
void setImmediate(function next(i) {
if (i > 0)
setImmediate(next, i - 1);
else
console.log((new Date() - start) / 1000);
}, i);
immediate = require('./lib/index');
var i = 2e7;
immediate(function next(i) {
if (i > 0)
immediate(next, i - 1);
}, i);