{"id":395,"date":"2022-02-08T10:13:31","date_gmt":"2022-02-08T09:13:31","guid":{"rendered":"https:\/\/marcgeelen.nl\/?page_id=395"},"modified":"2023-05-10T14:25:07","modified_gmt":"2023-05-10T13:25:07","slug":"software-ontwikkeling","status":"publish","type":"page","link":"https:\/\/marcgeelen.nl\/index.php\/software-ontwikkeling\/","title":{"rendered":"Software ontwikkeling"},"content":{"rendered":"\n<p class=\"has-text-align-center wp-block-paragraph\">Talen. Applicaties. Release train<\/p>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-columns alignfull has-1-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-equal-layout has-default-gap has-vertical-unset\" id=\"wp-block-themeisle-blocks-advanced-columns-8f8ad5ed\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-20e045c8\">\n<h3 id=\"wp-block-themeisle-blocks-advanced-heading-75dbe40d\" class=\"wp-block-themeisle-blocks-advanced-heading wp-block-themeisle-blocks-advanced-heading-75dbe40d\">TALEN <\/h3>\n\n\n\n<span id=\"wp-block-themeisle-blocks-advanced-heading-8b53ebda\" class=\"wp-block-themeisle-blocks-advanced-heading wp-block-themeisle-blocks-advanced-heading-8b53ebda\">Naast verschillende talen om met mensen te kunnen communiceren, beheers ik een aantal talen voor de ontwikkeling van software<\/span>\n<\/div>\n<\/div><\/div>\n\n\n\n<section class=\"wp-block-themeisle-blocks-advanced-columns alignfull has-1-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-equal-layout has-nogap-gap has-vertical-flex-start\" id=\"wp-block-themeisle-blocks-advanced-columns-0a508e8d\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-c5ce68ad\">\n<section class=\"wp-block-themeisle-blocks-advanced-columns has-3-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-collapsedRows-layout has-nogap-gap has-vertical-flex-start\" id=\"wp-block-themeisle-blocks-advanced-columns-f65eb702\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-8ff5169c\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"column-title\">C#<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">C# is mijn favoriet. Gestart met versie 1.0 in 2002. De laatste jaren vooral veel met dotnetcore. Ook op Linux. API&#8217;s, desktop apps. Apps voor integratie.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-51f4f5b7\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"column-title\"><\/h3>\n\n\n\n<p class=\"has-text-align-left wp-block-paragraph\"><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-92a46e8b\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"column-title\">HTML\/CSS\/JS<\/h3>\n\n\n\n<p class=\"has-text-align-left wp-block-paragraph\">Vooral voor web-development. JS beperkt ik tot het minimum. <\/p>\n<\/div>\n<\/div><\/section>\n<\/div>\n<\/div><\/section>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-columns alignfull has-1-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-equal-layout has-default-gap has-vertical-unset\" id=\"wp-block-themeisle-blocks-advanced-columns-b49f41c4\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-fb1a58b4\">\n<h3 id=\"wp-block-themeisle-blocks-advanced-heading-e5fe65a4\" class=\"wp-block-themeisle-blocks-advanced-heading wp-block-themeisle-blocks-advanced-heading-e5fe65a4\">Applicaties<\/h3>\n\n\n\n<span id=\"wp-block-themeisle-blocks-advanced-heading-b1a733d6\" class=\"wp-block-themeisle-blocks-advanced-heading wp-block-themeisle-blocks-advanced-heading-b1a733d6\">Een taal kan worden gebruikt voor verschillende types applicaties.<\/span>\n<\/div>\n<\/div><\/div>\n\n\n\n<section class=\"wp-block-themeisle-blocks-advanced-columns alignfull has-1-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-equal-layout has-nogap-gap has-vertical-flex-start\" id=\"wp-block-themeisle-blocks-advanced-columns-268d7337\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-538dfa15\">\n<section class=\"wp-block-themeisle-blocks-advanced-columns has-3-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-collapsedRows-layout has-nogap-gap has-vertical-flex-start\" id=\"wp-block-themeisle-blocks-advanced-columns-80c9ef82\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-318fcc76\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"column-title\">API<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Met stip op 1. API&#8217;s zijn mijn ding. Zowel voor webdevelopment als voor integratietoepassingen.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-78f620cb\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"column-title\">INtegratie<\/h3>\n\n\n\n<p class=\"has-text-align-left wp-block-paragraph\">Veelal gebaseerd op webapp technieken. De trigger kan een api call zijn, maar ook een timer voor het starten van een job of een bericht op een queue. Transformatie, mapping en het toepassen van businessrules zijn kernbegrippen. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Integreren is vooral praten met mensen en afdelingen.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-560ba3c9\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"column-title\">Webapp<\/h3>\n\n\n\n<p class=\"has-text-align-left wp-block-paragraph\">Webapps maak ik vooral voor &#8216;intern gebruik&#8217;. Voor large scale apps doe ik de architectuur en wellicht een deel van de API.<\/p>\n<\/div>\n<\/div><\/section>\n<\/div>\n<\/div><\/section>\n\n\n\n<section class=\"wp-block-themeisle-blocks-advanced-columns alignfull has-1-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-equal-layout has-nogap-gap has-vertical-flex-start\" id=\"wp-block-themeisle-blocks-advanced-columns-b511ad70\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-12ba5a9f\">\n<section class=\"wp-block-themeisle-blocks-advanced-columns has-3-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-collapsedRows-layout has-nogap-gap has-vertical-flex-start\" id=\"wp-block-themeisle-blocks-advanced-columns-d21f91c5\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-1910f6ab\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"desktop\">Desktop<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">WPF is een krachtig platform voor het maken van Windows Desktop Applicaties. Het lijkt een beetje op webdevelopment voor de desktop. WPF heb ik vooral gebruikt voor maken van apps waarbij buizen worden gescanned (barcode, QR, etc) en productiebanden worden aangestuurd. Maar ook voor de generatie van busroutes.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-42c46bf4\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"column-title\">Message handling<\/h3>\n\n\n\n<p class=\"has-text-align-left wp-block-paragraph\">High volume message handling. SMS, paging, financiele transacties. Ook relevant voor API&#8217;s in combinatie met microservices.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-84641b21\">\n<h3 class=\"wp-block-heading has-text-align-left\" id=\"column-title\">Document generation<\/h3>\n\n\n\n<p class=\"has-text-align-left wp-block-paragraph\">Document generatie heeft veel aspecten van integratiesoftware omdat data uit verschillende bronnen wordt samengevoegd. Tevens lijkt het op webdevelopment omdat de layout belangrijk is.<\/p>\n<\/div>\n<\/div><\/section>\n<\/div>\n<\/div><\/section>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-columns alignfull has-1-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-equal-layout has-default-gap has-vertical-unset\" id=\"wp-block-themeisle-blocks-advanced-columns-31a3e977\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-c796b60e\">\n<h3 id=\"wp-block-themeisle-blocks-advanced-heading-4928024c\" class=\"wp-block-themeisle-blocks-advanced-heading wp-block-themeisle-blocks-advanced-heading-4928024c\">REleasetrain (clickbait) \/ Ontwikkelstraat<\/h3>\n\n\n\n<span id=\"wp-block-themeisle-blocks-advanced-heading-b955abf0\" class=\"wp-block-themeisle-blocks-advanced-heading wp-block-themeisle-blocks-advanced-heading-b955abf0\">Release management begint bij traceerbare requirements. <br>CI\/CD is maar een klein deel van een beheersbare release cycle<\/span>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-columns has-5-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-equal-layout has-default-gap has-vertical-unset\" id=\"wp-block-themeisle-blocks-advanced-columns-830109c7\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-b803afe3\">\n<h2 class=\"wp-block-heading\" id=\"requirements\">Requirements<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Jira. Userstories. Archi. Enterprise Architect. Visio. In de release notes wil je een referentie kunnen maken naar de requirements<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-73cad150\">\n<h2 class=\"wp-block-heading\" id=\"development\">Development<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bitbucket. Git. SourceTree.  Visual Studio (Code). De code kan worden gekoppeld aan de requirements.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-b22a19b7\">\n<h2 class=\"wp-block-heading\" id=\"release\">Test<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Postman. Testable requirements. OTAP. Automated tests.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Testen is een integraal onderdeel van development<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-53282048\">\n<h2 class=\"wp-block-heading\" id=\"release\">release<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">DevOps. Jenkins. Bamboo. SSH. Bash<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-themeisle-blocks-advanced-column\" id=\"wp-block-themeisle-blocks-advanced-column-870be3c8\">\n<h2 class=\"wp-block-heading\" id=\"run\">RUN<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Windows. Linux. Docker.<\/p>\n<\/div>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Talen. Applicaties. Release train<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_mi_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","_themeisle_gutenberg_block_has_review":false,"_ti_tpc_template_sync":false,"_ti_tpc_template_id":"","footnotes":""},"class_list":["post-395","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/marcgeelen.nl\/index.php\/wp-json\/wp\/v2\/pages\/395","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/marcgeelen.nl\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/marcgeelen.nl\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/marcgeelen.nl\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/marcgeelen.nl\/index.php\/wp-json\/wp\/v2\/comments?post=395"}],"version-history":[{"count":3,"href":"https:\/\/marcgeelen.nl\/index.php\/wp-json\/wp\/v2\/pages\/395\/revisions"}],"predecessor-version":[{"id":438,"href":"https:\/\/marcgeelen.nl\/index.php\/wp-json\/wp\/v2\/pages\/395\/revisions\/438"}],"wp:attachment":[{"href":"https:\/\/marcgeelen.nl\/index.php\/wp-json\/wp\/v2\/media?parent=395"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}