De 10 van Scott Hanselman - podcast 381 tot en met 390

Ingediend door Dirk Hornstra op 08-mar-2021 20:50

Als je zelf de podcasts van Scott wilt beluisteren, die zijn hier te vinden: https://hanselminutes.com/archives

PC 381: Deze uitzending is van 18 juli 2013. Rond deze tijd is Windows 8.1 uitgebracht. Het is niet een soort service-pack voor Windows 8, want behalve bug-fixes zijn er ook nieuwe zaken toegevoegd, onder andere weer een startknop. Met die startknop open je trouwens niet het menu zoals dat altijd was (en in Windows 10 weer teruggekomen is, maar ga je terug naar het startscherm. Ook hier komt weer even de magische Windows-toets + X voorbij. Daar kun je ook snel afsluiten en hoef je niet meerdere zaken aan te klikken. Scott heeft het erover met Pete Brown.

PC 382: Scott spreekt met Chris Walker van Secret Labs over het maken van een "agent smart watch". Op dit horloge zou je jouw eigen in .NET geschreven apps kunnen toevoegen. Via bluetooth overzetten, dus niet per se een computer nodig (kan ook via mobiel/tablet). Chris legt uit hoe het werkt, hoe het idee ontstaan is. Dat kost natuurlijk veel start-kapitaal, dus er is via Kickstarter een campagne opgezet en dat is gelukt: 1.000.000 dollar! Chris heeft met Secret Labs de Netduino en de Netduino mini gemaakt, dat is in podcast 237 besproken: link. Voor een Kickstarter-project is het goed dat je "iets" kunt laten zien. Dus hoewel het definitieve ontwerp anders zal zijn, kon de Netduino mini gebruikt worden om een soort prototype van het horloge te laten zien. Een event-driven systeem, er zitten 2 micro-controllers op, zodat je horloge niet "bricked" kan worden: door een afgebroken update wil je systeem niet meer opstarten o.i.d. Chris zegt aan het eind van het gesprek dat het project niet meer via Kickstarter te krijgen is, maar dat je naar deze site kunt gaan: agentwatches.com. Op de site lijkt niet zoveel meer te gebeuren (Agent SDK is van 2014), de verwijzing naar het Kickstarter-project heeft deze update van 2016: link. De opzet was C#, maar veel developers maken zaken met Javascript, het team heeft hier een eigen repo voor opgezet: https://github.com/agentwatches. Het lijkt erop dat het project rond die tijd gestopt is. Spijtig, want hoewel veel mensen "even snel hun mobiel uit hun zak trekken" en daar snel iets op checken, als je het kunt tonen op je horloge ben je én sneller klaar én je kunt je telefoon wegstoppen in een binnenzak, in plaats van dat je mobieltje half in je kontzak zit en mogelijk eruit valt.

PC 383: Scott spreekt met Nicholas Zakas die bij Box werkt(e) over javascript. Of eigenlijk over het "teveel gebruiken" van Javascript. Terwijl je met HTML en CSS veel dingen kunt doen. Je moet het op het juiste moment gebruiken. Je moet zorgen dat het beginscherm van je site altijd snel moet opstarten, als dat door het inladen van tig javascript traag wordt, zorgt dat meteen voor een negatieve ervaring van de bezoeker van de site. Nicholas is kritisch op het gebruik van jQuery. Is het echt nodig, of kun je het ook met "vanilla javascript" (dat is dus gewoon javascript, zonder externe bibliotheken in te laden). Nicholas en Scott bespreken de 4 momenten dat javascript geladen kan worden. 1: in de head, meestal alleen analytics-script van Google en andere anlytics-bibliotheken. 2: in het einde van het document, net voor </body>. Daar wordt vaak "de rest" geplaatst. De pagina is al gerenderd, dus je zit niet op een wit scherm te wachten. 3: na on-load. Iets wat uitgesteld kan worden, is vaak een 2e of 3e actie op de pagina. Nicholas geeft het voorbeeld van een Amazon productpagina. Vaak kom je daar na een zoek-actie. Dus de kans is niet zo groot dat je weer gaat zoeken, je gaat eerst kijken of dit het product is wat je zoekt. 4: op verzoek. De gebruiker doets iets, waardoor je weet wat daarna gaat gebeuren of wat een grote kans heeft. Op de Amazon-productpagina kan dat een "wish-list" zijn. Alleen als het product voldoet en je het nu nog niet wilt kopen, kan dat een reden zijn om het op je wishlist te zetten. Dus als je muis rond de 100 pixels in de buurt van de wish-list-knop komt, kun je javascript gaan inladen wat hiervoor nodig is. Nicholas geeft ook nog het voorbeeld van een klant die jQuery gebruikte, maar ook de YUI-bibliotheek van Yahoo. Die werd alleen gebruikt voor een stuk auto-aanvullen van tekst. Door hier een jQuery-plugin voor te gebruiken, kon dat bestand uit de code verwijderd worden. Nicholas zijn eigen site is hier te bekijken: https://humanwhocodes.com/ Deze slideshare-presentatie over hoe het internet gestart is, is een prachtige nostalgische presentatie, want een flink deel daarvan heb ik bewust meegemaakt, met mijn inbel-modem: link. Een boeiende uitzending!

PC 384: Scott spreekt met Dino Viehland over Python tools voor Visual Studio. In het verleden is gestart met IronPython om Python in .NET gebruikt kon worden. Ook heb je IronRuby. De Python tools voor Visual Studio zijn op Github te vinden: https://github.com/Microsoft/PTVS.

PC 385: Scott spreekt met Frank Krueger die in C# (op mac) een app gemaakt heeft: calca, een symbolische rekenmachine met markdown. Je hebt een soort Word-document waar je invoert: 2 + 2 en daarachter typ je => Daarop maakt het programma aan het rechterdeel een zo kort mogelijke weergave van hetgeen wat voor dit teken staat, 4 dus. Door naar Frank te zoeken kom ik op mergeclonflict.fm, zo te zien ook een site met podcasts die over software gaan: link. Frank zijn eigen site is hier te bekijken: https://praeclarum.org/ Er is nog een ander programma Solver wat Frank geïnspireerd heeft, maar de zaken die niet goed werken gaven Frank het idee om zelf een programma te maken, zo kan het geen zaken met "variabelen" uitwerken. Ik vraag me af of dat het Math Solver programma van Microsoft is (link)? Frank had gedacht dat vooral programmeurs deze app zouden gebruiken, maar het blijkt dat veel meer mensen de app kopen, bijvoorbeeld accountants. Het is natuurlijk een uitstekende applicatie voor teksten, calculaties. En als je bepaalde zaken aanpast, worden ook de berekeningen real-time bijgewerkt. Interessante uitzending!

PC 386: Scott spreekt met Jan Lehnardt over CouchDB en noSQL. Met CouchDB wordt data opgeslagen als JSON. Interactie met de database gaat via HTTP. Waarbij je ook weer indexen kunt toevoegen. Hier staat nog een mooie presentatie over CouchDB op SlideShare: link. Documentatie (het boek) staat online op https://guide.couchdb.org/, maar inmiddels is dat verouderd. De bron daarvan staat ook op Github: https://github.com/oreilly/couchdb-guide. Er wordt verwezen naar https://docs.couchdb.org/en/stable/ waar je de documentatie voor de huidige/actieve code kunt vinden. Ik heb zelf weinig/niets met noSQL gedaan, dit is wel een mooi project om ermee te starten.

PC 387: Scott spreekt met Natasha Irizarry over het verhelderen van UX. Hoewel UX een "front-end aangelegenheid" lijkt, is het interessant voor elke developer. Zo noemt Natasha het voorbeeld van een app waarbij je een kruisje hebt om de app te sluiten. Normaal heb je "hier omheen" een aantal pixels marge om te klikken. Als je dat niet doet, en expliciet op die kleine x moet klikken, dan is dat niet bevorderlijk voor de UX. Veel "UX specialisten" hebben een studie psychologie gedaan. Scott noemt nog het boek van  Donald Norman: Design of Every Day Things. Natasha noemt het boek van Karim Rashid: Design Your Self.

PC 388: Scott spreekt met dr. Neil Roodyn over vision based computing. Scott heeft de Kinect voor Windows aangesloten en had verwacht dat het beter zou werken. Hij wilde aangeven bij een browser dat hij verder wilde scrollen. Maar je moet hier echt specifieke bewegingen maken om dat voor elkaar te krijgen, maar hij had verwacht dat je door een soort "wuiven" je dat kon realiseren. Neil geeft aan dat zijn verwachtingen te hoog zijn. Het toetsenbord en muis zijn al jaren in gebruik en werken zoals we verwachten, maar met dit type product zit je nog in de opstartfase.

PC 389: Scott spreekt met Linda Rising over de agile mindset. Volgens Linda zitten we vaak vast in ons eigen stramien: dit kan ik wel, dit kan ik niet. Maar is dat echt zo, of komt het doordat anderen die tegen je gezegd hebben? Of heb je weinig zelfvertrouwen? Zo komt het boek "Mindset" van Carol Dweck voorbij. Linda haar eigen website is hier te bekijken: https://lindarising.org/ Scott geeft aan dat hij in 2011 een goede presentatie van Linda gezien heeft. Ik denk niet dat deze dezelfde is, maar deze presentatie gaat wel over hetzelfde onderwerp en is van 2011, dus mocht je interesse hebben, 1.5 uur Youtube: https://www.youtube.com/watch?v=W47rcJowx7k

PC 390: Scott spreekt met Frans Bouma over de huidige staat van object relational mapping. Frans zijn commerciële product LLBLGen Pro (link) ondersteunt Entity Framework, Linq2SQL, nHibernate en zijn eigen framework. Interessante uitzending. Zo komt ook een "read only" deel ter sprake, waarbij je bijvoorbeeld je winkelwagen in een noSQL database hebt, maar waarbij dat wel gekoppeld is met de "echte data". En ook het koppelen/in sync houden van alle datamodellen (waarbij je ook een data-model in javascript kunt hebben) komt naar voren. Zo vraagt Scott of hij ook het model voor Angular kan aanleveren en hoewel dat er nog niet in zit zou dat kunnen: het is slechts een kwestie van een template vullen. Frans zijn eigen site is hier te bekijken: https://fransbouma.com/