.NET Rocks - podcast 91 tot en met 100

Ingediend door Dirk Hornstra op 06-mar-2023 20:31

PC 91: Carl is voor een hobbyproject bezig om met de LAME-encoder, open-source MP3-encoder, input en output te verwerken. Carl spreekt in deze uitzending met Billy Hollis over Smart Client Architecture. Billy benadrukt ook nog even dat programmeurs door het web continu in een flow zitten van "hou het stateless!", maar bij een smart cliënt app moet je juist gebruik maken van state. Billy is bezig met proof-of-concept software op tablets in de medische sector. Omdat de overheid bezig is te verplichten dat zaken niet meer alleen op papier worden opgeslagen, maar digitaal verwacht hij dat dit een extra push krijgt. Ook heeft hij de ervaring dat de handschrift-herkenningssoftware vaker beter werkt om teksten te ontcijferen dan het menselijk oog (druk zetten, lengte/verhouding tekens). Ook hebben Carl en Billy het over "binding". Het koppelen van data aan controls. Billy heeft hier een eigen soort framework voor geschreven dat een stuk beter werkt. Carl noemt het voorbeeld waarbij hij een datum aan een control koppelde en het er niet uit zag, waardoor hij zelf het onPaint-event moest aanpassen. Billy geeft aan ook zelf het onDirty-event te kunnen detecteren. Dus je voegt een x aan de tekst toe: 'isDirty=true'. Maar doe je dan een backspace, dan heb je de originele tekst weer en 'isDirty=false', wat dan ook weer invloed kan hebben aan gerelateerde knoppen (in eerste instantie save-icoon actief maken, in tweede instantie weer disabled maken). Hij heeft dit niet met events gedaan, maar met extenders, waardoor je elementen extra eigenschappen geeft. Ook heeft Billy nog iets gemaakt waardoor je validaties in de database op kunt slaan, dit wordt "on the fly" gecompileerd, en zo kun je validaties uitvoeren (en zijn ze uitbreidbaar/aanpasbaar). Carl komt nog met het plugin-voorbeeld (standaard interface), waarmee je DLL's inlaadt.

PC 92: Voor ik deze uitzending bespreek, mail, complimenten e.d. sla ik altijd over. Maar deze keer is er een hele coole inzending die Carl ook kan waarderen. Er heeft iemand instructieboeken van "hoe werkt een computer" ingescand en online gezet. Uit de tijd dat er met mainframes en ponskaarten gewerkt werd. Het is een brinkster-site, dus die staat niet meer online. Maar dankzij het online archief kun je deze nog wel bekijken: link. Deze uitzending gaat over Windows Server technologie. Rory zit voor zijn werk bij Microsoft in Las Vegas, Carl doet deze uitzending met zijn geluidsman, Jeff. Deze keer met 7 mensen van Microsoft, program managers en "evangelists". Steve Dimarco, Neil Hutson, Steven Salazar, Nigel Watling, Steven R. Woodward, Volker Will, Gianpaolo Carraro. Uitzending over Windows Server 2003 (en R2, de extra toevoegingen voor onder andere Active Directory), 64-bit computers en ondersteuning in Windows. En de migratie van J2EE naar .NET (onder andere via J#). En er wordt ook genoemd dat de conversie rond de 85% kan doen, dat is knap! Nog even de cijfertjes bij 64 bits systemen, dat is nu al een tijdje de standaard. De virtual address-space, op een 32 bits machine is dat 4 GB. Op een 64 bits machine... 16 TB! In een volgende aflevering stelt een luisteraar hier vragen bij of dat echt zo is, daar kunnen de mannen niet echt met een antwoord op komen, dus ik laat even in het midden of dit de juiste waarde is. Het zal wel een stuk meer zijn in ieder geval. Dus voordat we naar 128 bits systemen gaan, dat zal nog wel even duren. Voordeel die 1 van de mannen noemt is SQL server, data kan in het geheugen blijven, minder disk I/O acties en dus een stuk sneller.

PC 93: Carl spreekt met Brian Larson over SQL Reporting Services. Je kunt daarmee rapportages maken, ook via webservices bereikbaar. Microsoft Learn geeft de volgende informatie: link.

PC 94: Carl spreekt in deze uitzending met Bernard Wong. Bernard en Carl hebben op een conferentie presentaties gegeven in Las Vegas. Bernard is bezig met de voorbereiding voor het volgende evenement. Ook komt ter sprake hoe Bernard en mensen van zijn team bij overleggen met onder andere Bill Gates en Steve Ballmer zijn geweest en hoe het daar aan toe gaat. En Bernard vraagt hoe het nu zit met Rory, of hij echt tegen Steve Ballmer heeft gezegd "what are you going to do with all those billions of dollars". Waar volgens Rory niets van waar is.

PC 95: Carl spreekt met Rob Barker over Smart Cliënts. Ik zie ook een boek welke door hem geschreven zou zijn, Programming Microsoft Office Business Applications. Volgens mij is dit Rob zijn LinkedIn profiel: link en als dat klopt is dit zijn site: https://www.purepowershellguy.com/. Daar staan interessante blog-posts op! Op zijn profiel staat een link naar een video over Smart Cliënts, dat verwijst naar deze pagina van Microsoft: link en daar staat een video op: youtube-link. Rob doet veel met Office. Rory noemt nog even Infopath, een prima applicatie voor "data-entry" als ik hem zo hoor. Rob spreekt over het Information Bridge Framework. Met smart-tags kun je in een e-mail en daar via onder andere webservices de bijbehorende data opvragen. Ik kan daar nu geen informatie meer over vinden, via het archief nog een oude versie: link.

PC 96: Carl spreekt in deze uitzending met Robert Hurlbut. Robert is er voorstander van om op je pc te ontwikkelen, als "gewone user" en niet als admin/local admin. Hiermee loop je tegen de problemen aan die anders mogelijk de gebruikers zullen tegenkomen. Zo komt "Run As.." ter sprake. Robert noemt als nadeel dat dan de boel geïnstalleerd wordt als "die admin-persoon" en het dus niet aan jouw user-account gekoppeld zit. Er zijn andere mensen die tools gemaakt hebben. Robert noemt Michael Howard. Als ik daarop zoek, kom ik op zijn security blog, lijkt me de moeite waard om te volgen: link. En ook nog een artikel op de site van Microsoft met 10 tips: link. Ook een vriend van Robert zou een tool gemaakt hebben, Valery Pryamikov, RunAsAdmin: link. Bij het zoeken stuit ik ook nog op deze Slideshare-presentatie van Robert: link. NMap wordt ook nog genoemd: link. Service Broker wordt genoemd, een soort messaging-system tussen SQL Servers (link).

PC 97: Rory is een tijd ziek geweest, had een verwaarloosde bronchitis, maar hij is weer terug. De gast van deze uitzending kon op het laatste moment niet aanwezig zijn, dus Carl en Rory bespreken met welke projecten ze zelf bezig zijn. De tool MapPoint van Micosoft wordt genoemd: link. Rory bespreekt een artikel van een gast die zegt dat "OOP in theorie beter werkt dan in de praktijk", volgens mij is dat deze pagina: link. Carl bespreekt een project waar hij mee bezig is, een eigen launcher voor een applicatie waarmee hij ook updates kan uitvoeren. Rory zegt dat hij eigenlijk "click once" gebouwd heeft, maar dat is in de tijd dat dit programma opgenomen is volgens mij nog theoretisch en niet beschikbaar. Rory is bezig met Compact Framework spul, hij is een soort role-playing-engine aan het maken voor zijn telefoon. Carl noemt Neil Roodyn die een gratis ebook uitgegeven heeft, extreme .NET. Nu ben ik niet iemand die aan "pair-programming" gaat doen, maar misschien staan er wat andere tips in. Het boek gevonden op Google Books: link. Dit boek is niet hier te koop, als je op eBay zoekt op de volledige titel, Extreme .NET: Introducing EXtreme Programming Techniques to .NET Developers, dan kom je nog wel een gebruikt exemplaar tegen. Als ik naar google.com ga, zoek op Neil Roodyn en dan op het tabblad Books, dan vind ik wel ook andere boeken over .NET. En veel daarvan hebben een voorbeeld, waar wel delen uit zijn weggelaten, maar goed, je kunt dus ook zo online (gratis) informatie vinden. Of in ieder geval een boek alvast bekijken voordat je het gaat kopen.

PC 98: De eerste uitzendingen waren met Carl en Mark Dunn. In deze afleverng is Mark Dunn weer eens te gast. En het is een interessante uitzending. Gesproken wordt over ADO.Net 2.0 en BizTalk 2004. Dit is een uitzending uit 2004, gaat over SQL Server 2005 en zal mogelijk inmiddels verouderd zijn. Maar misschien zijn er wel zaken die nog steeds werken en waarvan "wij het bestaan niet weten". Zo komt MARS voorbij: Multiple Active Result Sets. Je kon op een connectie maar één resultset hebben en vanaf die versie niet meer. Ik denk dat wij inmiddels niet anders gewend zijn, Microsoft Learn legt het hier uit: link. Mark geeft aan dat het vooral goed te gebruiken is bij transacties. We horen van Mark hoe zaken versneld zijn. Als hij 100.000 rijen toevoegt, dan was dat 3 minuten werk, met ADO 2.0 is dat nu 4 seconden (wow!). Als je een eigen datalayer wilt maken voor een provider, moest je met IDB-interfaces werken (en dat was geen leuke activiteit), daar zijn nu ProviderFactories voor. Door de blogs van Julie Lerman werd Mark getriggerd om zelf te testen wat de optimalisaties zijn. Met .AcceptChanges had je dat als één statement niet goed ging, dan werd het proces afgebroken. Met een bepaalde setting kun je dat uitschakelen, waardoor je zelf binnen een transactie alles of niets bijwerkt. Datasets kunnen nu geserialiseerd worden en ook binair, door de property ".RemotingFormat". Ook hier weer getest door Mark, met XML 400/500 kilobytes, gereserialiseerd naar bytes nog 80 kilobytes, dat scheelt een hoop qua verkeer wat er over de lijn gaat. Bulkcopy komt voorbij, even een "snelle kopie maken". En ook dit gaat supersnel, iets wat een half uur of uur duurde (door alle losse INSERT-statements) duurde nu 10 seconden tot 1 minuut. Query notifications, als er iets bijgewerkt wordt, kan deze met een soort subscriber-publisher model een terugkoppeling geven (soort delegate/event). En dat is een stuk beter dan iets dat Mark had gedaan door in een trigger een bestand aan te passen, zodat de cache-dependency getriggerd werd. learn.microsoft link.

Tussendoor nog een mooi verhaal. Mark moet nog snel een kerstcadeautje kopen en rijdt in zijn witte Honda bus naar een groot winkelcentrum. Hij parkeert snel, snel naar binnen, cadeau kopen en loopt naar zijn auto. Drukt op het knopje om het portier open te doen, stapt in en dan zit er ineens een oudere mevrouw. Hij denkt eerst "wat doet die vrouw in mijn auto?". Zegt zij vervolgens "als je deze auto wilt stelen, mag ik er dan eerst uit"? En "er zijn mensen die je kunnen helpen". Blijkt dat Mark in een verkeerde auto gestapt is, een vrouw is naar binnen gesneld, haar moeder is in de auto blijven zitten, de deuren waren dus niet op slot. Mark legt uit dat hij in de verkeerde auto gestapt is en zo komt het nog goed.

Hierna komt BizTalk ter sprake. Dat is een tool voor business-to-business communicatie. Mark geeft ook aan dat het duur is en voor kleine bedrijven waarschijnlijk niet rendabel. "Functoids" komen ter sprake, hier kun je zelf C# of VB code uitvoeren om bepaalde input/output aan te passen. Rory vraagt aan Mark wat de specs zijn. Als je een DEV bent kunt je met een 500 MB intern geheugen voldoen, Mark heeft zelf 1 GB intern geheugen en draait BizTalk in een virtual pc. Ik heb even de site erbij gezocht: link. Ik kan van de huidige versie niet ergens een "trail" of "dev" versie vinden om te downloaden. Via een link kom ik dan nog wel op my.visualstudio.com/Downloads?q=biztalk, maar daar zie ik ook geen BizTalk.

PC 99: Carl spreekt met Stephen Forte over sql 2005. Stephen heeft flink wat dingen gedaan en volgens mij daar ook flink wat vermogen mee opgebouwd. Een interessante uitzending, want onder andere "scraping" komt ter sprake, het van andere websites afhalen van data. Dat heb ik in het verleden ook gedaan (en nu zo nu en dan). Stephen legt uit hoe ze op een bepaalde pagina kunnen zien welke proxy-servers er zijn die die gebruiken ze dan stuk-voor-stuk om andere sites te scrapen. Om te voorkomen dat ze geblokkeerd worden op die sites. Want dat is wel voorgekomen, een overzicht verdeeld over 17 pagina's, als je die dan "te snel" ophaalt zegt de tooling: dit is niet een persoon, blokkeren dat IP. Zo werd er data van bepaalde vacaturesites afgehaald, geaggregeerd en vergeleken met data van de overheid (dat waren openbare bronnen). En sommige klanten kochten die data dan weer terug. Dat is mooie business! Veel reguliere expressies, worden in de database opgeslagen. Even een paar sites die genoemd worden: careerbuilder en monster. Terug naar het onderwerp. Nieuwe zaken die Stephen noemt zijn "common table expressions", "ranking functions", "windowing functions". Common Table expressions, een stuk "with" dat je kunt gebruiken en meteen daarna weer "uit scope" is. Ik heb het nog niet gebruikt. Misschien de uitleg eens even lezen: link. Ranking Functions, RowNumber() heb ik wel eens gebruikt volgens mij, maar er is meer mogelijk: link. En de windowing functions zeggen mij ook niet zoveel, volgens deze documentatie moet je iets met "over" doen: link. Zo blijkt maar weer, er zijn nog een hele hoop mogelijkheden die ik niet ken (maar mogelijk nog wel mijn voordeel mee kan doen)! Ook legt Stephen uit dat je bepaalde backups op RAID 5 kunt zetten, maar andere wel op RAID 1, omdat het ene bestand sequentieel is en het andere random accessible. En Stephen noemt nog even de tool "Trillian", een chat-client die verschillende chat-kanalen ondersteunt. Die heb ik zelf in het verleden ook nog wel gebruikt, volgens mij voor MSN Messenger en ICQ. De tool is er nog steeds: link.

PC 100: Het is zover, de magische nummer 100 is bereikt! Rory is niet aanwezig in de aflevering, hij heeft het te druk en dat is ook de reden dat hij heeft besloten om ermee te stoppen. Mark Dunn (die ook in de uitzending is) heeft 50 afleveringen de co-host gespeeld, daarna 50 afleveringen Rory en nu neemt Richard Campbell zijn stokje over (is ook present deze uitzending). Natuurlijk flink wat mensen/developers/voormalig gasten die hun felicitaties ingesproken hebben. Nick Landry is aanwezig, Chris Sells ook. Zo kijken we terug op oude afleveringen. We beginnen met Chris Sells, aflevering 10, waarin hij sprak over de destructor, finalizer, oftewel het vrijgeven van je resources. Dat is een heel interessant fragment, aanrader om nogmaals te beluisteren. Chris interviewt Carl over hoe het gegaan is, wat zijn doel was. De eerste aflevering had 300 luisteraars, nu gemiddeld 60.000 regelmatige luisteraars. Er zijn ook flink wat mensen die de afleveringen op CD branden, zodat ze tijdens het naar het werk (en later naar huis rijden) de uitzendingen kunnen beluisteren. Chris heeft het er nog over dat het handig zou zijn dat je dit op je mobiele telefoon kunt doen. Hij heeft een tool om spul op zijn telefoon te zetten en we weten hoe het gegaan is: je telefoon kan inmiddels "alles", dus je hebt ook voldoende ruimte om podcasts te beluisteren via je telefoon. Tijdens deze uitzending is de techniek nog niet zo ver gevorderd, Chris kan 300 MB audio op zijn telefoon zetten. Hier worden nog een paar tools genoemd, Mimic en Doppler, maar daar kan ik online niets van vinden. Bittorrents worden nog genoemd, ontstaan uit het illegale circuit, maar steeds meer voor legale doeleinden, zoals het delen van podcasts, maar zoals Jeff ook zegt: heel goed om Linux distributies binnen te halen.  Via het IRC kanaal krijgt Richard nog 2 linkjes door, de ene lijkt niet meer te werken, je komt nu op een site uit met nieuws over Windows (lijkt op zich wel de moeite waard om nog eens door te kijken): link en de andere is alleen via archive.org nog te bekijken: link en je ziet het, dat is echt oldskool stuff (ipodderSP) voor Windows Mobile.