.NET Rocks - podcast 361 tot en met 370

Ingediend door Dirk Hornstra op 30-sep-2025 20:59

Als je zelf de podcasts van .NET Rocks wilt beluisteren, die zijn hier te vinden: https://dotnetrocks.com/

Let op: dit zijn oude afleveringen over .NET 3.5. De meeste zaken zullen dus redelijk verouderd zijn. Laten we het erop houden dat je de afleveringen kunt overslaan en als er een echt interessante uitzending is, dan noem ik dat expliciet.

PC 361: Jeffrey Richter bespreekt in deze uitzending hoe het geheugenmodel in Windows werkt. Een heel leerzame uitzending! Want we gaan terug naar de "oude systemen", hoe toen fysiek naar het geheugen werd geschreven, hoe er later "virtueel geheugen" bij kwam en we zo "meer geheugen kunnen gebruiken dan we fysiek hebben". Jeffrey is ook een goede schrijver, Carl is lovend over hem. Hij noemt onder andere het boek CLR via C#.

PC 362: James Kovacs over Inversion of Control. Wederom een uitzending die de moeite waard is om te beluisteren. "Vroeger" zette je in je code directe implementaties van je objecten in andere objecten, waardoor zaken "strak gekoppeld" waren. Door Inversion of Control kun je nu in de constructor zeggen: hier moet een implementatie komen van interface IChatService. In je initialisatie van je code geef je aan dat IChatService geïmplementeerd wordt door de MyChatService-class. Maar zou dit later de OtherChatService-class worden en die zou dezelfde interface ondersteunen, dan is de impact op je code minimaal. Er worden een aantal frameworks genoemd, zoals iets met java net, iets met xxx en Unity, dat is van Windows. Je moet inderdaad weten "hoe het werk" en als je dat weet, dan is het simpel. Ik weet nog toen ik bij Creative Industries werkte en Peter Kiers al gebruik maakte van Unity ik initieel die interface zag en mij afvroeg "maar waar wordt die dan opgebouwd?". Een zoekactie in de code leverde me snel het antwoord op. In de uitzending wordt ook nog Jeremy Skinner genoemd, die aan Structuremap gewerkt heeft en "fluent coding". Bij een Google-zoekactie kom ik uit op een post van zijn blog hierover (https melding kun je negeren). Ook een goede uitspraak over code/programmeren: maak je code open voor uitbreidingen (extension(s)), maar niet voor aanpassingen (modification). En James adviseert om het boek Working Effectively with Legacy Code van Michael Feathers te lezen. James heeft een website, daar heeft hij een overzicht met boeken die je zou moeten lezen. Jammer genoeg is hij zelf rond 2012 gestopt met bloggen.

PC 363: Kate Gregory is te gast. In deze uitzending komt ter sprake dat een pakket van Microsoft in een soort stand-by stand stond, maar er recent een update van uitgebracht is (verdubbeling van de code-set), waardoor het uitermate geschikt geworden is om zaken voor Vista te ontwikkelen. Er zit zelfs een ribbon-control in! Het gaat om MFC, Microsoft Foundation Class, wat een bibliotheek is. Ik denk dat dit bij Microsoft Visual C++ hoorde, een pakket wat ik zelf niet geïnstalleerd heb. Tijdens deze uitzending hoor ik Carl iets noemen, namelijk dat je soms bij bepaalde aanroepen op Windows bepaalde zaken in C++ geprogrammeerd zijn en alleen met C++ aan te roepen zijn. En schijnbaar is er ook een standaard, waardoor op systeem A ontwikkeld kan worden en vervolgens op systeem B gecompileerd. Ook noemt Kate dat je met C++ in Excel kunt programmeren, dat is dan geen DLL bestand, maar een XLL bestand. Uitleg op deze pagina van Microsoft en een Github-repo met een uitgebreide README. Bij het afsluiten van de uitzending vraagt Carl of Kate nog een handige site o.i.d. heeft. Kate noemt news.google.ca, voor het bekijken van het nieuws uit Canada.

PC 364: In deze uitzending is Stacy Harris te gast, onderwerp is "Home Automation". Hoewel ik daar zelf niet zoveel mee heb, is het wel een interessante uitzending. Hij gebruikt namelijk Robotics Studio van Microsoft om zaken aan te sturen en ook om te simuleren. Hij vertelt dat in de keuken allemaal lichtknopjes zitten, maar hij niet weet welke waarvoor is: ze hebben in de keuken een panel met een 4-tal 'scenes', waar ze uit kiezen. In het nieuwe huis waar ze kwamen wonen liepen ze door de deur en zag hij de deurbel. En dacht meteen: als de kinderen hun muziek luid aan hebben, horen ze die bel niet. Dus hij heeft geprogrammeerd dat als er gebeld wordt, de muziek zachter wordt en er een belsignaal afgespeeld wordt. In hun oude huis ging iets mis met een afvoer, die plas water in de kelder zagen ze gelukkig redelijk snel, maar als ze 4 weken op vakantie geweest waren, dan had de kelder blank gestaan. Dus zaken waar het risico op wateroverlast mogelijk is, daar worden sensoren aan gekoppeld. Stacy vind het een geweldige manier om zaken in te regelen, omdat je dat zelf kunt doen. Je kunt de panels aanpassen met Ajax en Silverlight. Het probleem was dat elke leverancier een eigen manier van implementatie aanlevert, maar door dit zelf in een soort panel samen te voegen kan hij het met webservices beheren. Stacy noemt CocoonTech waar je informatie over home-automation kunt vinden. Die website is er nog steeds! En Carl en Richard kwamen bij Stacy op basis van zijn artikel op MSDN, via archive.org nog te lezen. En ELK wordt ook vaak genoemd in deze uitzending, mogelijk is de site interessant voor als je zelf met home-automation aan de slag wilt gaan.

PC 365: Daniel Simmons heeft het in deze aflevering over Entity Framework v1. Ten tijde van deze uitzending is het onderdeel van SP1 van .NET 3.5 en van SP1 van Visual Studio. Voor de rest weinig nieuws, dus je kunt deze aflevering overslaan. 

PC 366: Omdat Richard vakantie heeft, is de oude co-host weer terug: Mark Dunn! Carl vertelt hem dat hij bij een optreden van Les Paul geweest is (ik kende die naam niet). Carl was namelijk bij zijn moeder geweest die jarig was geweest en herinnerde zich toen een afspraak die hij met zichzelf gemaakt had, namelijk een concert van Les Paul bezoeken. Les Paul trad namelijk nog elke week op in Manhattan en signeerde ook. Dus Carl heeft hem zijn gitaar laten signeren. Dat heeft hij mooi op tijd gedaan, want Les Paul was toen al 93 jaar en zou in 2009 overlijden. In deze uitzending is Eric Swedin te gast. Carl was op zoek naar gasten en kwam een boek over de historie van computers tegen wat hij erg goed geschreven vond. Titel van het boek is Computers: The Life Story of a Technology. Het was bedoeld als een bibliotheekboek, ze zouden daar een serie voor maken. Dus over schepen, auto's en over computers. Het boek was bedoeld voor mensen die weinig tot niets over computers weten. Dus de enigma, de collossus en alle andere computers komen in dit boek voorbij. En omdat het zo populair was kwam het ook beschikbaar buiten de bibliotheek, met een soft-cover. In 2022 heeft Eric het boek "The Computer" uitgegeven, een iets uitgebreidere versie (vermoed ik) dan het andere boek, deze heeft namelijk ongeveer 100 pagina's meer. Eric zijn eigen website is te bekijken op swedin.org. Ook worden nog films besproken die computers als onderwerp hebben, vaak is het totaal geen realistische weergave van hoe zaken echt gaan. Minority Report en Wargames worden genoemd als films die tonen hoe het wel kan en hoe het "mogelijk in de toekomst gaat werken". Swordfish is de film die compleet wordt afgekraakt.

PC 367: Bij "better know a framework" noemt Carl de System.Data.Services namespace. Hier heb je REST acties beschikbaar voor je data, Carl legt de nadruk op Dataservice of T-classes. Mogelijk kun je daar snel zaken im- en exporteren. In deze uitzending is Udi Dahan te gast, hij is bij eerdere uitzendingen ook te gast geweest. De uitzending is interessant, het gaat over het schalen van web applicaties. Ook caching komt hierin naar voren. En hoe je dat met beleid moet uitvoeren. Het is nooit dat 1 type implementatie "de sleutel tot succes" is, want soms kan het cachen van data juist zaken trager maken. En er speelt altijd de vraag: wanneer moet de cache vernieuwd worden, want anders zit je naar verouderde data te kijken. Ik weet niet of het deze uitzending of de volgende was, maar er werd ook nog iemand genoemd die een prijs had gewonnen bij een conferentie met een presentatie van 5 minuten. Daarin liet hij zien hoe het instellen van het cachen van zaken voor 1 seconde de performance significant kan verbeteren. De bottleneck zat hier in de database. En zoals hij aangeeft: deze site moet wel continu onder load zitten, waarbij tig requests binnen 1 seconde uitgevoerd worden, anders moet je de duur (natuurlijk) wel verlengen.

PC 368: In deze uitzending is Steve Smith te gast. Onderwerp is de transitie naar ondernemer. In plaats van "loonslaaf" te zijn, wil je een eigen bedrijf oprichten. De uitzending is niet heel interessant (niet heel veel 'tips'), maar wel aardig om te beluisteren. Richard is nog met vakantie, dus Mark Dunn is weer even de co-host. Steve was consultant bij een bedrijf, is een aantal jaren zelfstandig consultant geweest (omdat mensen vroegen of hij ze wilde trainen) en een ander project, het aanbieden van advertenties op meerdere .NET sites is zijn uiteindelijke baan geworden, samen met zijn vrouw die de CEO is. Hij noemt nog even het boek "E Myth Revisited",  waarin wordt genoemd dat veel mensen die "een idee hebben" daarmee nog niet een "bedrijf" hebben opgezet. Steve is gestart met aspalliance.com, een site waar tot 2011 actief wat mee gedaan werd, deze is nu niet meer online (de link verwijst naar archive.org). Zijn huidige site is nimblepros.com, je kunt daar zien dat hij dit nog steeds met zijn vrouw doet en met 10 werknemers. En... wat wel cool is, zijn huidige site is ardalis.com. Naast het feit dat hij hier een actief (interessant!) blog op bij houdt, heeft hij ook een aantal boeken geschreven en deelt hij welke hardware en software hij gebruikt. Ik ga daar binnenkort nog eens naar kijken om te zien wat ik daarvan ga gebruiken!

PC 369: Twee gasten in deze uitzending (die ook wel eens eerder te gast zijn geweest), Dan Simmons en Stephen Forte over het Entity Framework Advisory Council. Daniel zit in het team van Microsoft wat het Entity Framework ontwikkelt en rond deze tijd versie 1 uitgebracht heeft. Microsoft heeft een overleg georganiseerd met 5 mensen "uit het veld" om te horen wat zij van EF vinden, wat er anders kan, wat er beter kan. Zo is Stephen Forte daarbij geweest, Eric Evans van Domain Driven Design, Martin Fowler en nog een paar mensen. Iedereen zit redelijk met elkaar op dezelfde lijn. Dan had in het begin het idee dat EF "alleen maar" een ORM was, maar na deze sessie was het hem duidelijk dat het ORM een onderdeel van het hele systeem is. Naast het feit dat je met LINQ door je data kunt browsen, is de basis geënt op ADO, dus als je rechtstreeks query's op de database wilt uitvoeren, stored procedures wilt uitvoeren, dan kan dat. EDM (entity-data-model) is iets wat niet alleen voor databases is, Dan noemt het voorbeeld dat je er ook de Windows-processen mee kunt tonen. Ook het deel wat Carl bij 367 noemde, System.Data.Services (ook wel Eustoria) is een tweede manier om data uit je EDM te halen. De interactie bevalt Dan en Stephen goed. Dan noemt nog even kort hoe dat in het verleden wel eens anders ging, zoals bij Hailstorm, dat project is geannuleerd.

PC 370: Bij "better know a framework" noemt Carl de System.Deployment.Application namespace. Deze is bedoeld voor click-once-applications. In deze uitzending is Somasegar te gast. Deze vice president van de development-afdeling werkt al jaren bij Microsoft, is erbij gekomen ten tijde van de eerste Windows NT! Zijn blog op MSDN is hier nog na te lezen, dat stopt rond 2015.