Papers we love: Design patterns: hoe kunnen we een gemaakte keuze evalueren?

15 januari 2017

Design patterns. Iedereen kent het boek en heeft een aantal (favoriete) patterns in zijn of haar  gereedschapskist om toe te passen wanneer nodig. Maar waar wordt de keuze voor een specifiek pattern eigenlijk op gebaseerd? Niet alleen door Gamma et al, maar in bijna iedere verzameling van patterns wordt een stukje context gegeven die kan helpen een keuze te maken. De context is veelal in de vorm “als het lijkt op X, doe dan Y”.
Lees verder >>

Reacties uitgeschakeld voor Papers we love: Design patterns: hoe kunnen we een gemaakte keuze evalueren?

Papers we love: Retroactive datastructures

01 januari 2017

Deze keer wil ik het onderwerp ‘tijd’ aankaarten. Tijd in combinatie met datastructuren om precies te zijn. Het uitgangspunt van de paper van deze maand is dat er verschillende scenario’s zijn waarin niet alleen de huidige status van een datamodel, belangrijk is, maar ook de manier waarop dit tot stand gekomen is. Hierdoor zou het dan mogelijk moeten zijn om retroactief datamutaties door te voeren. Hierover is in 2007 een paper gepubliceerd met de titel Retroactive Data Structures.
Lees verder >>

Reacties uitgeschakeld voor Papers we love: Retroactive datastructures

Papers we love: Automatisch repareren van bugs, hoe doe je dat?

15 december 2016

Bugs. Out-of-bounds errors, integer overflows, divide by zero errors. Wie kent ze niet? Het zijn allemaal bugs met eenzelfde achtergrond en hebben gemeen dat ze nogal eens optreden, zeker in de meer low-level talen. Wat nu als je dit soort fouten automatisch zou kunnen herstellen? Dat is precies de vraag die de auteurs van de deze paper zich stelden. De paper van deze maand heet Automatic error elimination by horizontal code transfer across multiple applications en komt bij MIT CSAIL vandaan.
Lees verder >>

Reacties uitgeschakeld voor Papers we love: Automatisch repareren van bugs, hoe doe je dat?

Papers we love: Reflections on trusting trust: kun je je hard-, en software nog wel vertrouwen?

01 december 2016

Om na de vakantie weer rustig op gang te komen is er deze week korte paper aan de beurt die je waarschijnlijk aan het denken zal zetten. De paper heet Reflections on trusting trust, komt uit 1984 en is geschreven door Ken Thompson. Het oorspronkelijke idee is zelfs iets ouder, maar bij het ontvangen van de Turing Award heeft hij het als speech aan het grote publiek  voorgelegd.
Lees verder >>

Reacties uitgeschakeld voor Papers we love: Reflections on trusting trust: kun je je hard-, en software nog wel vertrouwen?

Papers we love: In Search of an Understandable Consensus Algorithm

15 november 2016

Momenteel zijn gedistribueerde systemen een hot topic. We zien steeds vaker dat dezelfde functionaliteit van applicaties over meerdere machines wordt opgedeeld. Het buzzword “horizontal schaling” gaat hier bijvoorbeeld over. Dit schalen over meerdere machines is relatief eenvoudig wanneer je niet over (gedeelde) state na hoeft te denken. Wanneer een applicatie, laten we hem foo noemen, alleen maar rekentaken uitvoert is het bijvoorbeeld eenvoudig om deze te schalen. Indien de capaciteit van deze applicatie gemaximaliseerd is kun je hier een tweede instantie bij plaatsen, waarna je het werk verdeeld over de twee nodes. Je krijgt dan dus fooA en fooB. Dit zelfde principe is dan ook toe te passen voor beschikbaarheid. Het falen van individuele machines is daarmee geen groot probleem meer.
Lees verder >>

Reacties uitgeschakeld voor Papers we love: In Search of an Understandable Consensus Algorithm

Papers we love: Why Functional Programming Matters

01 november 2016

Functioneel programmeren: het is een terugkerend fenomeen met een fanatieke groep aanhangers. Maar waarom zijn ze altijd zo enthousiast? Wat drijft de aanhangers van dit paradigma al sinds de opkomst hiervan? Met het aandragen van deze paper probeer ik hier een klein beetje licht op te werpen. De paper heet Why Functional Programming Matters en komt uit 1984, al is deze een klein beetje herschreven en gepubliceerd in 1989[3].
Lees verder >>

Reacties uitgeschakeld voor Papers we love: Why Functional Programming Matters

Papers we love: pull-based software development

15 oktober 2016

De paper van deze maand is weer een jonge paper — gepubliceerd in 2013 — en is afkomstig van SERG te Delft. Hij heet “An Exploratory Study of the Pull-based Software Development Model“. Centraal staat de manier van samenwerken die mogelijk gemaakt is door decentrale versie-beheersystemen zoals Git: pull-based development. Dit model, vaak gefacilliteerd door producten als Github, Gitlab of Bitbucket, stelt je in staat een complete eigen kopie te maken van de development repository. Changes aan de code-base kun je dan, eventueel gebundeld, aan de hand van een pull-request weer aanbieden aan de “upstream” eigenaar van het project.
Lees verder >>

Reacties uitgeschakeld voor Papers we love: pull-based software development

Papers we love: statische analyses op code uitvoeren

01 oktober 2016

De paper die ik deze maand in het zonnetje wil zitten is er een uit het jaar 2000. Hij heet “Checking system rules using system-specific, programmer-written compiler extensions” en is te downloaden . Dit paper beschrijft een systeem om eenvoudig en efficiënt statische analyses uit te kunnen voeren van een stuk software. De auteurs stellen dat “meta-level compilation” gebruikt kan worden om op een eenvoudige manier systeem-specifieke regels vast te leggen en als automatisch controlemiddel toe te passen om de kwaliteit van software te kunnen verhogen.
Lees verder >>

Reacties uitgeschakeld voor Papers we love: statische analyses op code uitvoeren

Papers we love: Test coverage

25 september 2016

Test coverage: meer dekking levert geen beter test suite op?
De paper die ik deze mand uit wil lichten is een recente uit 2014. Hij heet ‘Coverage is not strongly correlated with test suite effectiveness [1] en is ook weer vrij beschikbaar. De paper doet, zoals de titel doet vermoeden, een vrij harde claim over de relatie tussen test coverage en kwaliteit van de testsuite. Dat geeft wel te denken: vinden wij, als engineers, dat je kwaliteit kunt afleiden van de hoeveelheid test coverage? Vinden we überhaupt wel dat test coverage een interessante kwaliteits metriek is?
Lees verder >>

Reacties uitgeschakeld voor Papers we love: Test coverage

Papers we love

25 september 2016

Binnen Sogyo hebben we de traditie dat we maandelijks een nieuwsbrief rondsturen. De nieuwsbrief gaat veel over interne feitjes, echter sinds februari 2015 verzorgd Kevin van der Vlist het topic: papers we love. Hij deelt met ons papers die interessant zijn om te lezen en ons kunnen inspireren. De topic is uitgegroeid tot een mooie verzameling die we ook graag hier willen delen. Bij deze de eerste papers we love van februari 2015, er volgen er meerdere.
Lees verder >>

Reacties uitgeschakeld voor Papers we love