Is maatwerk te duur?

An article, posted 7 months ago filed in , & .
Is maatwerk te duur?

Definieer maatwerk: Iets op maat gemaakt, of met de hand gemaakt speciaal voor jou? Of is het iets dat precies past, ongeacht hoe het gemaakt is?

De massa wil geen maatwerk om het maatwerk, de meeste mensen zullen blij zijn met iets dat (heel) goed past. Confectie van een goed merk kan heel goed passen, en wellicht nagenoeg perfect na wat kleine aanpassingen. Écht onderscheidend kan confectie als serieproduct moeilijk zijn, maar het is daarentegen niet alléén het pak dat de man of vrouw maakt. Er zijn nog schoenen, een blouse, de wijze waarop hij of zij het haar draagt. Het is het samenspel.

De samenhang van verschillende onderdelen maakt ook het bedrijf. Maatwerk om het maatwerk is bijna altijd te duur wanneer het helemaal speciaal met de hand gemaakt voor jou. Maar wat verkocht wordt als maatwerk-software in de IT wereld is eigenlijk nooit volledig met de hand gemaakt.

Maar besef ook dat zelfs dat dure atelier niet de stof zelf weeft. Om de lagere budgetten te bedienen h…

Continue reading...

Niet hier uitgevonden

An article, posted more than one year ago filed in , , , , , , & .

Op m’n verzoek om vooral met vragen te komen in mijn kortgeleden begonnen mailinglijst hierbij een antwoord op een lezersvraag:

> “Ben ook wel benieuwd waarom je gekozen hebt voor het hosten van een eigen mailinglist vs de beschikbare saas oplossingen als mailchimp e.d.”

Het bouwen van je eigen mailing-systeem heeft trekken van het “Not invented here”-syndroom. En ja: ik had deze mailing heel erg gemakkelijk met iets als MailChimp kunnen sturen. MailChimp zou bij de omvang van deze mailinglist gratis zijn, leuke statistieken geven, een grafische editor geven en waarschijnlijk was m'n fout waarin iedereen bij de eerste verzending ‘Rick’ werd genoemd niet voorgekomen. "Niet hier uitgevonden" is dus een hele domme reden om iets niet te gebruiken, maar waarom dan toch eigen mailinglist-tool maken?

Foto door [Kelly Sikkema](https://unsplash.com/photos/r077pfFsdaU?utm_source=unsplash&utm_medium=referral&utm_content=creditC…

Continue reading...

Technische schuld

An article, posted almost 2 years ago filed in , , , , , , , & .

De software wereld zit vol met Engelse begrippen. “Technical Debt” is ook zo’n begrip. Maar wat is het?

Een dag geleden zag ik dit bericht waarin Technical Debt werd vergeleken met een continue slecht gestapeld Tetris spel. Een rake vergelijking: als je niet oppast wordt de technische structuur van een applicatie een stapeling op zichzelf oplosbare problemen, maar vormt het in z’n geheel een nagenoeg niet te redden constructie.

Maar waar hebben we het dan over?

Technische schuld wijkt af van financiële schuld. Om financiële schuld te maken moet je geld lenen van een ander. Technische schuld ontstaat doordat er geen tijd wordt gestoken in het goed op orde maken van de techniek. Zo is het een goede gewoonte om kritische zaken en/of zaken die erg foutgevoelig zijn in de applicatie te voorzien van automatische tests (“kan die rol wel/niet bij die gegevens?”, “gaat het ook goed als hier een negatief getal …

Continue reading...

“If something is too complex to understand, it must be wrong”

An article, posted about 3 years ago filed in , , , , & .

While looking for the source of another quote (something along the lines of “If it takes you too long, you're probably doing it wrong”, which I recall having picked up in the Rails community (if you recognize it, please let me know)) I found the following bold statement. We're not talking science here, we're talking software development (actually this guy is talking Java Spring development):

> “If something is too complex to understand, it must be wrong”

from Arjen Poutsma

Some background on this quote can be found on this Xebia website.

Yep, I'm working on a project that seems to have grown way too complex for what it actually should have been.

Happy coding ;)

Continue reading...

Digital rot

An article, posted about 4 years ago filed in , , , , , , , , & .

A few years ago I created, together with some other green-party members, a website: bodemlozeputten.nl. It was a small local website aimed to make voters aware of all the money that was thrown after bad in that region. Like reopening an airport that has never been able to run profitably even in times when the state was still subsidising it with its military presence. Or the amount of money spent by the local municipalities on land, which had by then already created huge debts for several municipalities and still hasn't turned out to be a profitable for neither the citizens, the local economy, nor the municipalities themselves. It was a small website, hosted at the free hosting option that Heroku offered. And a few days ago I received an email that I should've spent more attention to an issue with this website that I kind of neglected. And now the website is showing an error message: "Application error". And while [it is not rea…

Continue reading...

Dan had je maar niet...

An article, posted more than 4 years ago filed in , , , , , , , , & .

Veel programmeurs zijn naast lichtelijk autistisch ook lichtelijk anarchistisch. Informatie moet vrij zijn, code het liefst openbaar, er moet gehackt kunnen worden en alsjeblieft geen centrale autoriteit. Maar hoe om te gaan met dat anarchistische resultaat, het internet?

Deels komt de anarchistische grondhouding van programmeurs voort uit de academische wereld waaruit de IT voortkomt en waarin beeldbepalende technologieën als het internet groot zijn geworden (nadat het door de Amerikaanse defensie was opgezet). Voor de vooruitgang is dit zeer goed geweest, juist dankzij het nagenoeg niet aanwezig zijn van belemmeringen en de continue uitwisseling van ideeën kon het internet onbegrensd groeien tot wat het nu is.

Wat gecreëerd is in een anarchistisch milieu gedraagt zich echter ook anarchistisch en zo zitten we nu met een internet dat op zich wel redelijk veilig kán zijn, maar wel alleen wanneer je om kunt gaan …

Continue reading...

Computer says yes

An article, posted about 6 years ago filed in , , , , , , , , , & .

Al weer 7 jaar geleden liet Robert Dijkgraaf in Zomergasten zien hoe alles weer uit van alles bestaat. Kleine onderdelen die samen weer grotere gehelen vormen die samen weer nog grotere gehelen vormen en zo verder, en terug. Hij illustreerde dit aan de hand van een alweer 30 jaar oud filmpje: powers of 10.

Powers of 10: Van 100 tot 1024 naar 10-14

Op hun eigen schaal lijken alle onderdelen waaruit iets bestaat weer mooie afgeronde dingen. En op een afstand lijken al deze onderdelen ook nog eens perfect samen te hangen.

Integrated Circuit (public domain image)

Ook in ontworpen zaken zie je dergelijke herhaling en samenhang. Een chip lijkt in detail wel een metropool. En de printplaat waarop deze bevestigd zit eveneens. En in een echte metropool bevinden zi…

Continue reading...

On software evolution

A picture, posted more than 6 years ago filed in , , & .
On%20software%20evolution

Continue reading...

Een beter e-mailprogramma voor Mac OS-X

An article, posted more than 6 years ago filed in , , , , , , , & .

De afgelopen tijd heb ik geëxperimenteerd met alternatieve e-mailprogramma's voor mijn Mac. Een alternatief dus voor Apple's eigen Mail.app. Ik stuur zo'n 30-40 mails per dag waarvan een groot deel naar Outlook gebruikers. En hier begon mijn frustratie: zij zien mijn mails niet zoals ze er uit horen te zien, sterker nog: delen vielen soms weg en de gebruikers ontvingen spookbijlagen (meer hierover later). Naast deze, en andere kleine frustraties en gewoon nieuwsgierigheid leidde er toe dat ik actief op zoek ging naar het beste e-mailprogramma.

Tijdens deze zoektocht heb ik mijzelf verplicht tot het daadwerkelijk gebruiken van de e-mailprogramma's in 'productie'. Dat was gelukkig niet zo lastig meer zoals het vroeger ooit was. Alle mail staat immers tegenwoordig op IMAP servers, en wordt niet langer 'definitief' gedownload vanaf (POP) servers (een Exchange-server forceer ik overigens actief in IMAP door gebruik te maken va…

Continue reading...

Geen bug maar een foutje

An article, posted almost 7 years ago filed in , , , , , , , , , , , & .

Deze week probeerde ik een bug (een foutje) uit te leggen aan een van mijn klanten:

> “Het probleem is opgelost. Omdat ik weet dat je het op prijs stelt om te weten hoe het zit zal ik het uitleggen: > Om de gegevensuitvraag te versnellen hebben we 2 verschillende caches, dit zo gegroeid, een tijdelijke en een langdurige. De fout zat ‘m in het feit dat de langdurige cache niet werd bijgewerkt omdat de tijdelijke cache aangaf dat er niets veranderd was, terwijl in het echt wel iets veranderd was. De langdurige cache, waarvan we gebruik maken tijdens het sorteren werd dus niet bijgewerkt. Aangezien de kortdurende cache eigenlijk overbodig is geworden toen we de langdurige hebben gebouwd, heb ik deze er tussenuitgehaald.”

‘Verrassend’ genoeg kwam dat niet over. Toen hetzelfde verhaaltje opnieuw getypt, maar dan met net iets andere acteurs:

> “Het probleem is opgelost. Omdat ik weet dat je het op prijs stelt om te weten hoe het zit zal ik het uitleggen. > Omdat Jan nogal tra…

Continue reading...

Viral software

An article, posted about 7 years ago filed in , , , , , , , , , , , & .

When you are in the business of creating software you'll have to know that not all software and business models allow for what you've probably done before you were making money in this field, basically copy & pasting & reusing software from all over the web. When you're working professionally you might be confronted with the fact that not all open-source libraries are as free, as in libre (or as in anarchy) as you would like them to be.

(btw I'm not a lawyer, but I do understand language and code)

Richard Stallman; License: Creative Commons Attribution-Share Alike Some rights reserved by jeanbaptisteparis

The famous GPL requires you to license your derivative works with the same GPL as well. Not only your modifications to the library you are using need to be open-sourced, but also the code that you wrote using that other project as a library without which your project wouldn't work. …

Continue reading...

Continue reading...

Usage creep

Al zoekende naar een goede illustratie van wat ‘Usage creep’ nu is kwam ik op usage creep bij Tasers. Tasers zijn geen pistolen, maar ook geen pepperspray. Waar Tasers eerst bedoeld waren als alternatief voor pistolen, met als voordeel een verminderd risico is op een dodelijke afloop, werden Tasers steeds vaker gebruikt in situaties waar Pepperspray afdoende zou zijn geweest. Met als pijnlijke bijkomstigheid dat tasers niet zó onschuldig zijn.

Taser gun

Wanneer nieuwe middelen worden geïntroduceerd om een bepaald doel te bereiken of probleem op te lossen komt het vaak voor dat deze middelen ook gebruikt worden voor andere zaken. Andere zaken die dan (ineens) binnen bereik liggen. Een arrestatie waarbij je als politieagent toch fysieke inspanning bij nodig hebt wordt ineens gemakkelijk met behulp van een Ta…

Continue reading...

[Project] Introducing PortableRails3

An article, posted more than 7 years ago filed in , , , , , , , & .

The InstantRails project is outdated and contains just too much IMHO ( Apache, PHP, who needs that when searching for Rails?). Other options to get Rails running require an installer (RailsInstaller or RubyInstaller )… and in some environments ( limited access accounts ) installing is not an option. And in yet other environments, you'd, well I'd, rather have a command line option, instead of an in-your-face installer that requires end-users to press 'next', 'next', 'next'…So that's why I created Portable Rails 3. It's name was 'inspired' (it's a boring name, I know) by the thoughtfully named Portable Git which makes an excelent companion.Installing is as simple as extracting (or cloning) and running start-cmd.batCreditsI didn't do much besides just throwing the binary stuff together. Stuff that went into the mix (I'll update when I feel its necessary):Ruby 1.9.2PDCurses [1]GDBM  [1]OpenSSL [1]readline [1]Zlib  [1]IconV [1]RubyGems 1.7.2 (updated with update –system )R…

Continue reading...

Vele wegen leiden naar Rome...

Om precies te zijn zijn er oneindig veel mogelijke wegen die naar Rome leiden. Maar de weg die we het liefst nemen is de meest optimale. De snelste, de energie zuinigste misschien, of de mooiste, of één waar dit alles enigszins in balans is. Bij softwaresystemen is het niet anders. Er zijn oneindig veel manieren om software te schrijven waarmee een taak ondersteund kan worden. Afhankelijk van de wensen kan dit een zeer technisch hoogwaardige oplossing zijn waarbij alles automatisch gaat, een oplossing die een geweldige gebruikersinterface heeft, of een oplossing waarbij het meeste toch nog handwerk is.In mijn eerdere posts wekte ik misschien de indruk dat ik een tegenstander ben van  technische oplossingen. Dat ben ik niet. Ik geloof echter niet in techniek om de techniek. Spelling automatisch verbeteren, gewoon omdat het 'kan', 100 zoekopties aanbieden omdat dit de eigenschappen zijn die toevallig in de database zitten, dat is techniek om de techniek: gewoon, omdat het kan. Aa…

Continue reading...

murb blog