Soms wil je gewoon van tekst naar beeld. Niet zo moeilijk: je tekent wat op een whiteboard, foto ervan en klaar...
En dan komt onderhoud.
Daarom wil ik images graag vanuit tekst maken. Want bij tekst kan ik eenvoudig versiebeheer toepassen.
Hier mijn best findings en practices.
1 Het whiteboard
Bijna niets is zo flexibel als pen en papier. Behalve het whiteboard! Zeker nu we whiteboards op verschillende formaten gebruiken. Digitaliseren gaat eenvoudig met camscanner (android), of via office lens van microsoft, evernote heeft hier ook goeie functies voor met whiteboard camera opties.

2 Digitaal whiteboard
Digitale whiteboarden, zowel in fysieke vorm, als in puur electornische vorm hebben al weer tal van voor- en nadelen. Bijna iedereen kan werken met een pen, maar veel meer mensen hebben moeite met tekenen met de muis.
Mocht je een tablet convertible pc hebben (of andere touch invoer) dan heb je geluk en werkt dit prima. Aanrader: microsoft whiteboard: werk gezamenlijk, live, flexibel, "oneindig" schaalbaar. Dit heeft zelfs vele voordelen boven een fysiek bord.

3 PlantUML
Plantuml is een prachtig product. Je vind het op https://plantuml.com/
Bij Education Warehouse gebruiken we het vrij intensief, onder andere om het gedrag van microservices visueel te maken op basis van data die we trekken uit de sourcecode. Maar dat is een andere blog, vraag me ernaar!
PlantUML heeft een paar kleine truuks. Je maakt in txt een schema en hij zet het voor je om in een plaatje. Daar is een live server voor. Super!

Let op bij het URL dat ontstaat. Neem dat op in een <src img="..."> heb je een PNG die prima weer te geven is.
En onderhoudbaar!
Heurh?!
Jawel: verander /png/ in de url om naar /uml/ en je komt weer in de pagina van bovengenoemde screenshot. Dus je past zo je image aan, krijgt een nieuwe URL en klaar ben je.
Die URL is trouwens niet meer dan een handig in elkaar geknutselde base64 encoded payload. Niet heel spannend, dus die maak eenvoudig zelf.
4 Ditaa
Ditaa is een ander prachtig systeem, en verplicht je niet tot UML. Wat dan wel weer super handig is, is dat plantuml ditaa ondersteund.

Omdat plantuml dit ondersteund is er direct een live server van.
Zoals gesteld bij "3 PlantUML" bekijk het URL van onderstaande plaatje eens, en knutsel het om, om terug te komen bij de source:
Maar Ditaa is erg afhankelijk van hoe je tekent. Daar is een andere tool heel handig bij: http://asciiflow.com/

Als je de code uit de plantuml /uml/ url gekopieerd hebt, open je asciiflow, importeer je de tekst, past het aan, en exporteert het via je clipboard weer naar plantuml. Generate image en klaar!
5 Graphviz
PlantUML is gebaseerd op graphviz, en daar verwijzen ze ook naar. Je kunt plantuml dus rechtstreeks gebruiken om wederom graphviz te hosten. En met graphviz kun je heel veel dingen maken. Bekijk onderstaande op https://www.graphviz.org/gallery/ voor een hele berg verbazing, en behoefte aan aspirine. Ik heb er in het verleden (voor graphuml) wel hele coole dingen mee gemaakt. Onder andere dependency schema's in een peoplesoft omgeving, met parsen van queries, tabellen, SQR files en crystal reports (shiver)

Dat waren ze. Veel plezier ermee en geniet ervan!
Feedback kun je hieronder kwijt ;) bedank.
