Category Archives: Computable

Open Source Software, zuiver eigenbelang

Gratis software, developers die software weggeven en die software voor mij onderhouden? Een economie van het delen, altruïsme? Ik geloof er niets van. Alles kost geld, ook software. Developers moeten toch ook kunnen leven?  Overal moet voor betaald worden, alleen de zon gaat voor niets op.

Al jaren staat de software industrie gelijk aan het snelle verdienen, het grote geld. Waarom zou iemand software weggeven en er niets voor terug vragen? Waarom zou ik dergelijke software willen gebruiken? Waarom werken grote bedrijven als HP, IBM, Intel en Red Hat daaraan mee? Vast niet om er slechter van te worden. Deze bedrijven willen immers geld verdienen. Er is vast een catch.

De catch

foksuk_rrs_scriptKlopt, er is een catch. De motivatie om aan open source software te werken is zuiver eigenbelang. Bedrijven doen dat om geld te verdienen. Developers hebben de software zelf nodig of willen bekendheid te verkrijgen. Aha.. zult u denken, dus dat is de catch. Ja dat klopt, dat is de catch. De motivatie voor developers en bedrijven is om er beter van de worden. Iedereen met bedenkingen over open source software heeft toch gelijk. Maar er is nog een catch, eigen belang als motivatie is eigenlijk best prima.

De motivatie

Natuurlijk is het allemaal niet zo slecht als het klinkt. Bedrijven en developers werken aan open source software om er beter van te worden, maar ze zijn niet egoistisch, anderen mogen er ook van profiteren. En ja en ook dat gebeurt met de gedachte dat ze er later zelf beter van worden. Maar is dat eigenlijk wel erg?  Waarom zou je er zelf niet beter van mogen worden als anderen er ook wat aan hebben, dat is toch prima?

Zeg nu zelf, als je wil dat mensen iets doen en dat blijven doen, wat is de beste garantie die je kan krijgen? Dat ze ervoor betaald worden, of dat het (ook) in hun eigenbelang is? Het is eigenlijk het verschil tussen intern gemotiveerd zijn, of extern gemotiveerd worden. Interne motivatie is natuurlijk veel beter. Immers, geen betaling, geen software. Het verklaart eveneens waarom open source software developers zo gebrand zijn kwalitatief goede en veilige software te maken. Ze hebben zich persoonlijk verbonden aan de software. Deze persoonlijke verbondenheid is veel lastiger als je daarvoor betaald wordt.

Scratch your own itch

In het begin van het computer tijdperk werkte het immers ook al zo.  Als een computer iets moest doen, dan schreef je daar zelf de software voor, je kon het immers (nog) niet kopen. Maar als iemand anders software bezat die je nodig had, dan was het sneller om dat te mogen gebruiken, dan om het zelf te schrijven. Het delen van software lag daarmee erg voor de hand. Toch was de motivatie om te delen eigen belang, je werd er zelf ook indirect beter van.

Eigenbelang is prima

het-kan-wel-loesjeZo bekeken is de motivatie om mee te werken aan open source software inderdaad eigenbelang. Niet egoistisch zodat we niet delen, maar de inspanning die we leveren, leveren we in eerste instantie voor onszelf. Dit is precies de reden waarom open source software een goede keuze is voor bedrijven en organisaties. Het principe erachter, de motivatie om software te schrijven en te onderhouden komt voort uit eigenbelang. Juist dit feit maakt dat het proces stabiel is. Deze stabiliteit is bij uitstek in het belang voor bedrijven. Lage kosten (ja het gebruik van software is nooit kosteloos) en een stabiel proces om de software te ontwikkelen en te onderhouden is juist in hun belang – en uiteindelijk in ieders belang.

Duurzaam

Heb je zelf behoefte om aan open source software mee te werken, doe het dan vooral voor jezelf, maar deel het resultaat met anderen. Dit gaat ook voor bedrijven op. Bijdragen aan software projecten, of het financieren van ontwikkeling, doe het vooral vanuit eigenbelang en deel het daarna met de wereld. Dit is de beste manier om het gebruik en het ontwikkelen van open source software duurzaam te maken en nuttig te laten zijn voor iedereen.

 

Open Source Software tussen wal en schip bij Architectuur denken

Het is voor bedrijven noodzakelijk om de snelle veranderingen in onze maatschappij te volgen. Consequentie  hiervan is dat zij hun ICT voorzieningen snel aan moeten kunnen passen zonder daarmee consessies te doen aan de beschikbaarheid en veiligheid van systemen en gegevens. Om dit te bereiken worden er afspraken gemaakt over waaraan dergelijke veranderingen moeten voldoen of onder welke condities deze uitgevoerd mogen worden. Deze afspraken, of wel principes, worden architectuur genoemd. Het architectuur denken is heel gebruikelijk bij grote bedrijven en organisaties omdat niemand alleen in staat is deze complexiteit te overzien. De interne IT organisatie, externe leveranciers en dienstverleners hebben zich allen te conformeren aan deze (enterprise) architectuur, het zogenaamde: werken onder architectuur.

Architectuur als middel
Voor wat betreft de (infrastructurele) architectuur kunnen dit afspraken zijn over, gegevens, informatie beveiliging, applicaties, interfaces en de infrastructuur zelf. Zo kunnen bijvoorbeeld het aantal operating systemen of databases beperkt worden. Met dergelijke beperkingen wordt de infrastructuur beter te overzien en de organisatie is daardoor beter in staat het beheer uit te voeren. Ook consequenties van wijzigingen zijn zo beter te overzien. Architectuur is daarmee geen doel op zich, maar heeft tot doel een consistente en veilige ICT te realiseren waarop efficiënt wijzigingen doorgevoerd kunnen worden. De architectuur ontwikkelt zich ook in de tijd en zal kan niet statisch zijn. Enterprise architecten zijn verantwoordelijk voor het naleven van de bestaande architectuur en het ontwikkelen daarvan.

Enterprise architecten
Veel enterprise architecten zijn echter onbekend met Open Source Software en de (detail) mogelijkheden die dit biedt voor de architectuur. Als Linux al een platform binnen de architectuur is (en dat komt steeds vaker voor) dan is het een uitzondering op verschillende vlakken. De meeste organisaties hebben bijvoorbeeld centraal gebruiker beheer ingericht op basis van Microsoft Active Directory. Linux servers worden veelal niet gekoppeld (maar kunnen dat overigens wel). Linux gebruikers worden of lokaal aangelegd, of er wordt een LDAP gebaseerde structuur naast Microsoft Active Directory gebouwd. Deze Linux systemen worden dan meestal gebruikt voor web sites of content management systemen zodat er geen noodzaak is voor eindgebruikers daarop in te loggen. Het wordt als platform toegestaan, maar het is wel een uitzondering. Je zou kunnen stellen dat het geïsoleerd ingezet wordt.

Gemiste kansen
Naar mijn idee past Open Source Software juist heel goed binnen het architectuur denken. Er zijn talloze tools die het naleven van afspraken juist veel makkelijker maken. Er zijn tools waarmee het management van Linux systemen gestandaardiseerd en geautomatiseerd kunnen worden zoals bijvoorbeeld, Red Hat Satelite voor deployment en Puppet voor management. Standaard biedt Linux talloze bouwblokken om systemen te hardenen zoals bijvoorbeeld Secure Shell (SSH) dat encrypted toegang tot systemen kan geven, of Secure Copy (SCP) waarmee bestanden encryped tussen Linux systemen gekopieerd kunnen worden. SSH en SCP kunnen eenvoudig verder beveiligd worden door root acces te weigeren en gebruikers alleen met een RSA of DSA key te laten inloggen. Beiden maken standaard deel uit van ieder Linux installatie. Verder kunnen middels het SUDO mechanisme (sudoers file) root rechten aan users gegeven worden op specifieke commando’s. Wanneer men echt hecht aan sucurity (en dat doen enterprise architecten) dan mogen zeker Security Enhanced Linux (SELinux) en AppArmour niet vergeten worden. Op basis hiervan kunnen de rechten van processen op systemen verder beperkt worden. Als laatste zou ik de CIS Benchmark voor Red Hat systemen willen noemen. Dit is een uitgebreide beschrijving van (mogelijk) te nemen maatregelen die een Red Hat Linux systeem veiliger maken. Van iedere maatregel is beschreven hoe deze geïmplementeerd moet worden, waarom het systeem veiliger wordt en bovenal hoe het gecontroleerd (audit) kan worden.

Een veiliger infrastructuur
De beschreven mogelijkheden zijn maar een greep uit de mogelijkheden die Open Source Software biedt om een IT omgeving veilig en beheersbaar te houden. Bedrijven die al bekend zijn met Linux en Open Source Software kennen deze mogelijkheden ongetwijfeld. Ik zou daarom graag een pleidooi willen houden voor Linux en Open Source Software bij enterprise architecten. Verdiep U in de mogelijkheden en probeer ze toe te (laten) passen. Maak ze in al haar mogelijkheden onderdeel van de (enterprise) architectuur. De organisatie waarvoor u werkt zal u dankbaar zijn.

Dit artikel is ook gepubliceerd op de Computable site op d.d. 29 november 2013

Mag ik uw pen even kopiëren?

ICT professionals houden zich bezig met alles dat digitaal is. De (gevolgen voor de) fysieke wereld vergeten we nog wel eens. Toch staan we aan de vooravond van een revolutie die de digitale- en fysieke wereld dichter tot elkaar brengt. Ik denk overigens wel dat u het leuk zult vinden.

President Obama noemde 3D-printen tijdens de laatste “State of the Union” een veel belovende “jonge” bedrijfstak waarin veel nieuwe banen zijn te verwachten. Ook kan je lezen over medische toepassingen waarbij een schedeldak is geprint en waarin aderen, oren en tanden (kronen) geprint worden. Er zijn commerciële toepassingen van 3D-printen, zoals het printen van een huis en maar ook controversiële zaken zoals het printen van een geweer. Wat is dat toch met dat 3D-printen?

Raketonderdelen

Drie dimensionale voorwerpen printen is niet nieuw. Het stamt al uit de jaren 70, maar werd voornamelijk industrieel en op kleine schaal toegepast. Aanvankelijk werd het  hoofdzakelijk gebruikt voor Rapid Prototyping en nog niet voor Rapid Manufactering. Er was maar een kleine groep mensen (en bedrijven) mee bezig, het was nog te duur. Vanaf 2010 kwam hier verandering in. Er kwamen DIY (Do It Yourself) 3D-printers beschikbaar en mede hierdoor daalde de prijs sterk (deze kwam onder de 1000 euro). Het gevolg was dat er een snel groeiende groep enthousiaste hobbyisten actief werd. En hiermee stimuleerden zij de ontwikkelingen weer. Hoewel deze groep mensen zich vooral richtte op het printen van eenvoudige, veelal plastic voorwerpen, werd ook de industrie opnieuw geprikkeld gezien de medische toepassingen. Blijkbaar zien grote bedrijven nu ook het potentieel van 3D-printen. Zelfs de NASA print tegenwoordig raketonderdelen (middels Selective Laser Melting en Selective Laser Sintering – SLM / SLS). 3D-printen is een techniek waarvan de tijd is gekomen.

Weaponwiki

De grote interesse voor 3D-printen is echter niet zonder controverse. Onlangs kwam er een Amerikaan in het nieuws die een geweer had geprint. Hiermee kon succesvol zes schoten gevuurd worden voordat het geweer van plastic kapot ging (te vinden op Youtube). Het ontwerp van dit geweer (AR-15 Assault Rifle) was nog veel controversiëler, want dit was vrij te downloaden van Weaponwiki. Op deze site konden hobbyisten het ontwerp met elkaar delen en verbeteren. Het idee dat iedereen dit ontwerp kon downloaden en (goedkoop) zelf kon printen maakte dat veel mensen zich hier ongemakkelijk bij voelden. Het printen van een geweer is dan ook verboden (in Amerika tenminste). De site is (inmiddels) niet meer bereikbaar. De betreffende Amerikaan heeft nu een bedrijf gestart en ziet toch nog kansen. Maar er zijn ook zorgen om het intellectuele eigendom (Intellectual Property – IP) van ontwerpen. Er is scanner te verkrijgen waarin voorwerpen gescand kunnen worden die vervolgens geprint kunnen worden. Het behoeft geen uitleg dat de risico’s voor IP groot zijn.

Nucleaire reactor

Naast risico’s brengt 3D-printen ook fantastische mogelijkheden met alleen onze fantasie als beperkende factor. Het ontwerpen van voorwerpen kan nu revolutionair anders. We kunnen voorwerpen printen die we op traditionele wijze onmogelijk kunnen maken, bijvoorbeeld een voorwerp dat “gevangen” zit in een kubus. Zo is er een Belgisch bedrijf dat een kant-en-klare klapstoelen print, inclusief gemonteerde en werkende scharnieren. En met het (digitale) ontwerp in bezit kan iedereen het voorwerp zelf printen. Er zijn tal van DIY 3D-printers te verkrijgen waarmee geïnteresseerden dit ook zelf kunnen doen. Voorbeelden van populaire DYI 3D-printers zijn bijvoorbeeld de RepRap en de Tantillus. De toepassingsgebieden zijn legio, industrieel ontwerpers kunnen de ontwerpen direct printen, wordt er speelgoed, stripfiguren en onderdelen van nucleaire reactors geprint. Zelfs zijn er apparaten waarbij een 3D-printer en een CNC milling (draaibank) gecombineerd worden. Een eerste nederzetting op Mars heeft dan ook meer aan zo’n apparaat dan aan een ruimtevaartuig vol reserve onderdelen.

Copyshop

Maar wat heeft 3D-printen met Open Source Software te maken? De ontwerpen van de DIY printers zijn vaak Open Source (RepRap bijvoorbeeld). De specificaties zijn vrijgegeven onder GNU licentie. Iedereen mag er gebruik van maken (downloaden), maar belangrijker, iedereen kan verbeteringen toevoegen – net zoals dat bij Open Source Software het geval is. De aardigheid is dat de meeste 3D-printers in staat zijn hun eigen onderdelen te printen. Dus heb je eenmaal een kopie 3D-printer voor  iemand gemaakt, dan levert niet alleen een extra printer op, maar ook iemand die zelf 3D-printers kan maken!

De andere invalshoek is nog interessanter. En dat betreft de ontwerpen (designs) zelf. Het is zeer eenvoudig om deze (digitale) ontwerpen te delen met anderen – net als muziek, film en software. Het geeft iedereen de mogelijkheid de ontwerpen te verbeteren en deze verbeteringen wederom te delen. Als mijn stofzuiger kapot gaat, ga ik niet naar de winkel voor een reserve onderdeel, maar ga ik zoeken op internet naar een verbeterde versie van het reserve onderdeel en print ik die zelf. Of wanneer ik geen 3D-printer heb, laat ik die bij de Copyshop printen. Er ontstaat een levendige handel in (digitale) ontwerpen en ook  een enorme markt voor bedrijven de het basis materiaal voor de printers leveren. Ik zie een ontwikkeling waarbij de wetmatigheden van de digitale wereld langzamerhand toepasbaar worden op onze fysieke wereld. De voordelen die Open Source Software ons biedt zijn ook toepasbaar op de fysieke wereld! Ik zie onbegrensde mogelijkheden, onze fantasie is de grens, maar misschien moet ik ook “The People Maker” van Damon Knight nog eens nalezen…

Dit artikel is eveneens verschenen op de site van de Computable op 14 maart 2013.