Fablab Factory is op zoek naar studenten & freelancers!

Wil je graag deel uitmaken van ons team, en staan er in de onderstaande lijst van projecten één of meerdere die je interesseren? Dit is mogelijk als student tijdens de zomervakanties, of op vaste basis tijdens het jaar.

Ben je afgestudeerd en/of heb je een stevige vaardigheden in softwareontwikkeling (backend, frontend of computationele geometrie) aarzel dan niet om contact met ons op te nemen. Wij zijn altijd op zoek naar dergelijke profielen!

Neem contact met ons op via de onderstaand formulier en geef aan waarin je geïnteresseerd bent. Een portfolio is altijd welkom!

Onze missie

We willen iedereen de kans bieden om een maker te worden - uitgerust met de nodige competenties in STEAM (Science, Technology, Engineering, Arts & Mathematics) en CT (Computational Thinking).

Activiteiten

Fablab Factory werd opgericht in 2015, aanvankelijk met de ambitie om scholen en andere organisaties te voorzien van de infrastructuur, knowhow en training die nodig is om een fablab te starten. Vanaf 2019 hadden we ook een aanbod dat specifiek gericht was op de context van bibliotheken, FabLib is geboren! Ook in 2019 zijn we begonnen met de ontwikkeling van een geavanceerd digitaal leerplatform - Leren, maken en delen, dat eind 2020 in bèta werd gelanceerd. Hiermee is FabLab Factory goed op weg om een software EdTech (Educational Technology) bedrijf te worden. Herfst 2021 lanceren we een STEAM-pakket voor het onderwijs. 

Leren Maken Delen

Als je surft naar lerenmakeshare.iokan je daar als gast inloggen.

Het doel van dit LMS is om iedereen, jong en oud, de kans te geven om makerscompetenties te verwerven. Daartoe rust het op 3 pijlers: Leren, Maken en Delen. In de volgende paragrafen gaan we hier verder op in. 

Het ontwikkelde lesmateriaal is momenteel gericht op jongeren tussen 10 en 14 jaar, maar het is natuurlijk de bedoeling dit bereik volledig uit te breiden.

Belangrijk is dat dit LMS tot eind 2021 in bèta is en zal blijven.

Software projecten:

De ingebouwde WYSIWYG-editor in Moodle gebruikt verouderde technologie (letterlijk). Het is momenteel onmogelijk om een volledig eigen editor te implementeren, net als het bouwen van een eigen LMS. Dus moeten we de bestaande editor verbeteren. Dit project is gefaseerd.

1. FASE I

De eerste fase van dit project is het opruimen van de editor. In het bijzonder:

  • Onnodige plugins verwijderen
  • Toevoeging van een "html cleaner + formatter" die de inhoud in realtime opmaakt volgens onze richtlijnen. Het is belangrijk dat alle componenten de juiste classes bevatten, zodat onze CSS zijn werk kan doen. Ook moeten vreemde constructies verwijderd/aangepast worden.
  • Verplaats indien nodig ingevoegde afbeeldingen naar onze eigen bestandsserver, zodat de vertaalserver zijn werk kan doen.

2. FASE II

Op dit punt zou de editor al goede, schone html moeten draaien, maar hij is dus nog niet bruikbaar. In deze fase wordt UX aangepakt door de editor om te vormen tot een blok-gebaseerde editor. Concreet zal de editor in real time aangeven welke componenten je kunt toevoegen. De enige manier om zo'n component toe te voegen is door op een knop te drukken en een pop-up in te vullen.

Vereisten

  • PHP, Javascript

Dit project gaat over het share-gedeelte van Learn Make Share. Meer specifiek zal het een (uitgeklede) Mahara-instance zijn. Het moet niet alleen geïntegreerd worden met Moodle, maar ook met onze ID provider en onze vertaalserver. Er moet gekeken worden naar de editor (kan een eigen project worden) om het zo eenvoudig mogelijk te maken om je eigen portfolio te bouwen.

Vereisten

  • PHP, Javascript
  • Moet in staat zijn om zelfstandig te werken op basis van documentatie

Gerelateerd aan Voorstel DESIGN4: UI/UX E-Portfolio

In deze fase zal de backend van de 3DSlicer aangepakt worden. Het zal verbonden worden met onze API servers als een oauth2 client (net als de SVG editor) zodat, bijvoorbeeld, de volgende dingen mogelijk worden:

  • Afschermingsopties gebaseerd op badges
  • Lijst van beschikbare machines
  • Maak onmiddellijk gcode beschikbaar op de persoonlijke schijf en machines, op voorwaarde dat u verbonden bent met het lokale netwerk.

Vereisten

  • Javascript, ...
  • Webontwikkeling in het algemeen

Elke Makercart zal uiteindelijk worden uitgerust met een IoT-apparaat om onder andere de machines te monitoren. Op dit moment synchroniseert dit apparaat continu met een (soort) publieke Drive-map en biedt de bestanden aan onze machines aan. Op termijn zal dit natuurlijk niet voldoende zijn. Dit kan een groot project worden, dus we werken in fases:

1. FASE I

De eerste fase zal zijn om deze apparaten te verbinden met onze API-servers. Meer specifiek zal de authenticatie gebeuren via een machine-to-machine geheim. Het IoT-apparaat kan dan bijvoorbeeld een websocket openhouden met een specifiek eindpunt of om de zoveel tijd een poll uitvoeren.

Het IoT-apparaat zal de status van de machines en het gebruik moeten publiceren naar een soort logging-eindpunt. Gebruikers met de juiste permissies kunnen deze informatie dan opvragen.

Merk op dat de machine niet met persoonlijke informatie werkt. Daarvoor is een eenvoudig geheim van machine tot machine niet veilig genoeg.

2. FASE II

Na de tweede fase zal het ook mogelijk zijn rechtstreeks met de machines te communiceren, op voorwaarde dat u daartoe toestemming hebt (bijvoorbeeld op basis van badges) en dat u op het lokale netwerk bent aangesloten.

Daarvoor zal het apparaat een relatief kleine HTTP-server moeten draaien. Nu hebben we wel te maken met persoonsgegevens, dus de externe API-server zal hier ook een belangrijke rol spelen op het gebied van authenticatie. Meer bepaald zal de authenticatie gebeuren met een gedeeltelijk geautomatiseerde versie van de OpenID Connect device flow. Er zal dus ook een aangepaste client-side javascript module moeten worden ontwikkeld om deze authenticatie te begeleiden.

Enkele voorbeelden van zaken die na fase II mogelijk moeten zijn:

  • Laad in de SVG-editor een scan van lasersnijders die een camera bevatten (zoals de Beambox)
  • Stuur onmiddellijk bestanden van de browser (SVG-editor, 3DSlicer, ...) naar de machines.
  • In plaats van te werken met een publieke schijf kunnen we nu een 'persoonlijke schijf' koppelen. Wanneer u G-code genereert, zal dat bestand automatisch op die schijf terechtkomen.

Vereisten

  • Goede behandeling van Linux-gerelateerde kwesties
  • Javascript, Typescript, ...
  • Basiskennis van API-ontwerp, OpenID Connect (of Oauth2), beveiliging, ...

Met de SVG-editor willen we ook machinecode kunnen genereren voor borduurmachines. Typische bestandsformaten zijn .pes en .dst

Het genereren van machinecode op basis van een .svg-bestand wordt serverside afgehandeld.

Enkele van de functies die we willen implementeren:

  • Geef voor elke vector (of groep van vectoren) aan met welke steek hij moet worden uitgevoerd.
  • omsloten vlakken (2D-vullingen) te vullen met specifieke vulpatronen volgens een bepaalde oriëntatie.
  • Conversie van een bitmap naar een kruissteekpatroon (b.v. HaftiX).

Vereisten

  • computationele meetkunde (lineaire algebra/metrologie)
  • Python

Wanneer bitmap-afbeeldingen worden gebruikt voor weergave op fysieke media via digitale fabricage, moeten zij eerst worden omgezet in een zogenaamd rasterpatroon. Voor dit doel bestaan verschillende rasteralgoritmen:

  • geordend dithering raster
  • foutdiffusie raster (Stucki, Floyd-Steinberg, Jarvis)
  • Kleur en Zwart/Wit

Het genereren van rasterafbeeldingen wordt serverside afgehandeld. Het is de bedoeling om verschillende algoritmen voor lasersnijders te implementeren en verder te optimaliseren.

Vereisten

  • beeldverwerking (bvb openCV)
  • Python

Ontwerp projecten (+ implementatie):

De ingebouwde WYSIWYG-editor in Moodle gebruikt verouderde technologie (letterlijk). Het is momenteel onmogelijk om een volledig eigen editor te implementeren, net als het bouwen van een eigen LMS. Dus moeten we de bestaande editor verbeteren. Dit project is gefaseerd.

1. FASE I

De eerste fase in dit project is het opruimen van de editor. In het bijzonder:

  • Overbodige plugins verwijderen
  • Toevoegen van een "html cleaner + formatter" die de inhoud in real time opmaakt volgens onze richtlijnen. Belangrijk is dat alle componenten de juiste classes bevatten, zodat onze CSS hun werk kunnen doen. Ook moeten vreemde constructies worden verwijderd/aangepast.
  • Verplaats indien nodig ingevoegde afbeeldingen naar onze eigen bestandsserver, zodat de vertaalserver zijn werk kan doen.

2. FASE II

Op dit punt zou de editor al goede, schone html moeten produceren, maar hij is dus nog niet bruikbaar. In deze fase wordt UX aangepakt door de editor om te vormen tot een blok-gebaseerde editor. Concreet zal de editor in real time aangeven welke componenten je kunt toevoegen. De enige manier om dan zo'n component toe te voegen is door op een knop te drukken en een pop-up in te vullen.

Vereisten

  • PHP, Javascript

De eerste fase is het restylen van de 3DSlicer naar onze huisstijl. De restyling moet op zo'n manier gebeuren dat we nog steeds met relatief gemak kunnen "cherrypicken" uit de hoofd ontwikkel repository.

Vereisten

  • Javascript, ...
  • Webontwikkeling in het algemeen

Verder werken aan het huidige ontwerp, uitbreidingen en extra functies toevoegen. Pen-touch mogelijk maken van deze applicatie voor tablets.

Vereisten

  • Javascript, ...
  • Webontwikkeling in het algemeen

Gebruikers van het LMS zullen ook in staat zijn een E-portfolio op te bouwen. Hiervoor laten we ons inspireren door verschillende platforms, zoals Instructables en thingiverse Misschien wordt de achterkant van het systeem gebaseerd op Mahara.

Vereisten

  • Javascript, ...
  • Webontwikkeling in het algemeen

In verband met voorstel SOFTWARE2: Deel instellen

Ben jij de persoon die we zoeken?