Developers blog
Software development professionaliseren en optimaliseren is onze missie. Dit brengen we in de praktijk door relevante kennis en ervaring uit het veld te bundelen én te delen. Het is voor een CTO of IT-manager prettig sparren met doorgewinterde allrounders. Met dit Developers blog blijf je op de hoogte van wat écht belangrijk is in dit vak.
Een paar Entity Framework tips
Entity Framework is een populair ORM framework binnen .NET. In dit artikel wil ik een paar dingen benoemen die je mogelijk al wel kent, maar die je in de praktijk kunnen helpen bij het gebruik [...]
Toekomstbestendige .NET software ontwikkeling
Het is misschien één van mijn stokpaardjes, maar dat is vooral ook omdat ik te vaak zie dat teams worstelen met de uitdagingen van vandaag en te weinig naar de toekomst kijken. Robuuste, schaalbare en [...]
OpenTelemetry
OpenTelemetry is een open-source project dat de nieuwe standaard is voor het genereren en verzamelen van telemetriegegevens zoals traces, metrics en logs van je services. OpenTelemetry is al sinds 2019 aan de weg aan het [...]
De 6 pijlers van duurzame software engineering
Duurzame Software Engineering is een opkomende discipline op het snijvlak van klimaatwetenschap, software, hardware, elektriciteitsmarkten en datacenterontwerp. Het doel is om softwaretoepassingen te definiëren, bouwen en draaien op een manier die duurzaam is voor onze [...]
Nieuwe features in C#13
Dit jaar in november komt de nieuwe versie van .NET 9 uit waarin C#13 ondersteund wordt. Deze versie is geen long-term-support versie, er zullen dus teams zijn die wachten tot .NET 10 om hun software [...]
De Europese AI-wet: een nieuw tijdperk voor AI in organisaties
De Europese Unie heeft een grote stap gezet in de regulering van kunstmatige intelligentie (AI) met de invoering van de Europese AI-wet. Deze wet, die in maart 2024 is aangenomen, is de eerste Europese regelgeving [...]
Van Story tot Deployment vanuit P.O. perspectief
Tegenwoordig ben ik Product Owner (P.O.). Vroeger niet, toen was ik ontwikkelaar. Soms helpt dat in mijn huidige vak, maar meestal heb ik er nu niets aan, omdat ik me van mijn team niet met [...]
Moet ik naar .NET 8 upgraden?
In het kort / TL;DR Ja, upgraden is zeer aan te raden. Alleen een product dat binnenkort end-of-life is, zou ik niet meer upgraden. Een upgrade naar .NET 8 zal je gebruikerservaring ten goede komen, [...]
Iets over testen
Een kostbaar en vaak onderschat onderdeel van software ontwikkeling is het (geautomatiseerd) testen daarvan. […]
Haal jij het maximale uit je ontwikkelteam? Zó doe je dat.
Zo zet je de neuzen binnen je ontwikkelteam dezelfde kant op. Een blog van Bergler me een herkenbare uitdaging én een oplossing.
Hierom wil je Dev(Sec)Ops als integraal onderdeel van je ontwikkelproces
Hierom wil je Dev(Sec)Ops als integraal onderdeel van je ontwikkelproces. Een blog van Berlger over effectief software ontwikkelen.
Blazor: een aantrekkelijk alternatief voor traditionele webontwikkeling
Blazor: een aantrekkelijk alternatief voor traditionele webontwikkeling dat de .NET-gemeenschap heeft doen oplichten sinds de eerste release.
Performance, pijler 5: maximaliseer prestaties in de cloud met behulp van het Azure Well-Architected Framework
Performance, pijler 5: maximaliseer prestaties in de cloud met behulp van het Azure Well-Architected Framework
Operational excellence, pijler 4: klaar voor de cloud “Het bereiken van operationele uitmuntendheid met het Azure Well-Architected Framework
Perfect operationeel met 't Azure Well-Architected Framework
Kostenoptimalisatie, pijler 3: zo realiseer je kostenbesparing in de cloud door inzet van het Azure Well-Architected Framework
Kostenoptimalisatie, pijler 3: zo realiseer je kostenbesparing in de cloud door inzet van het Azure Well-Architected Framework
Klaar voor de cloud “Het waarborgen van veiligheid in de Azure-cloud met behulp van het Azure Well-Architected Framework”
Klaar voor de cloud “Het waarborgen van veiligheid in de Azure-cloud met behulp van het Azure Well-Architected Framework”
Reliability pijler 1, klaar voor de cloud: het bouwen van betrouwbare software voor de cloud met behulp van het Azure Well-Architected Framework
Bergler: klaar voor de cloud “Het bouwen van betrouwbare software voor de cloud met behulp van het Azure Well-Architected Framework”.
Container Orchestratie gemakkelijk gemaakt, maar hoe dan?
Docker containers zijn bijna niet meer weg te denken als standalone virtualisatie techniek. Lees het blog van Patrick Bes, Technical Lead Consultant Bergler
Ben jij klaar voor de cloud? Een introductie op de 5 pijlers
In de afgelopen jaren heeft de cloudtechnologie een enorme impact gehad op de manier waarop bedrijven hun IT-infrastructuur beheren en software ontwikkelen.
De six types of working genius: dit wil je als ISV weten over IT-talent
De six types of working genius: dit wil je als ISV weten over IT-talent en zijn zijn állemaal even belangrijk voor je team.
Bergler wenst je een fijne vakantie vól inspiratie en genietmomenten!
Bergler wenst je een fijne vakantie vól inspiratie en genietmomenten! En in het najaar? Dan gaan we met elkaar weer fris en gedreven aan de slag. Tot snel.
‘Bij Bergler zijn ze betrokken, betrouwbaar én communicatief vaardig’, Mark van Heusden, oprichter van Sparkles
‘Bij Bergler zijn ze betrokken, betrouwbaar én communicatief vaardig’, Mark van Heusden, oprichter van Sparkles.
C# Minimal API’s: minimale code voor maximale opbrengst
Met de komst van ASP.NET Core is er een belangrijke nieuwe technologie beschikbaar gekomen: Minimal API’s, een eenvoudigere en efficiëntere manier om met minimale afhankelijkheden en minder ceremonies HTTP API’s te bouwen.
Dit kun je als ISV doen om talent binnen te halen (en te houden)
Dit kun je als ISV doen om talent binnen te halen (en te houden)
Legacy, last of lust? Dit moet elke ISV weten om relevant te zijn en blijven
Legacy, last of lust: dit moet elke ISV weten om relevant te zijn en blijven
Webinar “War on Talent” 16 mei terugkijken
Het vinden en behouden van talentvolle software-ontwikkelaars is een uitdaging waar veel bedrijven in Nederland mee te maken hebben.
Drieluik, deel 3: zó maak je je oplossingen schaalbaar en is groei wél leuk
Drieluik, deel 3: zó maak je oplossingen schaalbaar en is groei wél leuk
Drieluik, deel 2: think big, start small (ook als je heel enthousiast bent)
Sta stil bij het belang van futureproof software ontwikkelen: ook als je heel enthousiast bent.
Drieluik, deel 1: hoe ga jij om met de uitdagingen van organische groei?
Hoe kan ik mijn oplossingen schaalbaar maken? Dat is een vraag die menig ondernemer zich stelt.
Waarom ISV’s een strategie moeten hebben voor vernieuwing van software
Het klinkt wellicht onwaarschijnlijk, maar we komen ze dagelijks tegen: klanten die er ineens achter komen dat ze een ISV zijn, een Independent Software Vendor. Je ziet dan dat ze jarenlang hebben geïnvesteerd in kleine software teams en in verbeteringen en dat is zó gegroeid dat ze bijna van nature een softwarebedrijf geworden zijn. En wanneer daar dan geen goede strategie aan ten grondslag ligt, dan is er serieus werk aan de winkel.
Dit zijn de 10 minimale eisen voor futureproof software ontwikkelen
Futureproof software ontwikkelen doe je door aandacht te hebben voor de techniek, de organisatie én de mensen die in die organisatie werken.
Effectief software ontwikkelen? 5 tips die je morgen toe kunt passen
Wij helpen veel independant software vendors (ISV) om hun software ontwikkeling meer toekomstbestendig te maken. De mate waarin je bedrijf effectief software ontwikkelt, hangt erg af van de fase waarin het bedrijf van de ISV [...]
De trein raast verder, ook zonder jou: zó ga je als ISV van desktop-app naar webapp
De trein raast verder, ook zonder jou: zó ga je als ISV (Independant Software Vendor) van desktop-app naar webapp.
Zó borg je als ISV continuïteit en groei
Graag delen we in dit blog wat we vanuit Bergler registreren in de markt. Uiteraard met praktische tips om als ISV juist te reageren op deze ontwikkelingen.
De Tech Radar
Ken je de Tech Radar al? Deze stellen we jaarlijks samen. Speciaal voor software teams én hun uitdagingen. De focus dit jaar? Future proof software development, talent aantrekken en behouden, klaar voor de cloud en [...]
Modulaire opzet in Blazor Webassembly
Nu Blazor steeds prominenter in het Microsoft landschap terechtkomt, zie ik de eerste teams productie applicaties opzetten in Blazor. Eén van de uitdagingen die je daarbij hebt, is hoe je de nieuwe applicatie structureert, zodat [...]
OWASP 2022: de praktijk
Begin dit jaar is voor het eerst in lange tijd een nieuwe versie van de OWASP top 10 uitgebracht. Cybersecurity behoort een vast agendapunt te zijn voor elke ontwikkelaar en organisaties die betrokken zijn bij het ontwikkelen en onderhouden van software. Het adresseren van bedreigingen is niet alleen een technisch onderwerp maar ook een organisatorisch. Lees verder...
GDPR voor softwaredevelopers
Toegegeven, het is voor de meeste ontwikkelaars niet het favoriete onderwerp en het is ook niet nieuw, tegelijkertijd is basiskennis van GDPR en AVG belangrijk om te voorkomen dat we onszelf in de voet schieten. Dit artikel geeft een samenvatting van ons webinar en we hopen je hiermee op weg te helpen om een basis begrip te hebben van deze belangrijke Europese wetgeving. Lees verder...
“To Manage vs To Lead”
Onlangs werd ik geconfronteerd met de vraag wat het verschil is tussen “managing a team” en “leading a team”. Als Scrum Master van (internationale en remote) teams intrigeert me deze vraag. Het doel van dit artikel is om mijn kennis en ervaring hierover te delen. Lees verder...
.NET 6 Update
Op 9 november 2021 kwam de nieuwe versie van .NET uit. We gaven bij .NET 5 al aan dat Microsoft afscheid neemt van het fullstack framework. Deze .NET 6 release is de eerste long term support versie na dit moment, en daarmee voor een hoop organisaties de eerste serieuze versie om naar te migreren. Lees verder...
Rebase versus (up)merge
Als ik kijk naar de adoptie van Git in de Microsoft Stack dan kan het niet anders dan concluderen dat de meeste bedrijven die ik bezoek inmiddels de overstap hebben gemaakt van TFS flow naar Git-based source control. In die overstap zijn er een hoop basisprincipes van Git die lastig zijn als je vanuit de TFS wereld naar Git kijkt. Ik wilde er graag eentje uitpikken waarvan ik merk dat men er mee worstelt en dat is de functionaliteit van merge versus die van rebase. Lees verder...
gRPC, wat is het en wanneer gebruik je het?
Als je op de hoogte bent van de ontwikkelingen van .NET (Core), dan weet je waarschijnlijk dat Microsoft geen WCF-projecten meer ondersteunt. Tegelijkertijd zijn gRPC projecten toegevoegd aan het portfolio van serviceoplossingen. Maar wat is gRPC, hoe verhoudt deze technologie zich tot OpenAPI of GraphQL en wanneer zou je gRPC inzetten? Op deze vragen wil ik in deze blogpost ingaan. Lees verder...
GitHub actions vs Azure DevOps Pipelines
Nadat Microsoft in 2018 GitHub heeft overgenomen was het even afwachten welke in richting GitHub zou bewegen. Zou het een separate merknaam blijven of zou het geassimileerd worden binnen de bestaande Microsoft portefeuille? Nu na 3 jaar is het veilig om te zeggen dat GitHub als merk blijft bestaan. Lees verder...
Hoe migreer je naar .NET 5
Met de komst van .NET5 en de aankondiging van Microsoft te gaan stoppen met .NET Framework dient zich de vraag aan hoe bestaande .NET Framework applicaties kunnen worden gemigreerd naar het nieuwe .NET5. Dit blog probeert de migratiemogelijkheden te behandelen. Lees verder...
C# 9.0 nieuwe features – Record types (4-4)
In deel 2 van deze serie is al gewezen op init-only setters. Op een eenvoudige manier kun je aangeven dat properties als immutable behandeld moeten worden. Met het nieuwe keyword record krijg je de mogelijkheid om snel en overzichtelijk een complete class immutable te maken. Lees verder...
C# 9.0 nieuwe features – Top-level Statements (3-4)
Elke .NET assembly die uitvoerbaar is, dient een entrypoint te hebben anders heeft de applicatie geen startpunt. Dit startpunt is de welbekende Main methode. Zelfs een simpele console applicatie heeft een Main methode nodig om te kunnen functioneren. Lees verder...
C# 9.0 nieuwe features – Pattern Matching (2-4)
Met de komst van C# versie 9.0 zijn er heel veel waardevolle toevoegingen gedaan aan de programmeertaal. Al eerder behandeld in deze serie is deel 1 “Init Only Setters”, we gaan nu verder met “Pattern Matching”. Lees verder...
C# 9.0 nieuwe features – Init Only Setters (1-4)
Init Only Setters Met de komst van .NET 5 en C# 9.0 zijn er heel veel waardevolle toevoegingen gedaan aan de programmeertaal. In deze Blog serie zullen we inzoomen op een aantal belangrijke nieuwe features.Lees verder...
Bergler Technology Radar 2021
Ondanks dat de wereld door de pandemie sterk is veranderd en er veel tot stilstand is gekomen, gaan de veranderingen op het gebied van softwareontwikkeling onverminderd snel. Lees verder...
Jaarprogramma 2021
We kijken terug op een bewogen 2020. Toen we het competence center programma voor afgelopen jaar samenstelde gingen we uit van gezellige sessies op kantoor en in Houten. Hoe anders is de praktijk gelopen. Gelukkig hebben we afgelopen jaar gezien dat we ook online hele toffe sessies konden organiseren. Lees verder...
Authenticatie in ASP .NET Core 3.1
uthenticatie en autorisatie worden vaak in één adem genoemd en zijn in zekere zin ook onlosmakelijk aan elkaar verbonden. Toch hebben ze ieder hun specifieke verantwoordelijkheid. Met behulp van authenticatie kunnen gebruikers van een webapplicatie zich identificeren om toegang te krijgen tot de applicatie. Lees verder...
Agile werken en denken in relatie tot ISO 27001 (of welke geformaliseerde certificering dan ook)
Als Scrum Master ben ik onlangs betrokken geweest bij het verkrijgen van een ISO 27001 certificering voor mijn eindklant. . Het hebben van een ISO 27001 certificering als organisatie betekent dat het voldoet aan de privacy- en securityrichtlijnen die zijn gedocumenteerd door ISO.
Python, een korte introductie (voor C# ontwikkelaars)
Python is een ontwikkeltaal die al enige tijd sterk in opkomst is. Als ‘T-shaped’ software ontwikkelaar kunnen we hier niet langer om heen. Dit is voor ons ook de aanleiding geweest om eens een blik te werpen op deze taal. In dit artikel willen we een globale introductie geven van Python de ontwikkeltaal en daarnaast de kenmerkende verschillen met C# aanstippen.
Zeven tekenen van rottende software
Hopelijk begin je een software ontwikkeling met een redelijk tot goed idee hoe de toekomstige software er uit moet zien. Een helder beeld hebben van de toekomstige software is belangrijk voor jezelf en voor je team. Als je geluk hebt, overleeft dit beeld het tot de eerste release. Maar na verloop van tijd gebeurt er iets, de software begint langzaam maar zeker te ruiken als een stuk bedorven vlees.
Kan Cloud Native On-Premises zijn?
Nee, dit gaat niet over het On-Premises thuiswerken met behulp van Cloud Diensten in onheilspellende tijden van het Coronavirus. Dit gaat over vraag “kun je Cloud Native zijn met een On Premises serverpark?” Vreemde vraag leek mij. Volgens Wikipedia is Cloud Native een softwareontwikkeling aanpak die maximaal de mogelijkheden van Cloud Computing gebruikt.
Threat Modeling
In het huidige software ontwikkelingslandschap is het steeds sneller opleveren van software een belangrijk issue. Organisaties moeten mee in de DevOps beweging om hun concurrentiepositie te behouden of te verbeteren. Om dit goed en veilig te kunnen doen is het van belang om zo vroeg mogelijk in het ontwikkelproces al feedback te verzamelen, om snel te kunnen bijsturen.
Domain Driven Design (DDD) in gewoon Nederlands
Als Lead Developer ben ik betrokken bij het opmaken van business cases, uitwerken van ideeën en het implementeren van softwareoplossingen. Een steeds vaker terugkomend thema is dat mijn relaties hun applicatie landschap willen moderniseren zonder opnieuw het wiel te willen uitvinden...
Valkuilen in async/await
Het is inmiddels alweer behoorlijk wat jaren geleden dat Microsoft async/await introduceerde in het .NET Framework. Het gebruik van async/await heeft het mogelijk gemaakt om met heel weinig code asynchroon te programmeren.
Stoornissen van teams, impact op de kernwaarden van het Agile gedachtengoed
De Scrum Master van een team houdt zich onder andere bezig met het welzijn en functioneren van het ontwikkelteam. Welke signalen moet je herkennen en waarom zijn deze belangrijk? Mijn ervaring in de rol van [...]
Omgaan met & begeleiden van tegenstellingen in Scrum- en culturele waarden
Agile werkprocessen, in het bijzonder Scrum is tegenwoordig de standaard voor softwareontwikkelteams. Deze aanpak benadrukt menselijke samenwerking en zelfsturing. Zodra de samenstelling van het team bestaat uit leden afkomstig uit verschillende continenten, ontstaat op deze [...]
Webinar 20 augustus 2019: Building Async Apps
Bekijk hier het webinar van het Bergler Competence Center (Building Async Apps). (55 minuten). Abonneer je op ons YouTube-kanaal, dan blijf je altijd op de hoogte! Meer informatie over onze andere evenementen lees je hier.
Progressive Web Apps
Met de opkomst van allerlei verschillende apparaten, is het voor aanbieders van applicaties best een uitdaging om te bepalen welke technologie het beste past bij hun applicatie. Sommige organisaties kiezen voor responsive webapplicaties, veelal gebruik [...]
“Hello Newman…”
De liefhebbers van Seinfeld weten dan direct waar dit over gaat. De postbode Newman en aartsrivaal van Jerry Seinfeld. In dit geval hebben wij het over Newman de Postman add-on. Deze add-on is een CLI [...]
Migratie monoliet naar microservices & IdentityServer4 (deel 1)
Door: Patrick Bes & Chaim Zonnenberg De overstap naar een nieuw software landschap Verouderde software… welke ontwikkelaar heeft er geen ervaring mee? Jarenlang heeft je bedrijf functionaliteit ontwikkeld in dezelfde applicatie. De oorspronkelijke ontwikkelaars van [...]
Te veel keuzes (Communicatie & Collaboratie tools)
Het laatste jaar is het gebruik van Microsoft Teams enorm gestegen. Dit is Microsofts derde poging om voet aan de grond te krijgen op de markt van collaboratie en communicatie tools. Een recent onderzoek van [...]
AKS Kubernetes Dashboard met “alleen lees” rechten
Kubernetes is natuurlijk een super krachtig en mooi container orchestration platform. Ondanks dat de meeste zichzelf respecterende ontwikkelaars zullen claimen alleen nog gebruik te willen maken van de CLI tool kubectl, is voor sommige beginnende- [...]
Gebruik Epic en feature timelines in Azure DevOps
Een product backlog kan al snel onoverzichtelijk worden en is meestal te gedetailleerd om met stakeholders (binnen hoger management) de prognose te bespreken van toekomstige ontwikkeling. Binnen Azure DevOps kun je al een hoop structuur [...]
Vermijd het gebruik van encoding.default
Voor degene onder ons die wel eens te maken hebben met het verwerken van tekst- of csv-bestanden zal het bekend voorkomen: welke encoding moet ik gebruiken om de bestanden juist in te lezen? Als je [...]
Messaging in distributed systems
We zien steeds meer organisaties van monolithische applicaties naar modulaire systemen bewegen. Een uitdaging die binnen dergelijke distributed systemen komt kijken is de manier waarop de modules onderling communiceren. Een veelgebruikte oplossing voor asynchrone communicatie, [...]
Video-impressies Domain Driven Design en (micro)services in de praktijk
Op 19 juni jongstleden organiseerde Bergler de thema-middag Domain Driven Design en (micro)services in de praktijk. We zien de afgelopen jaren steeds meer organisaties in meer of mindere mate agile werken, waarbij continuous integration en [...]
SpecsFor een BDD framework
Soms loop je in je zoektocht naar een framework of, zoals in dit geval bij toeval, tegen een framework aan waarvan je denkt: Ja, dit is leuk en handig om te gebruiken in mijn ontwikkel [...]
TechSummit Supply Chain Hacks
Persoonlijk zie ik de beweging naar een meer open source cultuur in software development als een positieve. Daarin sta ik zeker niet alleen en ik weet dat veel collega's hier een zelfde positief gevoel bij [...]
Misbruik DRY niet
Er zijn van die principes die er bij menig ontwikkelaar al vroeg in zijn carrière ingestampt worden. “Don’t repeat yourself” is misschien wel een van de bekendste. […]
Maak je eigen Business Rule Engine
Op het net zijn over dit onderwerp vele artikelen te vinden. Vaak beschrijven ze een onderdeel van een pattern of is de oplossing geschikt in een omgeving waar meer dan ervaren developers actief zijn. [...]
.NET Renaissance
Recentelijk wordt er binnen het .NET framework regelmatig gesproken over een .NET renaissance. Wat is nu eigenlijk een renaissance? In de letterlijk zin staat het voor een wedergeboorte, dus de terugkeer van iets bestaands. [...]
Angular ontwikkeling met Visual Studio Code
Angular is een framework om single page applications op te zetten waarin testbaarheid en separation of concern als basis voor de ontwikkeling zijn genomen. […]
Video: Test Driven Development
Bekijk hieronder het hele seminar van het Bergler Competence Center over sneller en beter software ontwikkelen met Test-Driven-Development (44 minuten). […]
Internal classes (SimpleInjector)
Omdat we onze applicaties modulair opzetten komt het nogal eens voor dat een ontwikkelaar gebruik maakt van modules van een andere ontwikkelaar. De meeste voorbeelden van IOC-containers initialiseren de container vanuit de client applicatie, met [...]
Hoe ‘deferred execution’ je het leven zuur kan maken
Wanneer je gebruik maakt van Linq, is het belangrijk om het verschil te weten tussen deferred execution en immediate execution. Onoplettend gebruik van deferred execution kan je leven behoorlijk zuur maken. Zeker als er IQueryables [...]
WPF Databinding – deel 1
WPF Databinding – deel 1 Dit artikel is het eerste artikel in een reeks korte artikelen waarin we gaan kijken naar databinding binnen het Microsoft.NET WPF framework. Dit eerste artikel zal gaan over het ‘WAT’ [...]
Inversion of control, Dependency Injection en Service Locator pattern
In deel 1 en 2 van deze serie hebben we gekeken naar handmatige dependency injection en naar het service locator pattern. We hebben hierbij gezien dat we code geschikt kunnen maken voor automatische testen, maar [...]
Inversion of control, Dependency Injection en Service Locator pattern (deel 2)
Het service locator pattern In deel 1 van deze serie hebben we gekeken hoe we door handmatige dependency injection de bovenstaande code beter kunnen laten voldoen aan de SOLID principes en beter kunnen testen. We [...]
Inversion of control, Dependency Injection en Service Locator pattern (deel 1)
Handmatige dependency injection Het Dependency Inversion Principle zegt dat een bepaalde class geen afhankelijkheid mag hebben van lagergelegen classes in de applicatie: In het bovenstaande voorbeeld zie je dat de Presentation class afhankelijk is van [...]
Gemakkelijk INotifyPropertyChanged implementeren met Generics
Het is een veelvuldig onderschatte feature en vaak wordt er eenvoudig overheen gekeken. Het INotifyPropertyChanged event. Bruikbaar? Jazeker. Hiermee zou je zo maar ineens property history kunnen toevoegen, en daarmee undo en redo. Logging kan [...]
Plugin collecties met Microsoft Extensibility Framework
Veel applicaties beginnen klein, maar groeien in de loop van de tijd uit tot grote en complexe systemen. Wanneer die systemen niet uit heldere bouwstenen ontstaan, kom je al snel in een situatie waar een [...]
Separation of concern door het onion model
Het goed structureren van je applicatie is van groot belang om te zorgen dat een applicatie aanpasbaar blijft naarmate de applicatie groeit. Een veel gebruikte structuur is een meer-lagen structuur waarbij de applicatie wordt opgesplitst [...]
Vijf tips die bijdragen aan effectieve softwareontwikkeling
Veel organisaties zijn de afgelopen jaren met wisselend succes overgestapt op vormen van “agile” softwareontwikkeling. De balans opmakend, zie je dat een hoop organisaties worstelen om ook echt effectiever en slagvaardiger te worden. En toegegeven, [...]
Seperation of concern in een MVC applicatie (#2)
Dit artikel is een vervolg op een introductie artikel over MVC. In dit artikel ben ik ingegaan op de opzet van een standaard MVC-applicatie. […]
Seperation of concern in een MVC applicatie (#1)
De Microsoft implementatie van MVC voor webapplicaties is al weer een tijdje in de lucht en er zullen weinig organisaties zijn die momenteel nog nieuwe ontwikkelingen opstarten in de voorloper (webforms) van MVC. Het principe [...]
Gebruik van ‘worker roles’ in Azure
Als je weleens gebruik maakt van worker roles in Azure dan weet je dat het nogal een hoofdpijn geeft om die dingen te deployen. Een deployment tijd van 10 tot 20 minuten is niet ongewoon [...]
Inversion of Control
Wanneer je object georiënteerde “loosly coupled” software wil opzetten, loop je al vrij snel tegen de uitdaging aan dat objecten elkaar nodig hebben. Er zijn allerhande design best practices om met deze afhankelijkheden om te [...]
Entropie in software ontwikkeling
Woord vooraf Op 15 december 2015 hebben we een Excellence Center avond georganiseerd over SOLID software development. Deze avonden worden regelmatig georganiseerd voor developers die met elkaar best practices willen uitwisselen. Tijdens deze avond kwam [...]
Voorkom XSS aanvallen in Html editors
Wanneer je een webapplicatie ontwikkelt waarin de gebruiker in staat moet zijn om tekst met opmaak te maken, zal je waarschijnlijk gebruik maken van een Html-editor. Er zijn heel veel goede Html-editors in de markt [...]
Pdf rapporten genereren in .NET
Steeds vaker worden communicatieprocessen gedigitaliseerd waarbij gegevens worden omgezet naar een standaard formaat zoals PDF (Portable Document Format). Denk hierbij bijvoorbeeld aan facturaties maar ook managementrapportages et cetera. Als .NET ontwikkelaar is het niet altijd [...]