20 Episode results for "carl franklin"

Building Apps using Uno with Kenzie Whalen

.NET Rocks!

50:37 min | 1 year ago

Building Apps using Uno with Kenzie Whalen

"Welcome back to dot net rocks Carl Franklin and this is Richard Campbell and today I'm recording from a newly provision room in my home where I've got u-haul blankets up and I've got lights and green screens and doing the streaming thing. My friend getting a little video studio you these days. I am I am I want to Talk about this a little bit better framework but before we do that. What are you up to my friend? I have been recording to run as a week. all in starting in. May where this is publishing in. May We are Doing a a Friday episode which is specifically on topics for it pros around pandemic issue so scaly VPN's re route work from home issues helping your employees with Wi- file all those kinds of subject materials. That's great so much demand. There is so much demand true so it's been it's been a whirlwind and I'm enjoying myself I mean. These are tough topics but at the same time it's interesting to just dig into the creative ways that folks have been solving problems. Had A great conversation with an IT fellow who was already peeing into or not already but using one of the remote control services to get into his employees machine so that he could configure is wi fi access point because it had quality of service settings said he could turn down the net flicks and turn up the the The the video chat stuff and this is indicative of the kind of problems we're dealing with now I mean. It people have always been able to fix their own home problems but and they've always been able to You know go to somebody's office and fix something but now you can't do that. Yeah because you have control of network no not so much. We are also talked to folks where they're shipping my fis out just a little the little Y Cellular Modems just because it's simpler than trying to fix those things. You guys strong sales signaller. Let me send you one of these just for work in that way. That sheen is is fine. But you're finding out what people have at home and how to keep them productive and it's it's been interesting for the most part. What I'm finding is these were all projects that were on the to do list. But they were tertiary and now their primary now. They're like we need to get this working now. I had a problem where I was go ahead. I was recording and doing a stream in conference or whatever and then I picked up my phone and when I turned on my phone like the the Wi fi was even wi. Fi is just network hiccups. Like I'm a hardwired network here but it all everything just stopped for a couple of seconds and then came back so fishing. Have no idea what that is but I'm able to replicate it over and over again. Something that you're when your phone fires up. Yeah that's interesting. It is on the is it on the wall. Is the phone on the Wifi when you do. The phone is on the WIFI. Yes but also yes but the computers are plugged into the WI fi router. That is also acting as a hub. Right so who knows? I wonder if you shut off the Wifi on the phone before you turned on the cell on the phone if it would be different. Yeah I imagine it is the Wifi. Because there's no other connection to the network in the only other thing it would be. Interference is that or. There's an incredible. I mean if it's an iphone. It may be admitting a a steve jobs in electromagnetic pulse. That's wrecking the in. But you know. I'm just guessing I can go to dark places if you ask me. I know how well we're glad you're here and we're here for you and let's roll the crazy music and I've got something I've been working on for better. No framework awesome have. We talked V. Mix on the show. Were you and I. I don't think we've talked about it on the show. And you have poured a energy into. I have so a lot of people are using. Ob S for streaming Hecker share. A lot of people are just using zoom. A lot of people you know and skype. And that's fine but if you WANNA do something other than just broadcaster web camera desktop. You need some sort of production software and that's where tools like O. B. S. and V. Mex COME IN AND LOVE JEFF'S JEFF. Fritz turned me onto. Ob Ass. Open broaden US software. It's think of it as a an APP that goes between your Webcam and a whole bunch of other inputs and you're streaming output could be zoom. Could BE WHATEVER. Yeah but ob asses is open source and there is a commercial product called V. Mix that is like Oh bs on. Steroids and this product does Is What we're using right now. Actually to record these calls because it'll do the mix minus when you get multiple callers calling in right not just audio video. And that has been. Isn't Richard Suffice? It to say that has been the technical thorn in our side the whole time we've been recording dot net four decades right. I mean that has been that if there's anything we ever figured out that people right. Why does your show sound so good? It's like out mixed mind is a long time ago with a bunch of different hardware. The t lows one plus one holy man. Yeah One and the deal is one plus one. Where was the way to a phone hybrid to get telephones? Lines IN AND ONLY RECORD. Yeah only record what you hear and then only send to them send them everything except themselves right and so doing this manually is a real nightmare especially with zoom. We've had to use multi-track Recording audio interfaces where we have the output of one patched into the input another input and do crazy routing and that works sometimes and we've had separate machines and get the inputs of one from the opportunity. It's just a nightmare so anyway the mixed does this automatically but it also does a lot of great things on the video side in for visual production as well and I jumped into it full force and I actually started finding sort of gaps in things that I wanted to do that. It wasn't doing but it has an API and the API's fairly easy to use it. It's actually built in dot net. It's a dot net three five application Clearly a WPF in windows forms application and The API is v DOT net. The script the Scripting v Dot Net. But they also have a web. Api But essentially. They're just listening to like a one. Twenty seven zero zero one port a special port and you can just send get requests with all the parameters on the string and things will happen so it's pretty cool. I figured I basically figured out how to build a system that uses signal are so that a remote caller or remote presenter can control aspects of v necks can switch scenes and Change COUNTDOWN TIMERS. And just do a whole bunch of automate that so. I started offering Production Services Everything from consulting on V mix. And what have you even before that consulting on how to set up a green sprain how to light it how to do all that. Kind of stuff audio microphones and headphones that work well and then also going all the way towards Hey you know I can run your conference for your your online meaning and so. I've actually got a couple of customers that I'm doing that for now. Everybody's fantastically into it. I've got designers and artists that I'm working with to create virtual sets so we can customize things let's just suffice to say I'm having a ball that's fun and if you WANNA watch a five minute video that sort of shows you. The possibilities go to stream DOT COM W. O. P. STREAM DOT com. That's all I got to say about that. Who's talking to Richard grabbed a comment off? Show sixteen seventy two that when we did in January of twenty twenty you know the before times right and we were talking to Brian. Lagunas about client side development at Twenty Twenty. I I had I had a plan you know for our year about. Hey it's new decade. What are we thinking about? How are things going to go forward so forth? Been a little distracted. The past few months but You know this was part of that plan. We had a great conversation talking. I mean when formed still out there. Doing his thing can make people money. Weak- work WPF populous ever UW. Pete that's we should talk about that Zaman dorms. We talked to a prison all great conversations and and Mike Warren's said that this is just a few months go I love this show as I do. All your shows mostly A. Brian is refreshingly honest about the approach Zamuner. Taking a great advocate of what Zaman Microsoft has done to bring cross platform development to see sharp but I do agree with Brian's comments about shell being problematic because it is another layer obstruction on the already complicated navigation structure. So yeah you know they. That's the challenge of of ZAN reform. you're trying to make it simpler to code in exchange for you have to jump through these hoops right. It is most welcome food for thought here. Someone outside of the Microsoft Zaman bubble. Ibm In an perhaps. Because I've Brian. Yep presenting an alternative perspective and route into and development. And that's why your show rocks always worth listening to because you're constantly showcasing. Alternative approaches which keep development fresh invent this fantastic system vibrant and interesting. Thanks well just wait Mike is. We're impact a whole lot of today or alternatives. So Mike Thank you so much your comedy. Copy music. Oh by on its way to you. And if you'd like a copy of to by read a comment on the website at dot net rocks dot com or very any of the social media as well we publish it showed to facebook and if you comment there and every show was in your copy music. Kobe and definitely follow us on twitter. He's at rich Campbell. I'm at Carl. Franklin send us a tweet. I have one card left K Feeding get reference than stick around We're talking to know here. But let me Let me officially introduced. Kenzi waylon from carrots to code. Mackenzie whalen went from farming to programming. Utilizing only free resources available to her online since beginning her career as a developer. Kenzi has worked mainly with mobile development and now speaks at developer conferences around the world about cross platform tools. Like no and Zaman. She currently works for a fully remote digital agency called Infinity Interactive where she gets to expand your toolbox by using a diverse range of languages and frameworks to build dynamic websites and mobile APPs. Welcome Mackenzie Hi. Thanks for having me to prefer Mackenzie or Kenzi by Kenzi. All right you grew up with the name. Mackenzie and I was tall. So some kids dot com a big MAC. And that's not really how every little girl wants to be referred to so from then on it became. Kenzi. It's took the man golly over it call. Yeah I was lucky. I mean they picked on me anyway but not a whole lot of vulgarities rhyme with Carl on the playground. Carl Snarl okay. Good one and I was good with explosives. That people left me alone. Just set them on fire. Think things it mysteriously go bang that you did not expect okay. Where do we start? Let's we haven't talked about in a while. Ashley should we start with the UW question? Because that's what we haven't talked about for awhile. So what is Mackenzie and your point of view? Look what's the state of p? Right now I think he is kind of morphing like a lot of different technologies. Either you pivot or die off. I think it's putting volver die with A lot of help from oh I would say to expand into larger platforms. 'cause now so prevalent. Developer is not just develop for one platform developed natively for one system but to develop for a large range of systems. And you know being able to developed and deployed a multiple places for users is becoming the standard and who knows allowing people to do that through using to be so. I think that's kind of the future of it. So they're putting new. Wp as far as using U. W. P. for windows applications is that pretty much passe. Now on it's hard to say I would. I would say that using only might be difficult now. Outside of a large enterprise applications I think users are expecting to be able to use their products or their apps all over and not just on windows or not does on their phone so I think developing for a single platform is starting to become kind of old school if if I was going to develop a windows application today I'd probably use WPF just because of the the full power you know that is you wp still limited relative to WPF me. I didn't even know if you know the answer to this question but that I would use. Wpf I've actually never used. You're probably better off the VP. Api is pretty develops. I don't think you're limited when using you to be interesting so you wp Zaman who know how these things work together. Yeah it's actually really interesting but You know takes your shared code base For people who don't aren't familiar with really quick use a single share Kobe's written in c sharpens Mo and deployed to repeal of course IOS ANDROID and. What was simply uses the unity API to deploy ups which is native. That's all like standard. And then they use Zamara into Iowa's android not Dan informs Damran and so it's interesting because they're bridging these technologies in allowing people to deploy two multiple platforms without learning a new framework. A new language learning tools stuff like that right but I think it's what most people want right if they want to write the code once run it on the desktops at the office and run on the phones that the that the employees us thinking of course totally putting my enterprise architect hat on absolutely. I think it's not to say that you're gonNA write at one time and never touch specific platforms. It's all going to be perfect right away. Don't burst my bubble what I was living in a happy land for minute. Their Kenzi write once run everywhere. Would what could go wrong? We'll seems like there's more and more technologies heading that way right. I'm thinking always the pros or mobile bindings you've got Cameron you've got know and I slept. What are the major differences between you know? Why would I choose rather than just writing in Zamaran? I mean I don't know if it's a different situation more so than now is building on top of Zimmerman. So if you're building just for I was android and you're familiar with our reforms animal than that would probably be easiest choice but when you take your I wasn't Android Apps also deployed web assembly new to be and use you P. Zamel and you can use things like blend and see a sharp and it's more of a abridged all different tools rather than like a comparison to his esteem. Cross-platform Jolson that makes sense. That's how I see it from a developers standpoint. Yeah seems like it's a happy place between them. So you can go more places than just and android in fact you said the magic w word for me think. Ding Ding Ding Ding absently. But also windows. So if you're if you're you want to build an application that goes on everywhere then that is an option right exactly and it's using all your familiar technologies that for Microsoft Albers Sharpton Zamel Visual Studio Stuffy. Know you're familiar with. You're not reinventing the wheel. You just kind of using standard known technology to do things that gets pretty cool. Sure but if you running your AC sharp Zamel and you're running it through web heavily has have they basically reinvented light at this point? Yeah I suppose it's interesting. How they do it with me. They use a in house created boots dropper and the model run time. I think that's really fascinating too. A really interesting. He says the technology and I think it's growing so much with Blazer. Carl can speak more to that and I think people are starting to see the benefits of being able to deploy the web without using Java scrip-. Yes yes yes yeah. I don't know why people don't WanNA use Java script. It's such an amazing productive language. I don't I just don't let it adds to this showing. Yes so the bugbear in the room here is so. How much shared code? Are we talking about? I mean I love the idea that one project that then deploys to Windows two Iowa's android that that's pretty cool. But what commonalities do I have like what I gotTa do to make it work on all platforms well especially in the U I. Yeah so what's interesting about you is you can use the native. Ui for to be or you can use your custom. Ui for each different button or text. Blah. You can have native and custom on the same page if you really wanted to. Don't recommend that it would look a little weird being able to customize it that way but theoretically and functionally you can use just shared code base and a work users expect certain things to work certain ways on different platforms so the benefits that you can still go in and tweak here and there and dislike Cameron Forums apps most of the time. You're doing a little bit tweaking. Depends on the platform using if I were is it. I'd probably say around. It is ninety percents Shared Code. Ten percent tweaking. Well Okay 'cause you can use all of the U. WP native controls on all of these platforms like fifty up. Martin Luther the entire UBP has not been implemented. They're working on it but it's it's allies but the benefit without to as open source so people have been contributing and if they run into a situation where there's a tool wanted to use they can just go in and implement not us you know. That's the bathroom open source. Yeah well the source controls. You'LL BE P controls. They're not open source so they've actually just been recreating the windows control and in fact they're using the a believe that using the just API grabbing from there okay yeah and then open sourcing their implementation of just thinking about how you make that work on right. You use that you. Wp Calendar View. How does that show up in Iowa? Less they've actually made an implementation for IOS right. And that's what they do. They have mended for each popcorn specifically so underneath. You'll see in all this platform specific code but when you use it you're only using you to be paying this year project and I can also imagine. There's a bunch of trolls either. Very windows specific and very large screen specific. That would not make sense on a phone right. And that's why I say you're GONNA do tweaking if you're GonNa if you want your APP to look like a native out right. We also have to mention and I know probably won't go into details here but there is another option looming on the horizon. Which is the Blazer mobile bindings that are experimental right now and Web Window integration. So web window for for desktop operating systems is sort of Steve Sanderson did a nice blog. Post will link to it where he did a very small footprint native desktop application from A Web Assembly Blazer Project and then these native mobile bindings are way that you can use Zaman Forms. Zam All to do the you. I but with the laser component model behind it. So you can reuse your blazer components code and just build out different Zamel For the for the for the you I but that isn't quite baked yet but I did. I just did want to throw that out there. As you know. Another solution to the right once go everywhere. Aw problem or desire. That's looming on the horizon. Yeah actually when Blazer announced that the mobile bindings took and in day they built functionalities that you could tape blazer mobile bindings and convert them to Zaman Form Zamel which converts to see sharp. And you can run the blazer mobile bindings on new APP. Nice would but you can't. Yeah but it's like if you're going down the mobile bindings path it's like eight. This also works here right right and that's why it took. I think about the whole industry is moving towards these cross platform tools. Because you know people need to be able to build apps quicker to all these different places you can't or you can just build natively but it takes a long time and it takes a team of people who different languages and frameworks in it becomes difficult. Yeah but I think who knows approach to? It is pretty neat. The way they set it up it's pretty easy implemented lots of new technology into it and so when when you think has come out you can continue to use to build on top of it. More so than competing against it is is sitting on top of Zamaran. Right when you're talking about Iowa's android devices. Yes that's right right. So you get all the benefits of using Zaman. They've Sort of abstracted away the hardware layer of all of these phones and devices so that you can use stuff like the accelerometer and all the sensors with one syntax for both and you can utilize that in. Nuno's well I take. Yeah so be Zamel. No I am informed Samuel Yoga but yeah it's it's interesting. How built on top of everything else does kill me. How many flavors we still have for all the stuff like I. It's sad that you have to say that and we all know what you mean. Oh right yes so many flavors at least Zamel. The crime doesn't have an s standard. How many acronyms that included. An S for standard have actually been so segmented and fragmented over the years. I'm looking at you scuzzy. There's a reason we gave up on scuzzy. Eventually kill less. Nobody needs that many terminator's in their life a sub-standard. The yeah the fact is you have to sort of pick flavors. Emily comfortable with I though. I don't know how you feel about this Kenzi. Do you skip between flavors exam without a whole lot of trouble or is there one you prefer so I started With Marin and so I started with Zimmerman Forums Aimal Was I think pretty uncommon? I think people start with a EDP or WPF. Sam Yeah so I. I was familiar with that first and now obviously have learned if AMMO for but I don't. I don't know if I have a preference. I think both have benefits of it. I appreciate the brevity of Zaman forums animal but ups. Mole has a lot more to not a lot more but it has more to offer. I think as far as features so well it was built for a different reason to in some ways. I think you've got a huge advantage having come from this from Zaman Form Zamel. Because you're used to the smallest set. Essentially that works everywhere like your. I would also your instincts. The set of tools does matter what platform is we will probably work fray absolutely benefit always opposed to if you're coming at it from a windows. Wpf that kind of thing. You're used to certain things. It's just like Zama fronts like new story and guys hold that thought right here while we pause for this very important message. Hey It's Carlin Richard here to tell you that all of the MDC conferences this year. Going online you can still attend the workshops and sessions but from the comfort of your own home. Here's what's coming up NBC. Oslo is June eight to twelve so go to DC OSLO DOT COM to register NBC. Minnesota will be September eighth through eleventh go. Nbc MINNESOTA DOT COM to register and Sydney is October twelve. Sixteen early bird discount for in. Dc Sydney ends July twelfth so go to N. D. SYDNEY DOT COM to register. Check out the full lineup of conferences at NBC conferences Dot Com. All right and we're back dot net rocks. I'm Carl Franklin. That's Richard Campbell. And that's Kency whalen. We're talking about cross platform mobile devices in in Software with no in his her thing. I wanted to ask you Kenzi. Has there been a challenge. That was too difficult for not handle in. Your experience could take a question I haven't come across a situation where I haven't been able to work through work around. Maybe what was the the challenge that Took the most time to work around. Well I was. It was kind of just like an experiment creation from me but love you and their informs is newer. The what the carousel view carousel view. Okay I wanted to see if I can implement that with you know and so I had to do some tweaking. I'm blanking on the name of the control. Need to be but it's similar movement and you have to change it to horizontal and add some animations to it but it works. It just takes a little bit of configuration. But you get there in any kind of platform anything. That's being gesture. The CAROUSEL SORTA swipe. A fact is like how do you provide proper Behavior when you swipe like that right and that's because there is a swipe control in Uw P. Right and that's sort of the metaphor of the Carousel is you swipe swiping something. His rotating again emissions like that can be tricky especially when you're running them on different platforms. But I only use shared coats. I didn't use any specific meditations of it and it worked on all four platforms. That was pretty neat. Well do I think the biggest struggle you get into if you're thinking about it? I A windows. Uw P. APP that you're now trying to scale to phones right when you build stuff mobile first giving up to the desktop is trivial but when you build stuff out on the desktop try and get on the phones you really have to rethink the UI. Most of the time right and I think that's a difficult situation for anyone building cross platform where you start so considered. Udp first so you built for you to be and then you to the other platforms. Personally I like to keep a emulator up running constantly looking back and forth because if something doesn't work right away like know Nolan tweak along it's so easy to go into a rabbit hole when you have a huge screen space right they if you think through metaphors for mobile first they will go to to to a big screen. Anytime you'll get there what What's the story with emulators. He said you like to keep an emulator up but is it possible to have an android emulator. Ios emulator maybe an IPHONE and IPAD EMULATOR. And see what it looks like on the desktop and in the browser. Let's say at the same time. Is that even possible? Well the way I do it with all four at once. Not if you're trying to like see lives change like if you're trying to use hot reload from which you can use a new knowledge. I think is awesome. You can't have all four running. You can build a one project but the way I do it. It's Hacky but I Run INTO BP. I have the Local host browser up I run the simulator for IOS. And then I have my phone plug Damai android phone and use visor to have the ice cream as well as I can see all four running together on. It's clever that's cool. Most most mobile DEB'S I've met are surrounded by hardware. Which is my happy place outlaw. Yeah we have a wall in our office of devices and we have Velcro tape on the back of vices and we just push them on the wall and we need one of them pulled off It then velcro backups. It doesn't take up desk base. I like right and everybody knows when you do that. This is how you stop it from being a drawer of broken dreams. Carl Wall to wall of broken dreams. You have to rip each one down all right sound that that is so analogous to what you're actually doing tearing pieces of my soul office. I try. Make this this eight work. Sorry I might be a little bit better. Just give me a minute. I'm going to break up. I don't know if you've had this experience. But it's like I got to work great in the emulator actual phone day are not that same now. I've never had that issue at once. No idea what I'm talking about. It always works now school now because I also have sometimes for fun I just pull up the service duo emulator to it runs android so you can deploy we know. Apps there is while we've never talked about surface on the show before that I I want one just because it's ridiculous but you know I think it's really really cool. Yeah I think you're right It's one of those things that yeah I mean. I'm the I'm the history Guy Right. There was a product that Microsoft Developing. That was called the currier and they got it in two thousand nine. They headed in prototype stage by they were ready to go to manufacturing with it and it got killed and it was this. It was a two screen tablet folded the way it was described as a mole skin notebook but the next year the IPAD would come out but they they were right there. It may not have been good enough like it. Might you know. There's always this question of have you made it Apple Newton or an apple iphone like. I don't know which one they actually made. I never got to see one but the fact that jail got that thing ready to production before they can that is kind of brutal and now essentially when I look at the duo. It's courier like ten years later. It's courier with the screen just for emojis. I have so many emojis. I can't scroll through them anymore. Onscreen you've been playing with the on this like you can push your apps out and see what they would look. Like on a duo. Oh yeah that's cool. You can download. Yeah as this. Sdk Yeah you can just have emulated running and you can pull up any of your apps you've ever built in. It's really interesting because there are going to be some issues for a lot of people in this first comes out bet because the default is kind of just put everything in the middle and the crease in the middle. Yeah just like every dual everybody who set up there. I do monitoring you discovered in the old days of windows and every dialogue popped up straddling the screens. There are two models right. This like a sort of a hand held model and then there's more like a laptop model of the duo right. Yeah those the NEO which Reina's windows windows ten axe and then the duo which runs android okay because it is a real phone like it's an actual. Yeah so it's nice to see Microsoft getting back in the phone game while concerts. Don't call it a phone. I just made a call on it. What else is it? Don't call to come back up. Yeah today's but it is interesting in the that they have they flooded the market to. I mean they announced this thing a year in advance it was fall of Twenty Nineteen for Shipping Holiday Twenty twenty. And what do you think? The chances are being late under the circumstances. Wherein already some rumors going around. They're going to push the release. No but I think the reason they announce it so early was because for developers. This is an entirely new wave. Develop like you need to write account for really different situations and they wanted to give developers some time so that they can have some dual screen compliant APPs in the APP store when they release because they don't have absence of the same At the windows found they didn't have the APPS right and so people wouldn't use it. Well you're hitting on the key point. Which is naturally you tended to say center on the screen and when it's two screens that means straddling the seem so writing your software so that it actually uses a musings the better way to position itself. Are there any other weird form factors like that that? Are you know not not quite standard that you have to think about when developing cross PLATFORM MOBILE DEVICE APPLICATIONS FOR CURRENT MOBILE? I? I'm not so concerned about stuff. That's ten years old. But is there anything else? That's more current. That's mobile has some sort of non-standard Set up like the duo certain things like notifications are handled differently on different platforms and permissions and stuff like that so understanding how these is going to interact with those understanding. How they expect interact with them is important. And so. That's where kind of your platform specific code. would come in because I thought users expect interact with their phones differently they android users because there are a bunch of folding phones these days right there. There are a batch of different folding phones. Easter there are new but I think most of them you have to use them. Unfolded got a chance to use any yet. But I think it's becoming more of a trend. I think could go two ways. Honestly one you know. All developers have to start developing for drills green compatibility because users expect them to or two they don't develop and users can't use their APPs on screen devices and don't use dual screen devices right. Duleche devices die. One thing that's coming to mind is. Samsung has a new foldable screen. Phone or something like that. Is there like a on roll up event in Don? Unroll delving for Joel Screen. There are some controls that you can use in. Marin Damon forums also has some and you can have access to properties like the hinge angle and stuff like that so you can know Nice. How users currently using the phone. Because that's the other thing too is that there's so many different positions user could have the phone in you know different scenarios so it's GONNA BE INTERESTING. It's not just folded and unfolded right. It's also our portrait integration or you in or a landscape configuration. You might put a keyboard on the lower screen into display on the upper screen like this. There is a lot of things to think about now that data's we start getting weirder with these phones. If if it had to webcams you could use it as a sort of a makeup mirror. Suppose that is a use of it you gotta make. The technology is their likelihood of breaking lower. Was an APP once. It took a picture with the Selfie Cam and the front and the back Cam at the same time. It was called like front back or something. So it's like he took a picture of yourself and you took picture something and yourself by looking at something right your reaction to it. Of course. Yeah yeah sixty cameras. Yes this is what we invented technology for. This is why man went to the Moon Right. And if you're if you're looking through the camera at What's in back of you? You get the zoom just write. Your phone could disappear. That's all weird at all. Who is it right? Yeah they didn't start stanfield those pictures where he's holding his laptop in a background and the picture on the screen of the laptop was exactly says. The laptop was transparent. Yeah Yup thing. He took a picture with him in the frame with him out of the frame and then held a laptop with a green screen or whatever and then superimposed cropped in fun because people have that kind of time. So let's talk about the state of deploying android and Ios apps these days because honestly I haven't done it in a while and the you know it was painful back when I did it. Who is it any easier? Now it depends. Apple has been doing a lot faster turnaround lately. Which is really nicely. You can get feedback on your APP. Much much faster than you speak a few weeks or up to a few weeks and now it's like within forty eight hours and I don't know if there's been a big change in the Google play store. I think it's pretty standard recently very very recently since pandemic time. I've noticed a little bit of delay but that might be because you know the world is ending in front of our eyes. So the things to do. Everything's going a little bit slower while we deal with right. I'm saying the most positive way I can as opposed to and civilization. It's collapsing around US film at eleven. We're making we're making our way. And and technology seems to be saving the day to write one way or the other clearly our priorities on software of changed somewhat. Yes clear like you were saying earlier. Like it's kind of pushing some backburner ideas and backburner plants the forefront yes. My brother-in-law works for a am travel companies Belfer VP for the travel company and of course that whole industry is dead right now on hold. Yeah and so. He's mind to do this whole idea of virtual tours and virtual classes and Italy learning how to make pasta stuff like that and they were able to do that now because they have to to run him so it was nice to see these companies pivoting into new ways of using technology. I think it's really interesting. Yeah I have done. I have hosted a couple of tours of aviation museums. Carl will not be surprised via zoom Because folks were promised things for the MVP and stuff and so you know. Oddly enough I can tell some stories about airplanes so we it was really enjoyable. Actually because some of these museums have really great three sixty camera tours where you can sort of walk around the museum and go to various exhibits but the information is relatively limited and then you know put a throw a storyteller in there so I can like look at this. Look at this vehicle now go round inside look at that inlet designed. Let me talk about this. And let designed for a minute. Why does this look like this right? And IT'S A it's I've always wanted like. Vr Cameras for the Great Pyramid. Go to the Great Pyramids kind of a pain in the butt but to be there and use. Vr affects where it's like. Now it can be inside the king's chamber now we could shrink down to flee size and go up one of the ventilation to Access that kind of thing you could explore in a way that you couldn't do in person people are trying to do that a little bit too with even just like team meetings. You feel like you're actually Ansi meeting or in a happy hour. I think that's pretty interesting. One of the things that I do with V necks is. I have a shot of an auditorium from know the back and there's a podium and there's a desk and be mixed has cameras basically so you click on camera angle. It's not really an angle but it's a frame so you can zoom in on the podium. Let's say and it goes from the back in zooms in on it and then you can zoom over to the table. Maybe there's a screen behind you were with a powerpoint presentation and he could you know let's say we have six people on a panel. They all come in on different channels. Like you guys are now and we can put them behind the table and if you get the angle of the camera just right you know that you you tell them in advance okay. You're sitting stage left in seat one. So your camera needs to be at a thirty five degree angle from you looking straight ahead and it needs to be out for six feet and then up for feet looking at you right so if you get everybody's math get everybody's camera angle right and get them looking at the right spot. It actually looks like people looking at each other sitting around a table neat trusting. Yeah just takes a little more work to work with people who are going to be in the shot then. Your typical speaker at a conference is willing to tolerate. I`Ma I going GONNA do. My stem talks for the middle schoolers is a dumb before. But we're going to have to do it all remotely so kind of needed greenstreet really want to be able to walk around inside my slide and talk to the talk to the kids while talking through stuff like space travel and automated vehicles and things like that. Yep Yep good all April Julia. It's fun to software person right now. Isn't it like a as I think for the most part the people I've talked to were just busier. A love this true for you Kenzi. Oh Yeah I think Vizier in that sense and busier in answering members calls about how to connect to their WIFI. Everyone reaches out to the the techie in family. Then you have like mother I say. Do you want me to send you a Webcam. She goes ask. Anina Webcam kind of thing. Now it's true not everybody's not everybody's on board. I also think that culturally because we live with such a high rate of change that the pandemic to us just feels like more change. And we're just trying to find a way to work with it. Yep I think I don't know I I still get waves of existential threat every so often but for the most part it's like Nah we're trying to solve the problem work through the problem. I wonder too. How much of this change is going to stick around after life goes back to whatever normal? That's going to look like because inspe- even in my experience extended family aunts and uncles and stuff. We've been doing a lot more. Zoom calls lately and know that technology is available to us before we didn't typically use it to have big family gatherings but now that it becomes a norm we have been. It's been really nice to be able to connect with family in a different way. Them used to right. Absolutely I find a lot. More cameras turned on. Now we may have changed the tone of of online meetings that he's cameras kind of expected today and people working hard to make those cameras look decent to like try and buy a Webcam right now. Good luck I wonder how many companies will start adopting remote policies partial policies because they realized that they could do it. I've already heard of this happening already. Yeah well the bigger thing here is now that you have adapted how you going to take it away right now used to be you know in. January. It was impossible for you to work at home and now here we are in. May and you've been working at home for a couple of months and me. You know I definitely. I've talked to some places where it's like. Now they got little kids at home and there's only so much room and it's like I'm really look forward to get back to the office but there's a lot of folks that are not that way like I always wanted to work this way now. I've done it for a while and I'm figuring how to be productive because he's still do have. The stress of everything is different. People are not as productive as they could as they ought to be but eventually they may not be willing to go back. Oh boy I'm really looking forward to by our commute right. Yeah and I think it shows that you know. Of course. People aren't as productive as they would normally be and that's absolutely okay but I think it's showing companies. It's possible to do remote. Yeah my company's been remote for a long time and it's nice to finally see other companies like adopting some policies that make it easier for employees flexible because I've loved working out because it gives you a chance to you can change the laundry over mel the Day Aura. Have lunch with a friend. That's easy you don't have to interrupt your whole life and easy to integrate your life into work more and doesn't feel like this rigid schedule. Langmore but also comes with some precautions for sure but it's also Tech tends to have that Tennessee where we kind of blend our work in our regular lives together so in some ways we've been more tolerant to this is interesting see of other industries of other worlds are going to be okay with us. I've seen some good tips online for people who are now working at home to sort of help them You know by doing a morning ritual before you go to work which might actually include getting in your car. Go drive through. You know whatever coffee place get your coffee come back and sit down your office like A. You're actually physically making yourself get up and go out the door you know. Make yourself launch. Put it in a bag even or just get a bag. You don't even have to just so that you know odds lunchtime right a little the little ritualistic things that you can do to delineate between okay. Now I'm work on home Yeah some people put on like a full work outfit. You know. We're very professional outfit that you wouldn't normally wear at home. I'm to put on their shoes and they go into the office. You know stuff like that. Is I like that. But they don't wear pants choose on my wearing pants good. I have talked to some folks who were new normally. Their work is meetings by the because they're normally in an office break between each meeting because you transition from room to room. It's worth another on zoom your schedule them back to back and the frying themselves the realizing I actually have to put a ten minute gap between meetings for to clear my head just the same for Sanity Sake and It you know it's like go get a cup of coffee or the you know the Beverage of your choice to break between each thing. Otherwise all the meetings are garbled. Essentially you get to cooked well. It's not all Luneau. All the time is it is the life where leading right now since very cool so Can you give some resources Kenzi? Absolutely know their Docs are on platform. Dot know they have a really cool playground. You can use s alertly code pen type thing where you can try out some Zeman's Iran in your screen right in the Browser. You can download their visual studio extension on their website. And then you can start running apps absent visuals studio. It's breezy and they have their twitter's very active. They have a lot of resources available and there is just know where you can see the open source project some samples. You can run locally so you can see what it looks like and awesome. Yeah that's great. Well Kelsey thanks very much for spending this hour with us in you know. Our shows tend to be mostly about the topic that we're talking about but we always want to talk about you. Know How people are coping in the in this time of Corona virus. So I appreciate that discussion as well. Thank you thank you appreciate having. We'll see you next time on. Dot Net rocks dot? Net rocks is brought to you by Franklin's net and produced by top studios a full service audio video post production facility located physically in new London Connecticut and of course the Cloud Online at P. W. O. Peeved DOT COM visit our website at dot any R. ROTC AS DOT COM for RSS FEEDS DOWNLOADS MOBILE APPS comments and access to the full archives. Going back to show number one recorded in September two thousand two and make sure you check out our sponsors. They keep us in business now. Go write some code. Cnn Time Lab.

Carl Franklin Microsoft developer Carl Iowa Richard Campbell Mackenzie whalen US Mike Warren Sam Yeah twitter Blazer Wi Apple Zamaran
Configuring Your Cloud using .NET with Joe Duffy

.NET Rocks!

58:22 min | 1 year ago

Configuring Your Cloud using .NET with Joe Duffy

"If you've had automating your ass peanut deployments on your to do list. Now's a great time to give octopus. Deploy a try the starter edition. Lets you install octopus on your own infrastructure infrastructure and deployed. Is Web servers azure websites in pretty much anything from no Dacuda Netease and they just made it free for small teams. Give your team a single place to release deploy and operate software with octopus. Deploy find out more AT OCTOPUS DOT com. Welcome back to dot net rocks Carl Franklin and Richard Campbell. And we're back in studio. It's a weird time shift time for us. Because we're devin ascension right now. Yeah sure we're having a great time. Sure we are. We recorded this last week. But it's next week now and now you and I are probably in a bar in Las Vegas. Your show me some Scotch. I've never had before and telling me a story I've never heard before. That's probably what I searching folks like. Bring me we go to good whiskey bar and you say what's your favorite whisky. Let me give you something else right and take a little slot machine sound in cigarette smoke with that by while you're at it. Yeah Hey I got something fun for better. No Framework Sorolla crazy music awesome. It's GOT VIDEO DOT J S. Yeah you would think videos done right. HTML five you Lincoln and pretty darn file and it's done but if you WANNA do more with video like get all sorts of stats stats. While it's playing and do looping stretching you know the playback speed and all that stuff you need some sort of framework so video Jaaz is an open source web video player built from the ground up for in html five world it supports both html five and Flash Bloomberg. Oh my goodness I know I know as well as youtube and video through plug ins are sort of the big players then. Yeah and it's got a Latta knobs I get that. Yeah so that's it. Women Yeah. Video Noah learned love it. WHO's talking into us today? Richard grabbed a common show fifteen ninety six which ended about last year November of two thousand eighteen. We've talked to one Luke Hoban about but a product called blew me. That's right I remember that I I. I thought it was a Middle Eastern cheese and I think that's blue. Hello set it on fire. That's right these comes from Alex Claus who says it's worth noting that blew gloomy is not unique and not the first of its kind. There is a popular open source. Solution called Tara form which has done a show around which seems at least today to be more popular Louis by the size of the community and is a blog post. This is a Lincoln Highly the differences between the two. The Big One being being tariff arm has its own language and polygamy gives you choices. Dallas goes on to say that very thing that it gives you a choice of using the language you want but but that only really matters in syntax contest because you have to work with the principals in architecture plumbing but it's still young project only launched in June of twenty eighteen. Admittedly this is from from November of two thousand eighteen this comment and now a year later and we'll see how it turns out. I'm like yeah I think we will see out turns out allies. Let's We'll talk to Joe today about what's happened in the past year right. So thank you so much. You're comet eight. Copies Bukoba is on. Its Way to you. And if you'd lead copy musically read a comment on the website at Don Iraq's dot com or on the facebooks because we publish every show there and if you common they're already low copy musical by and definitely follow us on twitter. I'm I'm at Carl Franklin. And he's at rich Campbell in. Send US tweet you know but NO FLASH NO FLASH MAKE MAKE THE BATMAN STOP. I don't even know if that's possible. I know it's not possible tweets don't support flash but you don't even think about it that's how about that all right. Let's bring on Joe Duffy as Richard was referring to Pollux me. Joe Is CEO of Said Company. And it's a Seattle startup making it easier a year for teams to program the cloud prior to founding Palu me in twenty seventeen. Joe held leadership roles at Microsoft in the Developer Division Operating Operating Systems Group and Microsoft Research. And he's been on the show the first time in two thousand six show one sixty six talking about currency and then he was on again in two thousand seven talking about the task parallel library. Wow Man twelve years eh crazy. Welcome back thanks BECCA. Just WanNa know what what did I say wrong. Last time that I didn't get invited back for twelve I kept working on secret stuff. We couldn't really talk to you about that is true. I suppose that it's the same reason we don't Don box on the show these days when you shipping product and you WanNa talk about it that makes for a good show when you're working on these started black projects or not allowed to talk about not said if you could show yeah right so let's talk about Palu me Just briefly. I'm we talked. Richard talked about just in there and the difference between it and anti-reform but Just give us a elevator pitch here. Yeah happy to say. When I was at Microsoft I was doing a lot with you? Know programming languages images and operating systems and this is before you know modern cloud architectures with a containers and service And then you know I I started working more with modern Oh you know architecture like Azure and aws and given my background. I really expected that I would be able to as developer. Just write code food and have a cloud application that was using the latest and greatest of what the cloud has to offer right And then I'd be cooking with gas and afternoon. The the reality was was very far from that. And you know my background was not infrastructure and operations and so when I started you know looking into you know. How do we get to where we they are really? The past has been you know. Infrastructure teams and development teams just worked completely independently from each other these interface with each other through ticketing systems. uh-huh and you know we were talking about you know pace of change every quarter you know with long planning cycles and really what I what I saw was an opportunity opportunity to really think of. Hey as developers were building distributed applications right that that is what the cloud allows us to do. And so I you know when we started pulling me we. We approached the whole space from that perspective. You know we're trying to help. Teams build distributed applications. And and you know manage them and and and you know Upgrade them and you know all the operational complexity still there really approach it from that perspective. Which frankly some of the work I had done on? You know MIDORI. Operating System really gave me a different perspective there And that's why you know the difference that Richard Mention you know. We raced programming languages. So actually just we just launched dot net supports. You can actually just right all your code and C.. Sharp end up with a distributed application that uses the best of what the cloud has to offer. And that's that's really powerful. Really exciting yes. Sure is one of the things. Luke really hit me hard on which appreciated which is idea that. And I've certainly had this experience that I'm building configurations code stuff a lot but every APP I've gone every workflow of got the codes bespoke like it's it's always unique. The idea of reusing code project to project beyond cut and paste doesn't seem to exist and it seems like like police headed that path that I could build this smart set of scripts that could work across multiple projects and be maintained as its own thing. Yeah definitely I think you know. First Light Bulb really went on when we worked with our first actual customer and we went into the account and they're they basically said. Hey we've got you know. Now you know tens of thousands of lines of Yambol and Kinda don't understand how all of it works are devops architect recently left You know and then we we were trying to wade through it and we basically say okay. Let's take a step back. What are you actually trying to do? And they were like well. We want containers in a database. Mike Okay that should not require tens of thousands of lines of Yemo and the crazy part. Is You gotta work with the Second Customer and the tenth customer and the Hundredth Customer and are all struggling with these same same challenges you know. Some friends of mine started a company Hefty Oh here they coined the phrase Walls of the animal in mountains of Bash Rush. That's the state of affairs today Paul. Yeah you're you're totally right about that. If I I never have to edit another file happy man Oh yeah I think I think all of us would be happy honestly sometimes we get flack for hating on Yemen. Gammel is bad. I mean Yemen's great but what Yama was designed for was simple configuration tasks. In what what we're using get four now is actually application architecture right. We're actually putting architectural decisions in our Yemo. And that's that's where I draw the line You know I like to say the cloud is it used to be an afterthought you know you would take your application you build n Tier Apps and then you throw them into virtual machines and life was good and you know every year you added one more virtual machines start three and then you have to scale out the next year because you get more load right these days. The cloud is actually part of your application's architecture architecture and we think that we should approach the problem from that perspective. Yeah these days. It's it's part of the pipeline right. I couldn't do the testing the way I want to do it. Without the clogs I light up a bunch of instances and distributed Tesla's that it goes quickly it's it's embedded into everything awesome. It's designed from the cloud and the outset and your little minds. We have in some respect. It's like Remember v Visual source safe. Like we got what we got to a place where we were doing stuff with that. Nobody expected to do and oddly enough. It wasn't great at it. Yeah and honestly AH. We've got great tools. Great languages in but I think that where we went wrong with cloud. And it's not even that went wrong. I think we just sort of became embroiled frogs slowly over time to realize where You know we. We basically built to parallel stacks right. We had the developer stack and then the infrastructure operations in stock and they were completely destroyed. And what we're finding these days. A lot of our customers. They they want their development teams to work better with their operations teams games. They want they want to be able to be a little more flexible about you. Know who does what and why And the existing tools you know sort of like your analogy were sort of bending and twisting them and trying to make them do things they were never designed to do And so that's also maybe a little bit of a contrarian perspective perspective. That's different with Colombia. We really saw that. Hey where this world this goes is you know developers and infrastructure teams work together Very collaboratively agile. It's not it's not a hard wall between the two sides of the house. It's funny the cloud has come up the same time. The devops is really taken a hold and so we're learning new tools as well as learning new ways to work together and sharing skills across. Yes you know. I'm more and more on the run. SL We're talking to it. Folks that are like I have source code. I need to check in in places. How do I do that? Yeah it's it's interesting. I was that Just a couple of weeks ago. Over in Belgium there was the ten year anniversary of the devops stays conference which is extensively where that term was coined And it was interesting to reflect on all the progress we've made all the progress still left to be made You know the original vision of devops have opposites funny. Because sometimes you'll see somebody that titled devops engineer or something like that original vision wasn't that you create this new organization it was that you'd actually have developers and operators working together and not a job. It's just a thing we it's a movement towards working differently exactly and we've made a ton of progress. I mean really. This really laid some of the foundation that allowed us to be successful with Colonie. You know when we go top rations teams and we say. Hey you can do your infrastructure's code with python they're kind of like yeah. I understand Python We just released release dot net support. We're actually actively work on powerful support and so for connecting with you know the the windows. It community yeah. You can do structure in power shell. It's great but then on the other that ended October developers You know they don't want to write in Yemen or some domain specific language that limits. What they can do they? They already had their editor. They've got their test frameworks. They know they know how to write. Code in and leverage you know the new get ecosystem whatever they need to do And so it's trying to. It's marrying those. Two sides of the world was was difficult but is very powerful. This is a huge step forward to folks WanNa work in Dot net. That makes them happy. So congratulations like heck of a milestone to start incorporating the whole dynamic core. Yeah thank you. It's it's funny because when when we launched since we launched It's it's become the number one requested feature and I think part of it is a lot of the founding team came from Microsoft often worked on dot net and they. A lot of people are disappointed that we didn't have done that support on day. One including you. Did you really have anything to do. With dot net core core. I think you're more. The original dot net. Yes so I'm I kind of interesting Bekker's I joined the dot net team right after the one launch Help with generics link DOC and task parallel. which eventually led to a sink? And then I kind of went away for awhile and went on you know This distributed operating system ended up back in windows and before he left Microsoft. I was back in depth for a good three years. I think And as soon as I got back actually Soma. WHO's running David? The time kind of pulled me aside with him my first week on the job I was managing all the languages groups. You know. So the C.. Sharp f sharp vs sepals plus kind of looked the said joke all dot net needs to be open source and it needs to run on Mac and Lennox. Can you figure out how to do do that. Sure nothing big in your spare time. So that was my number one priority other things to do but and it was convenient because I just you know we'd reordered to the MIDORI project. And you know half the team came with me to decorative is able to actually take take a lot of the great folks on that team and give them sort of a new mission in life which is to go chase this new project and so it's always a bummer. When you're working on a project and it kind of Midori never shipped and so it's really important to me to find something new and exciting for all those amazing people to work on and this was just that opportunity so for those? Who Don't don't remember MIDORI? Tell us about that yes. MIDORI was basically a re-imagined operating system from the ground up so we didn't use windows. We didn't use Lennox literally rebuilt from from nothing. It was all going to be managed code right. It was all managed codes. The idea was that we'd focus on safety so typing in memory safe but also can currency because multi-core in distributed Was a big thing and so we wanted to make sure that you know can currency safety as well and it built on top of you know Work coming out of MS are with the singularity project around how you can have actually efficient. An efficient operating system built in safe code. which obviously you know the prevailing wisdom at the time was like? Hey you need to write operating systems in searcy plus plus an an assembly because you could never get level performance otherwise and unfortunately. That's what leads to still to this day. All of these endless streams of security problems So we said hey if we build the whole thing with type in memory safe code and we can get it to perform. Well that's just game changing. That's basically what the industry needs for the next fifty two years right because every operating system tends to stick around for you know twenty thirty fifty years and so we were really looking at that. Time Horizon So we learned a ton from it. We actually folded a lot of the lessons. Learned back into the Windows Organization back into dot net their features still to this day shipping in Dot Net and C.. Sharp were inspired by the work. We did Actually C. Plus plus we ended up standardizing new Constructs to help safety in C.. Plus plus a lot of good things came out of the project We just never kinda shifted as a new operating system obviously complicated to do when you're Microsoft and you already have an operating system and dominant one at that. I do like to call it a project object though because I look at Oslo the same way that these were experiments in how things could work and maybe they make a product maybe they don't but invariably the learning is valuable one hundred percent agree. I think when I go back I would do. Things differently for sure to maximize is sharing the learning's because in hindsight that was the biggest outcome from the project is is the learnings that we had we should have. We should have published more research papers. I probably should have open source it so people can learn from it and it would have been a lot less secretive but you know this is. This is the Microsoft of two thousand seven. Two thousand eight non the Microsoft first off of two thousand eighteen two thousand nineteen. I think these days for sure it would have been open source much more like you know. See with the Orleans project. Yeah Yeah Yeah which ultimately did kind of become productized to even necessarily a revenue generator. But it's something that people use. Yeah and that's it's an interesting lesson. Learned in kind of how how software evolves right. You don't always know on day one how it's going to be used and if you do it in a closed source proprietary way in a secretive secretive way you really limit your ability to to leverage those adjacent cities or shifts. The projects focus over time as you really identify. Oh you know. We started the project to do X.. But it turns out like why is actually the thing that that people value and yet it requires change in you know slightly adjusting things. But if you're closed source you Kinda can't. It's harder to take advantage of those opportunities without a doubt when we we did a show about Orleans when it was still just an MS project for supporting halo and we were just exploring actors in the dot net world then accord now. It's a full bore open source project. Of course we've also talked about ACA dot net and sort of other actor approaches that ability. Yeah the Orleans project. Actually you know we are one of the folks from. MIDORI had gone on over to the Orleans. Projects is that was something that we were always you know keeping an eye on and talking to those folks and but like you said they got it right. I Open sourcing and doing that early. Yeah Yeah but anyway they shooting one of your folks went over there. It's like these sort of incubator type. Projects is something like Midori that educated so many people somebody for weighs like I gotta think there's a ton of teams Microsoft that will benefit from that even though it's hard to point to it yeah I certainly hope so. Honestly that was the the best part you know. Even though you know the majority team I think at its height was over. It was over one hundred people in probably fifty folks with me Over to wt when I went back That was as an exciting time trying to organize reort across you know. Three major divisions from mm-hmm Amazon to Windows two decorative but Once that was done it was great because you know honestly. I'm I'm really proud of the fact that I'd say out of those fifty folks you know a good forty forty something are still. They're still doing great work on the C.. Plus plus compilers post language the C. Sharp Dot dot net the Jit compiler the run time and so that that was really good in because of that all those people remember the lessons learned and are able to really spread the word and say. Hey when we're facing this problem and Doria you know for high performance as synchronous streaming. You know this is what we did and this is the results that we had and so. That's that's really nice. Nice to see that still you know multiple years later happening now your CEO like have you ruined your job. Yeah I I forgot how to code so I just I just push pencils and spirit spreadsheets all day long now. Just sign stuff all day long. You got lawyers around you. That's right. Yeah no I've always wanted to start a company honestly. Yeah before going to Microsoft die. I toyed with doing his startup. I I should start a consulting company when I was in high school to try to quote get companies to the Internet. This is back in the mid nineties when that was the thing just to date myself even further her I always enjoyed the business side of things as much as the technology. And it's really hard at a big company to be able to do both And so I I knew eventually I was going to start up and I just had too much fun. You know working on dot net and MIDORI and Kinda felt towards the NFL. y'All yeah I still learning a lot and you know I'd never managed a team of that size before and More I stayed at towards the end as a sense of loyalty and purpose for the for the folks that were in. The military team. Wanted to make sure that they landed in a great place for themselves and once that was done in Donna core was on a good path. I was kind of like. Hey now's the perfect. Take time I'm going to take a bit of risk in jump and I'm going to start something of my own and it's been a heck of a ride but it's it's wonderful. I do think your timing's great like blue. Cloud is becoming this big thing and we have this problem right. Yeah animals kind of gotten out of control and and this is going to be an impediment to progress. Yeah I think honestly it's funny because when we launched you it feels like a long time ago but it was really a little over a year and a half it should did not even a year and a half a little over here and I think the weeks leading up to that. I just saw all this dissatisfaction on twitter with the animal. Just gambled You you know and I think we timed it really. Well I think honestly we'd launched even A year earlier Two years earlier for sure I think would've been a little bit too too much ahead of its time right In terms of the you know the idea of empowering developers to do more infrastructure and work better at their their operations operations teams These days or last year. That's really were seeing a lot of success with an and I think that's that's the thing going Ford that's really GonNa be fueling the innovation in in in the developmental space. So who's writing gloomy code then is it. It folks death yes yes the magic of a plummets both so you know. We just launched some play books and libraries and tools around coober nineties candies and communities is a good example. Where the way the way I think of it as in most organizations there's an API between the team and the operations team team and you get to choose what that API is right the API historically has been a ticketing system when you need something you file a ticket and obviously the latency you for that? API is quite slow right. 'cause follow ticket and you wait weeks to get your virtual machine provisions At some point people started creating you know you is for that for at that interface between the teams so developing VM. They can go pointing click and spin up a VM. So with limit really that. API becomes code a so the infrastructure team you know. Let's Kuban as an example infrastructure team needs to spin up communities clusters manage them. configure them scale them across. Yes you know different regions different geographies making us plumey to do that. And the writing in whatever language they're familiar so python you know Mm Java script go see sharp You know obviously for operations teams a lot of them opt for things like python But then on the other side developers need to create container based applications. Maybe they need database or they need a container or a civilised function and so now they can just write code to in their language language and now the two are working together. This kind of powerful. Because it's one unified way of delivering software rather than having one side using completely different tools and practices than the other right it's actually good for for like CIO. Who wants to make sure that you know there isn't chaos in how their teams are are working working So it really worked great for both sides and you have Obviously you work with all the clouds. I mean that's a lot is there are. Are there any holes in it or are there. Is there stuff that you're still trying to To snuggle up to yeah it's been challenging to cover brought all that surface here. I think we have three dozen different providers now covering you know. Aws azure cloud Venetis. But then also things like you know. Data dog new relic get lab integrations right Because it turns out infrastructure spans not just the clouds but also these new south platforms as well and staying up to date with the latest and greatest is tough but or partners and we were actually working with Microsoft The Google and Amazon on on ways to automate some of that support Because they publish. API specs right swagger open API specs and so by leveraging those and working with them or were able to do increasingly more auto jen for the API so that when they knew that same day we have support for. Yeah against just thinking. That's got to be the bane of your existence is this constant changing of API's and adding Nia when new products and services come onto the into the four into the fray yet. It's I think we've been clever about how we can stay on top of those things and so we tend not to fall too far behind. Its but it's it's definitely a struggle. I actually kind of in an analogy I use is you know. Think of The relationship dot net and windows. You know when windows ships new you know native. Api Do have that capability in Dot net. You know If if there's some new file system capability system I o have that capability or does it not and Ryan the the answer used to be. We'd actually back in dot net classic if you will We'd actually take win thirty two features kind of expose them directly in dot on at core. You can't really do that. Because Donna chorus run on multiple platforms and so unless every platform has that feature. It's it's difficult to expose and but you know for those reasons you're able to actually program at a higher level of of abstraction sometimes in Palu me that helps to to basically Fermanagh more logical level that makes sense for a developer rather than the low level bits and bytes of programming to win thirty two directly so that your own own scripts aren't resonating the API changes either correct. Yes and so you know that doesn't always work. We're definitely you know we don't want to be a lowest common denominator but we we enable you to program at that level. It makes sense for you. Like maybe you're the kind of person that just wants communities cluster and you WANNA configured the standard way or you just want to run a service function every night at midnight. That's going to do some archiving or something you and you don't really care that on Asher you express that completely different than than aws with cloud wash alarms and all these things right. Maybe you just as a developer WANNA say hey every night right midnight please run this function And that's a much nicer programming experience because less complicated less complex In insulates you. In in case you want to move to a different cloud and Guys hold that thought right here while we pause for this very important message. Well all my first online blazer workshop was a huge success and the next one is scheduled for Monday November twenty fifth in one day. We'll build a server side blazer. PWA WAY UP COMPLETE WITH BLAZER COMPONENTS E F core API controllers signal are as peanut core identity Java script interrupt and user management using the Free Visual Studio Twenty Nineteen Community Edition and Dot net core three and. Hey if you can't make the workshop you can buy the video in take the course on your own time. If you're right there go to blazer DOT APP v NECKS DOT COM to sign up or purchase. The video pay Crown Richard here. We'd like to tell you all about the upcoming conferences. N. D. C. is hosting all around the world and DC. London will be January twenty seventh through the thirty first I go to. NBC Dash London Dot Com to register. We're going to be recording. Some episodes there come see us in the fish bowl in DC security. Oslo is January twenty the second through the twenty fourth earlier discount for NBC security. Oslo is December second go to NBC DASH SECURITY DOT COM to register in check out the full lineup of conferences at N. D. C. CONFERENCES DOT COM. And we're back. It's dot net rocks Carl Franklin. That's Richard Campbell. and that's Joe Duffy and we're talking talking about polygamy and code infrastructure as code in once you get into the world of code now you are open open to all of the the things that we can react to you know with with Triggers and Web Hooks. And all all of these things a DC customers utilizing the these types of event handlers for infrastructure deployment does that make any sense are are people doing more with it than you thought they would. Yeah definitely early I think having so if you look at sort of the maturity life cycle most people doing cloud infrastructure they start by going into the console and pointing digging clicking to create things right Do Point and click you. Say Hey give me you know. Give me a container. Give me this thing database and then you quickly realize. Oh No if I need you to create a new environment. I have to go like manually pointing click again. And that's not easy to automate. And so so plume gives you the An infrastructure is generally generally not specific. flew me but gives you a way to fully automate all that and once it's automated. You can kind of automate the automation if you will with with Web Hooks Hooks and so we see people doing all sorts of things from you. Know a lot of people doing get based deployments and so embedded in their get hub workflow workflow with polar requests and we have actually support forget about actions. And so if you want to trigger deployment that way you can you want to trigger it in slack slack. Have a bunch of folks who you know. Slack based deployments and so you can go into a channel and say you know Hey Ford Slash deploy now We actually use that ourselves sells for for deploying actually a combination of those two What we see other people you know automating tests writes maybe every time to deployment you WanNa Fire Web Hook and then go tests service to make sure it's still works? Yeah yeah so super powerful to be able to automate the automation speaking of testing. Can I write test code against my Palu me scripts now like does that make sense or is it. I'm newly can I actually. I hosted a track coupon a talk on testing and ask ask the audience. You know how many people in the audience test your application code and thankfully over ninety five percent of the audience raise their hands some the May have been lying but at least they know they should. That's right but then I asked the question. How many of you test your infrastructure code I maybe two percent or something like that? The only way the test is to run the script and did it make the correct infrastructure. But that's not testing guts operating right but now that you've got infrastructure as code as real code you can use your favorite test frameworks. You can use Roslyn analyzers to check your configuration to make sure it's not you know making obvious mistakes. Most people today for infrastructure even search code products. The ones that don't use real code they. They don't find out that they had a syntax. Error until you have five minutes into a deployment when rights I just you know host production because I had a common in the wrong place. Or if it's the Animal God forbid I you know I put a put an extra space somewhere right because as white space sensitive. Yeah but even further. You know. We'll all you'd actually test not just the basics To make sure compiles and does the right thing from a unit test perspective but also integration tests to make sure that when when you combine different infrastructure modules and you do a deployment. You actually get what you expect. And that's that's really honestly I will say it's far more powerful and more popular blur amongst our our users than I ever imagined. It would be at the start. I think this is a big trend that we're going to see over the next few years I he's we'd certainly you could test the deploy into a test environment to see if it worked but when it doesn't work just going through line-by-line trying to figure out what went wrong. I think they can. A good testing is actually points of the areas that are problematic without having to decode it. Yeah in especially you know. We talked to customers where they've got hundreds of micro services in each one. You know maybe it works fine in isolation but then you add them together and there's some weird combination that that causes things to break and the right problem that I see is a lot of people and this gets to you know earlier. We were talking talking kind of the current tools. It's kind of Like Square peg round hole where we're trying to make them work so you know we can't. We can't really do the testing we want. So what do we do we we mock the environments. We create a rake environment on our desktop. None we think approximates the real environment but turns out. It's never gonNa work as well as just actually deploying the thing to a real you know cloud account And so we we make that really easy to basically. We have a thing called a stack a stack. Doc is basically just an instance of your project and you can create any number of stacks you can have deb stack per developer. You can have staging. You'RE GONNA Production East Coast Production West Coast All you know you can create any number of these things in and you can even spend them up. You know we've ephemeral stacks and so in a request you can spend up a whole copy of your infrastructure test it and then tear down as part of the port request validation And that's that's fundamentally game changing when you do that. Now get back. I think. That's sort of the Reggie radio question. I always start talking about this idea of building scripts that were crossed many apps. So you don't have to cut you. Know in their new security rule comes down. You don't have to go to every free APP scripts and modify them. Is this really achievable now. Can I have a set of abstract classes. That apply common rules across my projects. Yes absolutely absolutely we. We actually have our. Because because it's just languages we use packages use familiar construct classes and functions and package managers so so we actually offer a number of best practices. We have this thing called crosswalk which is a collection of libraries and best practices. We have for aws in juvenile and so on For common patterns that we see recurring from one customer to another will you can create your own It turns out. You know we work with a lot of consultants Sultan's where imagine a cloud consultant right. Your job is to go in and help. Customers be successful in standing up infrastructure and cloud applications in. And you is he the same patterns all over the place but the tools you know the current state of the art you basically copy and paste scripts between every account and is no real reuse and the problem is when you fix it fix a security flaw maybe realize oh no I just basically replicated the same security problem across one hundred clients. What do you do do you have time? Yeah Yeah one time you go back to them and manually copy and paste the fix right Whereas using impact managers you can actually say? Hey you know clients version one point. Thirteen is out and it contains a a critical security. Fix please upgrade And then they go upgrade gloomy deployment and it says hey you know we're going to you know. Change this configure for you and then you're not. It's it's the same way we we do software with applications right and so we like to say basically. We're we're bringing all of that software engineering discipline that we've developed and learned and grown onto love from the application domain chew infrastructure as well We are solving essentially the same problem now and with the same mistakes being made. Yeah and honestly for for a curmudgeon like me. WHO's been around for long enough to see these patterns recurring in just in a different slightly different context? It's really painful to see you know US recreating and repeating the same mistakes and so we basically said hey we can you know kinda stand on the shoulders of the giants if you will and just leverage all those those lessons learned rather than having to go through for the next ten years. The same set of mistakes and lessons learned Yup and and by the same token. It's like you could only do this now. It was only when we got to this level of pain that people start looking for alternatives are interested in in a more sophisticated way because this does take more thinking to actually build out your deployment tools packages and have them independently maintainable. Because now you've got to think about what am I class groupings. Look like what's going to resonate would change totally and I you know honestly we often see this sort of pendulum swinging right where we go from one. One thing we swing to the other extreme and so I actually I think you know there's still a place for you know not you know. Some folks aren't comfortable with a full programming language. In in. You know I think a subset of Python is still declared enough that it feels like You know familiar configuration language. But I'm not I'm not going to stand here in make judgement or be elitist about you know. The people should use programming languages. I I do think in solves a set of real problems and so for people that that have those problems. I think it's it's worth them considering but Yomas working fine or configuration languages working find that. That's okay too I think you know we're we're just evolving and I think you're absolutely right. The level of complexity that that we're facing now is really. What's the straw that broke the camel's back in a sense right and so we're adds complexity in language to simplify the overall maintenance and operations problems like Lexi's always going to be somewhere? You just need to know where it is. Yeah exactly and the complexity is still there. You know infrastructure. It's not easy You know I think it will get easier over time and obviously you know. Microsoft Amazon and Google are working hard to make it you you know as simple as it can be and so as it gets simpler things just get better but there's complexity there definitely is complexity. I mean setting up a network is complex. And that's that's why for me. You know infrastructure and operations is is a super important discipline right. Those folks understand how to build Secure reliable networks and in manage security policies and scale things in a cost effective way and so this is not about replacing leasing offices of function. I hate the phrase no ops. I think I think it just helps teams work better together and share and reuse you know. That's best practices martyr OPS SMART OPS. I love it. Yeah it's fair. The scenario was thinking is the easy way was embedding the the credentials directly in the code. It's just dumb. Do Right. The more complex thing was to properly token is it to a key vault with separate set references. And that's harder but ultimately a superior more scalable way the fact that the code that invokes that is now in a classy. You don't have to remember how to do who it each time. You just call the classes they go get my credentials ply them like this is the next level of thinking yeah and security is also important. I mean we haven't talked talked about that. Yeah that was one of the other frustrating things for me. When I came to the spaces you go through the docker getting started to terrell or the Cuban Eddie's getting started and then based at the end it would tape es please don't do this in production because you're looking to go well okay? I didn't mean to do something insecure but this tutorial royal just like basically baked in something insecure because it had a hard coat environment variable. That had a secret or something and go like okay. Well I WANNA do the skirt thing. How do they do that? Wow Wow okay. That's a whole different story. Asked the Mongo. DB folks whose default deployment had all security turned off and turned into a major exploit. Yeah and so for us. That's a for for me. I am sort of a little religious about that for on the team. It's like hey every code samples should be secure by default and if that if if that makes the code sample too complex. Let's fix the system so that the secure thing is not complex. Let's change the sample insecure thing. Let's fix the system so it's easy to do this secure thing and I think that's a different way of approaching things but a really important now and I appreciate that philosophy if you have to put at the end of any sample sampled. Don't do this in production. Don't publish that that now. You get to the essence which is security does make things more complicated. We need to make better security tools absolutely. I think we've come a long long way I think there's a lot of a lot of great products out there. It's still it's still done as a sort of afterthought integration in most in most cases in so for Pollux me we. We tried to make that as it's easy to do. Just by default as part of your developer inner loop Always still got a ways to go on making things secure by default I would be remiss if I did. We talk a little bit about power shell because then it hit me. The power show is a great description of that. You can use his very simply you can use this very complexly to whereas power shovel in this story. Arc Now yes. We just launch dot net in preview Basically we want to start getting feedback from people on the shape of the API is and you know certain aspects of things like you know ase inc are complex in. We think we have a good solution but we want to make sure it works for everybody. Everybody so that's where we started. And so you know any core language works you know C.. Sharp of Sharp v We haven't done an example in Fortran Tran- yet but that's on the list of your list. Man I I can't I can't I can't wait to see you know. A modern coober nineties application occasion written in Fortran that's amazing. IBM still maintaining a version of Fortran. Dot Net and Fujitsu still maintaining version of COBOL DOT net. Ah Ha Kabbalah might even be better Yeah but but but yet power show. We've definitely had folks ask about it. In in fact I think the same day that we we launched the dot net cor preview. Somebody had done an adapter to be able to use it in power show. That's on the base. Go by the time we get a to G. A. Dot net which is going to be early Q.. One Next year will power. Shell support we definitely have a lot of folks in the partial social community. That are are looking forward to that. I'm hoping to get some some friends at Microsoft that are still working on power shell to to help with some of the. API design challenges. We have there but it's actually not not a ton of work now that we have the core foundation laid this dot. Net implementation is azure only. Could I be writing dot net code that we go to. Aws Yeah we you get access to you. Know the three dozen or so providers mentioned earlier. You can get access to all those so you. Aws azure Google Cloud Can even do these fear. VM's on Prem if you want So we basically have input looming a lot of us came up through dot net and so we kind of know how to do multi-language run times and so we are protected. The system to to be multi-language at its core the heart of the systems actually written and go but it can. It can load any language as a plug in basically and and then any of these core providers we have we have a way co-generating. API's across all languages we support so it's actually pretty easy. Once we have a new language we just read the code generated one and we get the support across all of our packages. I was looking at the sample. They're saying you love me. Straight to the AZURE SEAL is always conservatives address but unethical dot net corp people would be but certainly certainly those dot net core people that are running. VM's elsewhere to yen. We actually Azure a number of people on the team approached us after seeing some of the pollutants samples Prior to that are you know and still to this day. Our primary language is tight script most people using detrick which also dot you know a a Microsoft friendly language and we usually demo everything vs code and so. It's always been very very nice to have you know azure plus vs Code plus tight script. But now you can have dot net in the picture and so we've actually been working with folks on the Ayrshire team to to solve some of the challenge. They see with their customers Want One for example is Cosmos Osmond's DVD One of the biggest one of the biggest challenges that they have is you spend up cosmos DB database and scales automatically around the globe which is amazing. But how do you scale your application alongside your database in the Trans a lot of customers struggle. They accidentally scaler database. But then they deploy their application to one region and other they're suffering latency challenges And so we've worked with them to come up with these reasonable patterns where your application no matter how you've written it automatically scales with the database and so you'll see a lot of compelling azure examples. Just because we've been trying to help as your customers out. Yeah I'm wondering if you aren't gonNA in but with huge template library That makes this easy for everybody. Yeah honest I I wish we had a lot more people people to work on things like this. Because I I think that's where it starts to get really magical Where instead of starting from the building blocks the low Oh level building blocks in and trying to figure out how to stitch them together yourself to to create some compelling architectural pattern actually having repositories those because it it is just code? I think is a huge opportunities as we go forward. We're we're start. Were kind of building those out organically as we go and so I think over time. We'll have patterns and Practices Library of of all these things across multiple clouds. Police in get hub right you. You could get control conscientious people building these different pieces absolutely. It's all it's all open source in and we we see frequently And users blogging about things and publishing their own packages you don't even need to Putting in the preliminary organization you can you can just because it's all code you can publish it. NPR or Nougat. Or whatever your language of choices and and so we we see a lot of that happening a lot of people creating a reference architectures and so I think at some point we can curate a set of of recommended best practices and we'll have a lot of material to choose from. Yeah juicy idea that I would have a template for each of the different services I use that I just pull the NBA new. Get okay. Well here's all my bits now. Let's tweak a few values an added a couple of credentials in deployment exactly and you get back to what I was saying. Our first customer so like Hey I all I was trying to do is a few containers in a database. Really if you look at Martin Cloud cloud architectures th. There's not a huge amount of variation between what what people are doing. I mean one of the great things that are so many services. You can do a emily you can you serve. You can do different kinds of databases but a lot of people are just doing a static. Website or a micro service or DOT dot. There's a lot of a small number of very popular patterns and Co Defying. Those would be incredibly powerful. Not there yet but you could see it. I also see you as a facilitator tator for multi cloud right that in theory. I should just be able to switch between the deployed. Aws azure deploy to GDP and it works. Yes yes I say. Sometimes I refer to it as many cloud And the only reason is there some tools out there that base could try to hide the differences between the different cloud providers They basically give you a low lowest common denominator. Interface that as the removes a lot of the capabilities the underlying cloud. And we're trying not do that because that that would mean for example reason cosmos. TB You might not be able to use the latest some greatest features because Google Cloud Nazar might not have those right. But it's so so at that level you're still benefiting cause you're getting a consistent way of you know coding provisioning managing your infrastructure. You know one workflow. That's common to all these things. A lot of customers. We talked to the deal and multi clouds have completely different stacks. Free should the clouds. They're going to But but then once you have that foundation you can start building lowest common denominator obstructions that makes sense for your scenario. And we have some that we provide I but you know we have some customers where they only care about running you know virtual machine on prem and a virtual machine in Ayrshire and they wanted to be able to consistently enforced force that there's some architecture between those they don't WanNa completely divergent. So they can create their own abstraction academic core virtual machine right and or even higher level Academic Corp Application and that might be comprised of few virtual machines. And then and then they can kinda decide what attraction level make sense but we definitely see a lot. A lot of people having to deal with multiple clouds for variety of reasons Either intentionally or you know. We work with one company. Recently that got acquired heard and now the parent company was using different cloud. And they're now that so now they're multi cloud they didn't plan to but now they are. Yeah now you're right and the key and the risk and cost of trying to consolidate his too high for now anyway. Yeah Yeah if you if you don't need to and it's working for you you know why why bother it's for the more. Each of the clouds is is good. You know it's interesting for us. Because I view us as an interface for our customers into all the different clouds and so we get to see all the differences between them is designed differences technology choices cultural differences between the customer bases honestly. And you know not all the different clubs are good at different things so sometimes it makes sense to keep a workload on cloud a instead of moving into cloud. Beat yeah I was thinking you've got a really interesting view looking across these customers of as what the relationship with the different clubs or like an an opinion that I questioned the merits of multi cloud the hybrid model of on Prem and o'cl provider makes a lot of sense but the any given cloud provider of the big three is going to be pretty darn good. It's hard to save reliability. The reason I need to yeah and this is kind of why I. Sometimes I try to avoid the multi cloud phrase just because it triggers these these feelings a lot in people and I. I definitely see some people doing multi cloud for misguided reasons and some sometimes it's a it's driven by fear and paranoia like you know while what if what what if Amazon you know does something that we we don't agree with or goes down we are. It goes down you know what are the challenges that to Ralphie's you know all the clouds are you know. Yeah they they make mistakes occasionally but they you know for the most part. They've learned from those mistakes and man the reliability. It's like you. You're better off architecture. Application to be multi region and availability zone Then going between multiple clouds just to solve that problem. But but there's good reasons for it you know Like if you're selling software as a service and that offer needs to run in your customer's account if you only bill that's offered to run on. Aws you've limited your target customer base. Now you can't sell your software to anybody running on Asher And so says has companies often need to be multi cloud because they want to broaden the customer base. They can sell into There's the mergers and acquisitions as I mentioned before that often lead multi cloud so there's a lot of reasons for it And you know honestly if you're if you're big enough I definitely have seen that got. Large companies can get can put pricing pressure on the the cloud by basically showing that. Hey you know if we really wanted to. We can go rewrite and move from To you know Google cloud right. I do see some companies. Actually do save money by doing that. You what's next for you huge. Oh you you mentioned off off Mike that you're going to be at a conference in Vegas. Yeah so you know. This is conference season for us. And so we're doing coop con in San Diego redoing Lots a little confidence devops are going to be at ABS. Reinvent In Vegas Next year we're definitely going to be you know Microsoft connect. We're going to be a Google cloud build. Where we're really ramping up? You know we've been pretty pretty quiet up until this point and we're seeing a lot more success and so we're going to start scaling a lot more next year so we're probably do two dozen conferences something like that. So that's great. Well Mike is Happy next love. Palu me they use it all the time. And that's the first time I heard of. It was from them so very good. Thank you Joe. This is been a great our chock full of nutritional value. Thank you no thank you guys. It's it's been great to be here and I guess I'll talk to you in what what's twelve years from now. Yes that's a long time thirty one. Oh my talk you that well. If you'll still talk to us we'll still talk to you right so I all right thanks Joe. Thank you for listening. And we'll see you next time on dot net rocks they dot net rocks is brought to you by Franklin's net and produced by KLOPP studios a full service audio video and post production facility located physically in new London Connecticut and of course the cloud online at appear W O P dot com visit our website at dot any T. R. O. C. K. S. dot com for our feeds downloads. Mobile APPs comments comments and access to the full archives going back to show number one reported in September two thousand and to make sure you check out our sponsors they keep us in business this now go write some code next time Aw.

Dot Net Microsoft developer aws Palu Joe Duffy Midori Crown Richard Richard Campbell Carl Franklin Google twitter Luke Hoban Yemen dot net corp CEO Oslo
The Microsoft 365 APIs with Glenn Block

.NET Rocks!

54:50 min | 11 months ago

The Microsoft 365 APIs with Glenn Block

"Have. You ever wondered if you could be offering faster less buggy application experience for your customers with Reagan application performance monitoring you've got all the information you need right at your fingertips to find and fix errors and performance problems across your tax stack down to the line of code. Reagan makes it easy to monitor the impact of your performance improvements quickly identify and resolve issues and see how your code performs in the hands of your customers saving you time money and sanity. Visit Reagan Dot Com and join thousands of customer centric software teams who use Raygun every day to deliver flawless experiences for their customers. That's Reagan Dot Com to get started on your free fourteen day trial. Welcome back to dot net rocks Carl Franklin and this is Richard Campbell still hold up in our respective homes just like we always have. Yeah. Yeah he's he suddenly introversion is an asset right? That's right. It's like. You complaining about me doing this for years this is what I wanted to do in the first place. Not Mad at me for doing it. It's almost better. Go Away and leave me alone. How You Ben? Man. I'm fine. I'm head down on history dot net man trying to get finished this year found in a way he really making progress. Yeah. Yeah. I've picked up a few new hard to forget to land interviews. I got I finally talked to Bob Mugla Wow who who is who was a president at Microsoft so he's actually the most senior person in the book now effectively. Sure It was a great conversation I if you remember him much from our our d. days but he was all very forthright with us very direct Kinda guy and he absolutely like that in the interview, it was fantastic. That's so great. You are. You are going to have a textbook when you're trying to keep it to a reasonable size that therein lies the real problem right is like. We is how we're would you go but he presided over those moments at Silver Light, and twenty ten that we care so much about and I was really grateful to have his version of what happened. So I have something you're GonNa love is better no framework. All right man. Co crazy music roller the crazy music. Right. What was the last? Real Gadget you got on I mean. Video gear gadgets all time, right? Yeah. Yeah. Screens and all that sort of thing with. Year with the gadget. I've talked the most about on this show and their out past couple of years. We all know that one but you know what's what's one of a recent gadget that you were actually really impressed with the mini pro? Yea. They video switcher is made. You talked about that last week. Yeah. Yeah. Yeah. That's that's pretty cool stuff. All right. So I have something you're going to like. You're probably GONNA think it's not really useful for you, but you know because you don't like. Take your laptop and go work at starbucks all that often. But for the rest of us, this is the mobile pixels trio, a portable dual screen laptop monitor it. Connects to the back of your laptop, one screen comes out the left and the other screen comes out the right. So not a dual but a triple. Yeah. It's called a trio but it itself has two screens but to you can have three screens on a laptop. That's awesome. It's USB plug and play. I carry that ACIS USB monitor with me with my laptop all the time. Right and I used to carry two of them but it just made people angry. Yeah. He's he take up a Lotta Room when you got three screens raptor on you sure no. Yeah. Yeah. Your your basic you know Speakers Lounge at deb intersection. Where space is limited in that wouldn't fly. That's like the equivalent of Man's spreading. Exactly, your monitor spreading. Excuse me are you stretch out Monitors. You guys get away from me. Well, these days with Cova I. Guess it makes. That close to you. Anyway I just it just occurred to me. This would be great response to the COVID crisis this like Garrett? A meter on either side at least we should be too but you know at least it's a start anyway. Yeah that's. A Good Start and Thing is the price for one screen to fifty nine for two screens. Five hundred bucks. Awesome. I gotta get one. Yeah. It's very cool. You get one. Definitely I'M GONNA have to pass it with. Get it passed she who must be obeyed though may also measure carefully make sure it will fit on your laptop to size matters right? Good. Good. Good Point. Yeah. All right. Well, WHO's talking to US Richard? What we've I know we've talked to Glenn a bunch of times before but never talking about graph and he's over on the graph team now. So I actually grabbed comment of a show twelve, seventy, seven K, which is a showy did about Microsoft graph with Jeremy Fake. Who I don't thinks the graft anymore, but he's probably still Microsoft, and this is from a of two thousand sixteen. So it's old, it's four hundred something shows ago. But I think it's very relevant to this is comment comes from Charles? Who is actually talking about? How Office to sixty five headed down a path? He's come yourself don't force your uses to write javascript and it's all don't blame on Microsoft. That's the office team that is wrestling with how to do this that you know you've Zama and so you should be able to run dot net on everything and that would be easier scripting language to add into office rather than javascript. At a way to get away from VBA because let's face it as been in office for really long Tosh your has. So. The also talked about a couple of complaints he has office three, sixty, five ads. The first is that they don't support user defined functions. Which is one of the challenges he has with Excel if they if you add user five inches in javascript. Happier that would be made and he's concerned about that too because it's like I'm concerned about the performance of this. And of course, that was one of the things he was good at it he could refer to viva code inside of Excel. And model only sports adding functionality document through the AD in which means if you want to distribute a more complex piece of logic to your clients at college, you have to get all the ad in and good luck trying to do that right much less to maintain it. It's just a really tough. Distribution, model compared to having it all self contained knee goes on to say. It's frustrating to me this Microsoft's not really developing office for its user, but rather for departments, it's like, Hey, dude, I, departments guys who buy it right in huge quantities and sad to see. Microsoft. Not Really Developing Office for its uses but rather Friday departments which. Might be a little extreme but I D- departments by a lot of copies of office and they're the ones who have midst management at scale problem. So I see if it's true and I don't know that it is it kind of makes sense. Abuse it barely had new features in office two, thousand seven not even talking about. For example, almost every single report he's prepared in powerpoint and is not but is based on data and analysis prepared excel. Updating. powerpoint from Excel is challenge a copy pasting method of tables and charts stable and slow. Again this is the whole point of having a sweet right that presentations are done over there. They would main thing is the integration should be good Being able solve the integrates genie's absolutely be a massive improvement and I really don't need another way to do a pivotal. Excel as everything. Anyway. You know it brings up this whole conversation. Hopefully, we'll talk to glen about this as well. The program ability of office and how it's been focused because it we never had a good dot net solution for programming office the we tried a couple times. Any fun. and obviously you know office team is very focused on Google Docs, which is very javascript center, one way or the other unite us dogs together all the time like char ability to write scripts for ads and things we're simultaneously or both typing I. Always Marvel at that. It's pretty awesome. It's kind of amazing and just running from web browser, which is astonishing. So now I know why office you've focused on that it's a remarkable ability that being said with my it hat on it's like. I don't think I'd enterprise I could recommend Google docs a you just don't have the same level of control. And controls important right. You have legal obligations around stuff when you get to a larger companies in that stuff really matters yet anyway. Charles. I. Think he kicked off an interesting conversation for us with Glenn and I appreciate your comment even if it was four years ago in a copy of Kobe's on its way, you'd like a copy musical by ride comment on. The website at dot net rocks, dot com, or on the facebooks because we publish every show there, and if comment there and every in the show, we'll send you a copy music Khobar and definitely follow us on twitter I'm at Carl. Franklin he's at rich Campbell send us a tweet, and if you can tell me, what dd means will send you another coffee mug. I can tell you what it means. For Office integration in a million billion years ago chorus. That's why that's why it's funny and it's The applications. Programme Ability Department of Microsoft was established around things like DVD and then lay how lay we'll talk about that. But for sure let's let's bring him on here. Officially Glenn Block is a season two leader with twenty plus years experience in software engineering and product management. He currently works at Microsoft again. On the core ecosystem team where his team is responsible for Microsoft graph and several services and m three, sixty five. and. I imagine that means Microsoft three, sixty five as an astronaut infrastructure sixty five has been rebranded. Three sixty, five I think it speaks to the larger strategy of you know in the past I mean yeah. Okay. At least it's not windows three, sixty, five goodness knows while you you heard it here. M three, sixty, five that's the first I've heard of it. Yeah. Well, the reality now is you can subscribe and includes your your windows licensed to and bunch of other things. We do you remember those days? Glenn DDAT DO. Yeah Ole. Ole. Ole DB. I don't know that we were happier real. Really know it was a mess back then to Tom Com plus M. T. s let's go back active acts. Welcome Nak rhythm soup through the years say history of dot net in three or four sentences. I really history of of. Forty two how man history of program ability of applications though that's what? Microsoft. Is Really always been about did that whole thing come around because they had. Customers of office and word in things that weren't they. These guys weren't really programmers, but they wanted to be able to script in. Make these applications work together with data like the whole office suite, right? You've got access the I'm going back here like access for data excel for spreadsheets, which was also used as database very often, and then they would want to type reports in word and rather than having to copy and paste informat data out of excel they just wanted to embed that excel spreadsheet, and then we had like the ability to. Change The spreadsheet in one place on a server, and then it got updated live in the document I mean. It kind of went nuts there for a while and that is still alive and well since since I returned to Microsoft one of the things I've been using so I've been a big zoom and slack fan. Hopefully, I'll still have my job. But. But now using teams. And one of the things that really blew me away was I clicked on a link to a word document within teams and it was embedded right there. You know could I could access the were documented edited right from within teams and Click on excel and get the cells. Right I mean, I was. Really surprised. That's that's something that Microsoft is usually done really really well with is that whole integrated story across APPS and it? It definitely has not gone away. Right but I do feel like it kind of got muddled there for a while like you. You think of document as being a document you write it it stays right and now you have all these dynamic things in there. Can you really call it document anymore? You know it's interesting. I mean it's a modern document, but it's it's definitely it's definitely interesting. I mean you have full applications that could be spreadsheet, but you've had that for. Thirty years here. Yeah. I. Li- I spent so much time in one note, and you know sometimes you're typing letters and sometimes you've dropped little grid. In didn't some equations in it and sometimes you've gotTA graphic and sometimes you've embedded a video or audio. The concept of a documents pretty strange. These days that equations thing is awesome. I'm back in school now and using one note and like one day just by accident like I wrote a formula in. And it was solved. Though. At. That moment until a whole bunch of friends at that point did you know that you could actually like type formulas in excel and it will I mean what can not only type formulas you can draw them with a pen and it was solved does. So this is how I found that out my youngest daughter is now going to college and she old yes. Mine's getting close and she needed a new laptop. So we literally went to best buy. She looked around we had a budget we found. A Dow Inspir- on I believe it was and it was a convertible. So you flip at the screen all the way over. It's a tablet got a pen Scott Microsoft Windows, home ten on it right and and she had been using a Mac at home and also chromebook. So she wasn't all that familiar with windows, but she trusted me. Data, trust you whatever you say is good and of course you get the best. Bang. For Your Buck, you know with a with a windows laptop these days it was literally like less than a thousand bucks and it was five. Acres of RAM and. Five twelve gigabyte. SSD. Kind of thing right so So I said, you really gotta check out the handwriting stuff and. Back to the old days of the tablet PC. Right. Just, start writing and it would just figure it out. I figured I could open up word and I got twenty nine installed on it right office twenty nineteen. Stalled it and I opened up word and I said, yeah check this out. You know you just start drawing and it doesn't wreck do any handwriting recognition. So I sort of stumbled around a bit and there wasn't anything intuitive that would allow me to do just start taking notes and right and then after a bit of Google being I found out that one note was the solution. So word doesn't recognize handwriting by itself you have to go to one note. And one note will recognize your handwriting, which then you can copy and paste into word if you want. But. I thought that was a little strange. Yeah. Okay well that brought the. Reaching concur. Awkward Silences, Hukou. It sounds. Pilots is in agreement with you. Tablet PC was what two thousand to two, thousand, three. Yeah. And you know and it was everywhere in the operating system and there was this handwriting stuff and just figured it was and some of it was just awful like my first laptop that I had it Microsoft. They will like dishing out like this is back in two thousand and six they like we were getting and they were beasts do they were not that thin? Yeah. Those tablet PC is they were Oh, man, they were so slow like the ones they were giving us I mean it was so slow and I was so frustrated. With it. So things at least have come a long way I don't feel that way. Now when I use stylists whether it's on the surface which I've been pretty happy with. Or on my ipad yeah. For. Sure. How did you end up at the graph team man? I mean I don't understand come back to Microsoft but I figured you would have been deb did for sure. Yeah well, partially I think I was ready for a change. Your style Glenn You. Exactly I you do things for awhile and then you go off and do something completely different and I don has been really good for me that has made my life very fulfilling so I enjoy having new experiences but honestly the first thing that attracted me to the graph team was By chance I bumped well, maybe not completely by chance but I bumped into my boss Yuna Arenas. years ago we were both keynoting in an event in Portland Api strat. I think it was we're both speaking different talks on API's, and we gotta ride the train together for like three hours and Darrell. Miller who I think you know he was And he's on my team. He was there at the time he was actually interviewing to go to the graph team and he introduced me a united. We just started chatting and at the time graph was a lot younger It was Kinda this grassroots effort that had now like really started to grow. and honestly I was really impressed with Yuna and I think one of the things I've learned especially more recently is that. It's not about software. It's about people. Yeah term really up. It's really about people and so I was really impressed with her care for people and also her being a woman of color who actually came to Microsoft through grace hopper and we talked a bit about her journey in some of her challenges and. She I mean she's had an amazing trajectory at Microsoft but I was just really impressed with her and was just like I would I would love to work for you at the time. I was I believe was at spunk or may have ended ought zero by the by then because I had a few jumps but you know you never know what's going to happen in the future. and. Then you know flash forward I was at my previous role at Docu sign and it just wasn't really the best role for me. I realized I was ready for a change but this one was a little bit different I. Mean it was quick like normally I go to a place in there for a while but I just realized that just wasn't the right fit for me there was just no point. In sticking in that situation and then. It just turned out that I spoke with Darrell. Miller is a friend of mine who works for Yuna and he's like you should consider us in I resonated with the idea of the graph personally I've never been a huge fan as you might know but this idea of having this one API that provides a gateway into tons of other services and provides a standard way so that you have to you don't have to access from fifty different places and learn fifty different formats that really. To me was compelling and this ecosystem that the graph team was building even early on was really compelling to me. So so that was there. And I reached out and. You. Know certainly I'm I'm fortunate because I have the context to reach out to based on. My experience and things like that, and then we chatted and it was a good opportunity to time when the team is really graph is really growing at Microsoft. And we talked about what was important to both of us, and then next thing you know they're I am so I have a an observation here. Now first of all, we've talked about Microsoft graph on the show before it's just it to believe quick about it. It's a sort of. EXPOSING REST API in client libraries for data on like every Microsoft service that exists with one point, right. So if you're have, you ever had this situation Glenn where you're on the graph team and you're working with, let's say less experienced developers on the team and somebody thinks that they're going to school you on like Web. API. And you're like. I invented web. API. Say Quite Way I actually worked out quite well. It is actually cool that a lot of stuff we're doing on graph is built on top away is. Actually when I was a Docu sign a lot of things. I was working. We're build on where API as well. So so that actually is one of the few projects I worked on. That is an quite well. He said I don't I don't quite say it that way my younger is. That we've wanted to set. Subdued days. Right my lists subdued days. Subdued me. You're fairly did that was just response to that provocative. Suggestion right there. So but I think your definition is great like I. I don't want this the wrong way. But a lot of times when people ask me about graph I'm like the one API to rule Brian. To describe we. Also a path of failure, right? Like we all love this idea that we'd have this API that did everything, but then does nothing well, that's got to be a tough balance. It is a lot of work, and so you know I think it's you raising a really important point which it's not just the idea of like having this one place where things can go. But how do you do it in a way that is consistent in feels good to customers and because I mean, this is not just something that internal teams are using is something that our biggest partners are using that our customers are using. So on Darrell Miller, who I mentioned, we actually have our own API. Committee. You don't just come in and say, wow, we want to put this on the graph. Can we send our PR and you push live? There's there's quite a bit of design work that goes into ensure consistency and I get a lot of credit. To our team I mean because I'm still fairly new so I can take credit for the things that we've done. But that we really put that energy in to ensure that we're crafting a good experience for customers and we're we're really trying to promote consistency. Micro has always been the best at doing that and we are still messing up but were at least putting in the effort in have this learning mindset of like how can we make things better and better in terms of the experience for our customers insists question of. Microsoft the best track right on it but compared to whom I mean. How many things is Google killed this week. You know like that. What do I care about? Is it if I build against this thing, it's going to do the thing I want and it'll keep doing it not randomly die one day because you changed your mind and to Richard's point you know and he was reading the the the the message, the comment or whatever you WanNa call it that somebody left. It really is true that you know Google seems to be for the masses but once you get into the enterprise, you need that level of control. You know like I use Google calendar and all of that with my family. Because because it's easy right but if I'm going into an enterprise and I want to. you know have have more fine grain control over things. I don't want birthdays to be popping up in the corporate calendar DNA. Yep and I've hit this with nonprofits that I've been involved with where we hit the you know we hit the ceiling of permission capability in things that you know you have people joined boards, they leave boards what happens to all the document permissions. All of that stuff. I WanNa give a plug though you know you mentioned earlier, we were talking about. VBA. In. That I mean, the Google sheets experienced pretty magical in terms of the way, you can customize it do all of that browser. And I. Used it heavily I mentioned well, didn't you mentioned my buyer but I recently as I mentioned earlier went back to school. and was building this SMS, based solution for Helping folks that are experiencing homelessness. This is one of the projects that we worked on and we had all this data that we have two important massage and things like that, and literally built like a custom importer writing google sheets. And the web based authoring experience was just pretty fantastic actual and will you programming javascript? Yeah, they're variants of Java script. I. Guess. You know they have like it is jobless. It's I. Think it's like they use the. Java scrip- Virtual Machine Brian nerds urine have access to packages and things said the V. Eight engines under Their v eight I think it's like via but but it was pretty nice experience. In pretty easy to test against. They did of their product. They did a good job there. Hey, I love their products I use them all the time. and. Their speech recognition is second to none. Yeah. It's always about the sustainability part like there's some people who just have a hate on for javascript because it's approach to language frustrates him and they probably have scars because Javascript has gone through a lot of convulsions over the years and required a lot of. Keeping up with. You know because of that when I Often of folks I don't know they hate javascript so much as you hate the Daum experience. That everything that dom did over the years may javascript. But when you see the language on its own I, mean, it said dynamically typed somewhat functional language like it's fine as after right good tasks around it, and if you know that's what type script does for. You is essentially build Teston as part of your declaration, which is clever and integrate solution to the problem. If that's the way you think it's pretty amazing though watching the uptick of type scripts. Yes, it is. A demand it's making sustainable javascript rights right That's the whole thing is the art of building code that's GonNa last that would come back to this years later it's not we should start over. If your reaction to a project has touched in a year, it's easier to write a new one that touch again. And you know you've made you've got a problem. You made a mistake. Yup. Well, in traditionally I think Microsoft was not was always pretty strong at like being able to create things that are going to be around for a long time. It was more the kind of some of the you know. The tools were really kind of optimized toward these very big gigantic large type projects and they were not the best for like moving fast reflects the customer base to that. Microsoft has one in the enterprise in that's where they tend to go and guys when Iraq for one moment is very important message. Hey. Here's another great reason Tease Express VPN, it lets you access the Internet as if you're from a different country, Netflix's for example, has different shows and movies available depending on where you are with express. VPN, you can unlock thousands of new shows and movies from streaming libraries around the globe net flicks, Amazon Prime BBC, I player Youtube and many more, and you can choose from almost a hundred different countries there hundreds of epsn's out there. But Express VPN is ridiculously fast. You can stream everything in HD. Equality with zero buffering and express VPN is available on every device, your phone, your laptop, your tablet, even your TV. That's another reason why even in my home I never go online without using express VPN. So protect your online activity today with the VPN rated number one by seen it in wired visit our exclusive link express VPN, dot com slash dot net, and you can get an extra three months free on a one year package that's E. X. P. R. E. S. S. VPN dot com slash dot net. And we're back on Iraq's I'm Richard Campbell. Let's Carl. Frankly this is our friend Glenn. Block who has joined the Microsoft grafting and Flynn what are you doing the graphing? That's a great question. So part of what I'm doing other graph team is not actually graph so. let me describe it this way. So graph builds on top of this platform in office. It is a massive platform. Yes not Asher it's a massive platform that drives a bunch of services, not just across office, but across windows and other products as well, and so one of the things that lives there and the foundation of this service all the way back to exchange. And Mailbox is it turns out that mailboxes are used for way more than email, but one of the things that are used for his email and so there are a number of services in protocols things you've heard of pop a map. MAPPI There's exchange web services which has been around for a long time, and there's es exchange active sync, which you've probably heard might actually manages all of those services. So now even though I'm on the graph team, why do we manage those services because we are also responsible for surfacing email into graph? So if you go into graph and you access your mailbox, you're hitting against services that my team manages initially. So it's the largest scale thing I've ever worked on I. Mean we're talking about trillions of requests today across all the services that were managing him. It's drives me that that the move of office into the. The becoming of off SOUCI now Microsoft three, sixty, five in some ways, kind of decomposed all those products in two sets of API is that exchange is no longer just exchange exactly but but it's really interesting that it all goes back to exchange like a lot of what is driving all of office today is late in terms of its platform in the cloud is in office three, sixty five, all has its roots in exchange I'm. Only learned this and so a lot of those pieces that were in exchange evolved into this underlying office platform, and so my team owns a bunch of pieces of that. But one of the things we're trying to do is so there's the graph is really interesting because it's an amalgamation of services across the company. Some of those services actually do exist within that underlying platform that I mentioned in office, they're pulling data out of that platform. For example, like if you use teams and you create like channel in teams, the data for that team, it's actually stored in the mailbox. So the mailboxes are way more than just e mail. There, they're used for a ton of different things but then there are other services like Azure that have nothing to do with this platform but they are surfaced out through graph and the Nice thing for the customer you don't have to care you photograph in you know you look at the Schema, find the data that you want and grab it. But behind the scenes, it's going to a number of different places. So one of the Co things that my team is responsible for is. How we get information that an API is that currently live within that office platform that today don't live on graph intergraph and so there's a lot of platforming work being done there to kind of figure out how to make that on boarding simpler. There's data translation because sometimes the API's tend to all be data. So data is the defacto standard, but the data for graph and those conventions that we've set in place or different than what a lot of our internal teams are using. So some of that work is about like how do we make it seamless to be able to do that translation? From how data is presented within the platform up into graph. So that's really exciting because the better we can do in that work the more data that's going to become available to our customers and one of the problems we have a we're trying to really focus on today is really make it so that we treat. Third Parties and first parties the same and what that basically means is not having one API that first parties use and a different API has to be built for third parties to get to the same data as very exciting thing that my team particularly is central in driving, and that really energizes me that were really at the cost of of. This. evolution that's happening within the platform with the first party mean Microsoft teams like different teams instead of Microsoft? Yes. Yeah. It's good. Good. Good. Yeah. I'm living you know we live in these acronyms we use hall the time but I Just say one P, we say one P and three P. But yes, I party or other teams Microsoft teams would be considered a first party and and so by that token, it's like you're implying that. The challenge here is it often these one P folks get special treatment or get you know they? They know where you work right? They kind of hunt you down and say I need this feature. Well, there's that but I think it's more that they're building a P. is for them, right? I. Think it's more that they're building API's for them that then when customers come along later and want access to that, it wasn't designed in that way and there's no easy way to get those things out there. So they ended up just building brand new API's exist and this is where you end up with this Croft of endless API. To location and then things are out of saying and other things. Yeah. There's huge huge challenges there Sa- forcing you to do the thinking to build a. API that multiple one piece can use an all three-piece can use. Yeah and to be honest I mean we know that Amazon's done this I mean this is not new like Jeff bezos was a lot of radical transformation of aws was when this historic guideline was sent down by Bazo Basil's where he was like. You will not use anything other than published API end points for services to communicate with one another you're not gonNA take back doors It's. It works. When I was at spunk That was one of the places where I really saw that inaction I mean we basically committed that everything was going to be an EP I. Now, the challenge with that too is doing the due diligence to make sure that it doesn't look like something that was built just to satisfy your first parties even though you're exposing to third party that has that happens all the time and that. Is One of the challenges we're having to deal with why mentioned that whole transformation it's like, yeah, it's great. You built it this way, but this is how it needs to look, and maybe over time we get people to build it in the first place with the idea that is going to be consumed. So China that we at least have a way to go from Sun to call it the lipstick on a pig. We at least to do some crafting to better. Yeah. I guess I did a cut. Now. I know what I played back the recording. DOT COM DOT COM. Go. A couple more times. I did a show on run as a while back with one. Maybe heard. Talked to WHO's he's is reactive in my world. He. The intelligent substrate? That's nice. Yes. Well, that's the platform I'm referring to were not actually supposed to mention it, but he already has. So there you go. Year. Okay. Right. I was beating around the Bush but yes, that's the Bush the Intel. It's a huge Bush Bush you know the size of the earth. Huge. Very. Big Bush yes and I was beating. Okay you're yeah the well because the now you can point to that run shown go we'll Jeffrey said it I in public so it's not on me Oh. I already know that because I already had asked like I was like Oh should I put this on my profile? Maybe not but anyway with the but you always have the problem with. This this whole calls confidential. It's just us three nobody's listening. Yeah that'd be silly. But when we talked to. To to Jeremy about this like four years ago you've also got this sort of implied like the graph knows all things like it's sort of. Vaguely threatening. Well there's a lot of different data that is in a single place. So it becomes really. Sensitive Man. So it's but it's not like that data wasn't available before another API's. But still like you would have to know about all those different API's the challenge I think the challenge that gets post here is the discover ability aspect right? Because it's a graph I can just see Oh that's available. Let me go get that and if it wasn't implemented properly in terms of the right security will you just got it? You got it whereas I don't know about. All these other random URL's that exists unless actually know about it. So that is definitely a problem but the cool thing about it I think and this is what is really I've really learned to appreciate the power of substrate. There is a whole intelligence layer, and because we have this graph were able to make a lot of interesting insights that improve our products like when you use outlook, there's a lot of things that are going on that are actually depending on. Ai which is running on top of data that is within the substrate. Like when you? When outlook offers you a suggestion of you know when you go to do a reply and it offers you a suggestion of like you could use you know here's a here's a his suggested reply that's actually something that is based on our intelligence layer running against substrate or when you go and you look at a profile of someone and you see connections like who are the people they talked to what are the documents they've accessed all of that is really coming from the graefin coming from substrate, right? Yeah Okay and and not necessarily direct association theory that were in the email chain. But the fact is you're able to see these relations based on how people interact. In the substrates offering us a way to see the actual collaborations and organization rather than their org charts. Exactly and that's where I think it's very exciting and then of course with every. There's always fears, but this idea of really being able to improve the way we work in providing relevant information that helps us to do our jobs better. I think that's something that really excites I mean and they're like thousands of people that work on this just to give you an idea of the of the size of that Bush that I was mentioning everytime tens of thousands. So it's it's it's huge. So are we ready for third parties to be programming against this? Like what would I be building that that I would need to poke into the substrate while today you don't poke into it directly so well okay. So use an iphone and you go and connect to office three, sixty five. Put that email address in rights, you put that email address. In Richard Dot Campbell at whatever, let's say it's associated with office three, sixty, five account with the first thing you do is hit against a discovery service that actually is running in the substrate at my team runs that service right then you get back location of the server that's associated with that and if that is an office re sixty, five server or an exchange online server, you're actually hitting against the substrate you don't know. But that is what you're hitting again anytime I e mail through. Exactly where those mailboxes live, right? But you know I mentioned teams, for example, like it's just in a lot of cases you can think of it as an implementation detail. I mean that's the whole value of graph. Just don't have to know do when you go on graph and you go to access your email you were hitting against that underlying platform because that's where all the mailbox is live but you don't have to. Right and itching that it's exchange all the way down right although really if you think about exchange that way it's it's all just messages but most large scale software is just messes. Windows is just messages that is true now and I think that's why the whole mailbox paradigm actually works because represent almost anything as a message. Yeah. It makes total sense that these Indiana's just messes, which means it automatically has a log. It has a chronology as order it is auditable like a lot of good that comes from that I presume. Not, that hard for me to see every single time. Any application has called any of the substrate like you're gonNA see at all. Yeah. The real interesting thing is the term cogs when you talk about logs at that scale. ADDS. Cost of goods sold. Yeah. Like like the when when we talk about like what does it cost to run these services? The kinds of dollar amounts you talk about when you start talking about logging is just unbelievable. Just logging alone right? Who mean millions tens of millions of dollars just in like log costs. When you're dealing with scale of. Billions of people around the world that are that are accessing your services. So it And he also makes you granular is like how much eagle in theory whenever we asked well, how do you want to log log everything like are you really sure? Most of the stuff is stuff. You knew you you really only want exception. Yeah. You don't want to be searching for the needle in the Haystack. It's tough right because we come from this world where traditionally used to logging everything. It's hard. You're worried like a what if I have to ask a question and the data's not there, and so there's a big move that we're we're working through around more adoption metrics. And you know just logging when there are. Conditions like air conditioning, shore log, the detail. But outside of that, you can dramatically reduce your costs by. Keeping as much as possible just in metrics you know like I want to track how many requests are happening, attract latency things like that I can get all that stuff in metrics without having to get all the detailed logs associated with logs are a huge issue anytime you're running. Anything of a mid scale I'm. Really really creating a database that you have to then query against in order to find anything the days of for me anyway, the days of pulling up a log file scrolling through or you know that kind of thing they're just over and storing that data's not free. It has a real cost associated with it especially when you're running at immense immense scale up and we and we know so much better now that. That that at the same time, it's also this is why the stuff works because we do have a common substrate across all these things. Yup. So I wanted to touch on one thing you mentioned before about developers in program ability in such, and so I mean a big part of the mission with Graf is really about enabling developers to get access to all the data that and services that Microsoft has available. In a in a low friction way. And allowing developers to benefit from those associations that that we can make that drive our products. That's that's so there's A. It's exciting actually to see with all the energy that is happening around graph at Microsoft. A lot of that is energy around developers in how do we enable ISV's in partners so that's that's very exciting and there's a lot more to come on that in the future. Co Cool. Yeah. More to be built there and it just. Probably the apostle abilities. Amazing. But at the same time, it's like we can write logic apps to right like there is an abstract layer inside of aggravated allows to call into office three, sixty five, and a whole bunch of other outages pretty. Nicely. that's true and we definitely partnering with the with with some of those folks that Williams has enough. Logic APPS and into Microsoft graph yes. Yeah. There's an also power. This hour. And then there's the other product which I'm not remembering Charleston power. Is. Power everything our now. Than you active axeman they've labeled everything yet so much power. Remember the dot net servers. Yao just. Our hours. Darwin does. Power Lennox, I didn't say. Wow. And we probably should do some shows around this because there's some ways it looks like power apps the new. Like this sort of. Safe. Easy Way to to write code in that that we'll do stuff that people need. Thanks for in a certain span of control and look I mean access. I. Mean was the fence to me was the best representation of that I've ever seen because. Prior to Microsoft, I, mean my first stint at Microsoft, I work with a large number of organizations that. Had folks building things in access and you know the the developers who really cared about craftmanship and all of that kind of hated them. But the other side is they were able to be really rare. And get things done. I mean, it really was the tool for getting things done and I i. think that's one thing that Microsoft did. That was pretty awesome. They've always bombed at that or that's probably going to be considered blasphemous by somebody. Those who didn't live through it? Right those who the folks and I was one of that jumped on that VP. At, that time we laughed all the way to the bank. True. We wrote a code and got a lot of problems solved for people and they paid us well, while folks were still going around in circles on C. Plus plus trying to figure out why they were hanging window. I had this huge project that I worked on prior to Microsoft will working with this financial giant that they had like Alpha piece Alpha piece see plus plus whatever, and like you know we were just they're building stuff like access VP. and. They were like underwater with problems sleeping under their desks. I'm not getting and it was just and it was just so much code that they were writing and it was like we were cruising. We were delivering right. So using what? With. Our team initially like they totally do not respect us because we're like visual basic and like access. To go home at night on the measure is productivity, we solve problems and it it feels to me like what's being built out in this intelligence substrate is about solving problems for businesses quickly. I do think that's true and one of the things I have to say that I really appreciate about being in this organization is I. Think there is there is a lot of focus on like, Hey, we need to make customers lives better. Is just something that is echoed constantly. and it's it's great. I mean it's just really important to remind us like. Are we delivering something? That's valuable sounds like end of a show sounds like it sounds like you're having a good time the Glenn to I am I'm really I'm really happy. It's it's really nice to be back. This is my first time coming back when I'm actually leading a team. Really enjoying that you know as I as I get older I'm enjoying more kind of taking my experience to help others to be successful. I've always enjoyed doing we kind of don't have a choice right? Nobody says as I get younger. Younger acting less maturely and insulting more people. Doing. That as they get billions. But. No one I actually wanted just plug to that one thing that has been significantly different for me since I returned is just seeing how much focus Microsoft is putting on people. And you need really difficult times. I've been really impressed like are exempt vp Ra- Jess Jia, the way the level of empathy that he's been exhibiting and really encouraging throughout his leadership. Really has made Microsoft to me a much more rewarding place to work. So. It's really announced. Appreciate like you've been you've bomb through a bunch of companies of the past few years. You've seen a lot of different cultures. It's interesting to see you come back to a different Microsoft. The one you left, he added I. Think a lot of people are coming back for that reason. Good friend Jeff Hanley whose engineering manager now over dot net he came right before me and I was talking to a number of people over the last couple years just kept saying how how much it really has become a different company and it's not just about who it's embraced open source. It's it's way bigger than that now and Sati really has brought a different tone into the company and I think for me it really is about putting people first that to me is it's not about the fact that I can run. Lennox Azure, which is super cool. But now since I've left and looking at the state of things and especially looking at. The Times were dealing with which we didn't talk a lot about. it's. It's it's really been amazing. The care for people that that I've been seeing coming from our leadership. Nice. saw good stuff man thanks so much for coming back on the show. We missed you really great. Had your. Yeah I was so excited when I got that email soon as I see an email from Richard or Carl I don't even have to read I know what it's about. Simple creatures you know that. I can't I call you both of you take care of yourselves and your families and wish you the best than it's great to see that the show is I mean, the show is amazing. Still still going strong still during the seventeen hundred percents, ted. Is, insane. Pining for the fjords much. Of. Fifteen or something. It's yeah you're up there. Yeah. Well, this this show seventeen, hundred three. So that gives you any indication of how long we've been doing this thing. Glenn it's been so great talking to you in I I can't wait for the day where we can. You know sit in a cafe in Copenhagen and raise a glass together be awesome. Absolutely all right take care. Thanks man thanks, and we'll see you next time dot net rocks. Dot Net rocks is brought to you by Franklin's net and produced by PLOP studios a full service audio video and post production facility located physically in new London Connecticut and of course, in the cloud online at P. W. O. P. Dot Com. visit our website at dot. Any T KS, DOT COM for RSS feeds downloads. Mobile APPs comments and access to the full archives. Going back to show number one record in September two, thousand two. and. Make sure you check out our sponsors they keep US business now go write some code. CNN. Time. then.

Microsoft Richard Dot Campbell Times Glenn dot Carl Franklin Google Reagan Dot Com Darrell Miller Yuna Arenas. starbucks Charles Glenn Block Amazon Glenn You Reagan Jeremy Fake
Blazor Static Web Apps with Jeff Fritz

.NET Rocks!

56:42 min | 6 months ago

Blazor Static Web Apps with Jeff Fritz

"Burn welcome back to dot. Net rocks carl franklin and this is richard campbell. We are in our respective hiding holes bunkers bunkers. I've i've talked to folks who still haven't left the house since march last year. Man like yeah. We're old pros at not leaving the house. it's like. Oh wow. I get to do what i always wanted to do. Nobody's mad at me now. It's my duty to hang out in my citizen for doing what i wanted to eleven square feet of screen and that would be weird eleven square feet. Maybe twelve square feet would be better but it's tricky No i definitely been looking around my office. You know what. They don't have enough at screens anymore. Screens more screen. And i can justify them right. Yeah i was. I ever going to have a real problem in the first place. But the programs is good humming. Not i guess that's just me. That has that problem anyway. Let's get busy with better. No framework awesome. We've got something interesting. I think i'll save it for the next time because right before we started talking. You said i got this new recording rig. And i love it and i really hadn't heard of it so you're gonna make me talk about. I was talking about it anyway. So yeah well. We'll tell everybody what it is. Well let me tell you how it got here for starters. I don't like recording on a pc. And i don't think you do either. I like to have. I mean i do it because everything's good and working but i prefer to have a dedicated machine. Yes yeah and for a long time. I was using my zoom a ships which is really the portable four channels built-in extendable to six and had it on a little tripod stance. I got a good view of it. And that's nice like i got nothing bad to say about the right but i was looking for more like the big thing is mixed minus right is that i can have multiple channels coming in and then multiple channels going out without their own channel s minuses. You've been trying to solve the three years. Yes it's complicated problem. And it's funny now. Because we use stuff like zen castro. It takes a lot of that stuff away but the pod track p eight is that device it literally is six channels in it's actually channels but six channels with six outputs mexico minus by default. So interesting so you know mixed minus is really important when you have Multiple people coming in. But usually i find that. Everybody wants to hear themselves in their headphones. If you got sick people around a table they want to hear themselves as much as they want to hear you. So where does the mix minus come into play. Yeah well and it doesn't really matter if you're sitting around a table which also often what this gavino you look at the pictures of the pa. It's bunch of people. Sitting around with microphones and phones song right and they have all the headphone jacks built in and so forth. So you're not doing separate headphones splitting great. The mix mine is simply a configuration setting. Which when i use external source which is what i normally do is is really uc. Absolutely although coming on skype on one channel right in zoom on another channel and to the to the two things i think are really useful are there is a channel that is meant for smartphones. And so it has the same. Jack as your headphone jack with the microphone integrated the bt. So you can get a cable like that. Just plug it into something might surface book and there you go. You know no additional wiring yet although it's not balanced if if you've got noise neared its going to be noisy so that's got its own problems The other useful features has got it a usb c jack on it to plug it into a computer my which and i record on the st cards in the unit. But then i can also switch the transfer bojan appears as a drive on my computer and then copied files off of it very good. I mean you know new. My reflects. I immediately want copies of all audio file was usb on the one of the machine that immediately upload us or up to three copies so maybe we won't lose it right so do you also get the When you plug it in a usb the thing as an audio device with eight seven juice in and out so when you plug it in you suddenly have a pa microphone. Microphone and a speaker but to do you have eight ends an eight ounce. No just one one. Oh it's but it it and it has its own channel assignment so you get a mix of whatever you wanna say out that out or whatever yeah okay and it's uscc so it's all digital which for me is useful because of the computers are fairly far away to keep the noise down and And so running. Wire running audio wires in and out of pc's of that length just means noisy right. Yeah and i've tried it with excellence. It's all a pain in the butt but going digital is the way to go and just made the problem anyway not necessarily cheap. It's a few hundred dollars for a pa but you know if you got a bunch of stuff to record. I can't argue with how well the thing is working for me. Yeah that's cool. I think One here that honey. Say any other piece about it. I got those kinda geek right. It's like i like stuff that makes me smile when you see it sitting there on. Its little standard. It's corner wired up like ready to go. It's just it's a happy thing for me but yeah it's good looking machine. That's what i got. So that's what you got. Who's talking to us richer. All the work grabbed a comment. Upper show thirteen forty nine. That's right boys. i way. Back in the archives four hundred shows ago. September of twenty sixteen when people were outside and everywhere the style jet but this is back when jeff was running the web forms team which i don't know if he's doing anymore but We were talking about how web forums was fine with dot net core coming along and you know web forms not new of dot net core lots of comments on this show and jeff replied to most of them and this is a particular comment from phil. I don't know which phil but we'll just call him phil 'cause he calls himself phil from four years ago so surprise. Fill an old comet where he says. Sp dot net web forums is like a cockroach people really don't like it hanging around but no known force can kill all right jokes aside. I think it's an underrated technology. Great for certain things. I personally like it for small app. One off projects that definitely will not grow nor need modern deb ceremony tools like unit testing integration testing and so forth. And so on. That's what you say now. Yeah that's why maybe this comment four years later right and don't get me wrong. Those deb ceremony tools are great especially for large long lived applications but they can be overkill in some scenarios. And i love how people are hopping on all the new band wagons. Like angular too. I think the nice but not stop to consider the old tried and true technology. We already have out there with and that real business needs can be fulfilled with them just by keeping things simple and it's great to give might see microsoft giving web form some attention rather than just forgetting about it and all those developers who still use it. And that's why i really read. The comment was to say. Hey jeff four years later you guys still care about whether i well jeff needs a proper intro so rap. Let me fill then. We'll intros you. Phil thank you so much. Your comment a copy of these. That go by is on. Its way to you. If you'd like a copy him he's dako- by right at comment on the website dot net dot com or on the facebook because we publish every show there. And if you comment there and i read the show was that you copy music by and definitely follow us on twitter. He's rich campbell. I met carl. Franklin sent a tweet rim shot. Hey all right yes. That thing has buttons for sound. it has buttons. Many sounds built in Yeah you could load your own from. Mp three files their way files easy enough this load you stick them on the card and then you you map to them and he could have multiple banks so you in jeff stream deck between the two of you you can have a conversation cartoon sounds. That'd be really. Oh yeah without example. Well speaking of jeff. The reason i wanted to give him an intro because his bio has changed and i want everybody to hear it so jeff. Fritz is a twitch and youtube partner as well as the founder of the live coders stream team in two principal program manager microsoft developer division on the dot net community team where he leads the organization of the online components of microsoft's top developer events. The live coders is a community of two hundred broadcasters making technical content available for free on twitch through programming gain development and fun interactions with chat. You can catch jeff. Writing dot net code on his video stream called fritz and friends at twitch dot tv slash c. sharp fritz. Welcome back jeff. D did you see that. Look at the. Did you see that bus just ran over me garage. Jeff jeff best best jack. Oh my gosh. Hello how's it going. Their friends gone good man last time. I talked to you on blazer train you know. What and book deals minds dude. There's something to be said about About how much fun blazer is and all the great places that folks can learn about about blazer in. It's going back to the web forms question. it's it's a great model. Did continues that tradition from web forms of component based development. The all gosh mentioned angular nine. Richard right And i think ten will be released by the end of this podcast but probably but this concept of component based development is just. It's it's the right way to go at reuse all these things. Yeah i mean we don't throw stuff away. That in the enterprise longtime my gosh windfarms. Wpf's upgraded working great on dot net five and and seeing renewed investment. I'd like to say for the for the for the record. Their angrily watch out jeans as if no no. It's the much pay joke. Went stale between the beginning of the show at nasa. Sent me a tweet jeff or email or something saying hey unb laser train what you're doing but can you maybe find a a blazer component that does what the web forms and you know. Some control does. And i said not only. Can i find that control. I can give you well controls winning two year get hub repo and the guy was just like brain explode and there's something to be said about. Hey i've got the same markup from that interface that user interface language into the new. One that i want to use and i actually got into a conversation the other day with a actually a guest that i think you had about a month ago georgia nelson and she was enemy. Gosh look at how similar. Wpf is to the way that i built these tags in in razor in blazer said hey i got project idea for you because that's cool part about blizzards. It's built on a solid foundation. Dot net core the component model is just so elegant. And you know the markup and you want to make your adapters. Whatever the the build your own tag capability of it and and being able to reuse that and create your own domain specific language for your your application ends up being. I'm over using the term domain specific language but your own language effectively for your application in zipping really really helpful to get those consistent points across how you build user interface. So i've i've been absolutely thrilled with that. And the fact that it's exact same markup in there is no ceremony to go from component to page page to component in reused things Gosh i'd eat. It saved me so much time in refactoring and moving around content in my applications while now. Let's any when we've talked about this on the show before funny. I read a show of questions. That comment from two thousand sixteen. You've done several shows since that in one of them was. This whole is blazer the way forward for webcams folks. But i mean the metaphorically they're similar but you're not going to cut and paste knitting. No no you're not. In fact i even worked with a group of folks at a consulting consulting firm. They were building a tool to help rewrite code help interpret code and and and be able to use code is data to generate additional code. They they called their tool code factory. And i i gave them the concept of the blazer web forms components and here. Let's point to a web forms page and rip out. All the beastie notations less than percent percent greater than tags and replace it with the equivalent razor which is for the most part. Just stick an at sign and at the front where you had the less than ten percent in rip off the percent greater than on the end and for the most part you're gonna get about eighty to ninety percent of the code converting with just that change and the daggs can match up pretty easily like the component library supports. We're pretty close to being able to just to re factor armar markup but to your point the c. Sharp that runs behind or that. You might have in line isn't necessarily going to convert right away. It's gonna take a little bit of time. You're going to inspect it. I mean some bits and pieces of logic probably find most of your data access layer can be moved in ways. Like you can make that make sense but it's not trivial. You still talking about reengineering of the absolutely and that it am. I correct me if i'm wrong. Jeff but where. I'm finding web forums. Absence their internal software right there inside of companies and they don't need many of the new shining it's relatively rare for sure But then we think about they want to start reducing the costs of their data centers. Right they wanna move things to the cloud. The they've had these servers running in there for years and years and years. Do they really want to buy new servers. Do they want to extend the lease a new lease new machines. Well if you can do that. With cheaper machines run things docker containers on on less hardware. Because you moved to dot net core dot net five with blazer server side or blazer webassembly or put something in the cloud on on something like azure container service will. Jeez that's that's a no brainer as to save money in processing and you're gonna get access to some of those cool new features that evolve on the web you're going to get access to c. Sharp nine and behind mel dot. net interactions. You want to start using that fantastic. It's all there when you get into at five. And i tend to think about moving up to five blazer. Things like that is i want to be better at mobile and different formats but i appreciate. It also has access to all these other. You're you're spot on with the mobile. When when i think about building that blazer static web app that has okay. I'm going to be delivering a bunch of of the tree shaken and linked. Dll's into the browser and browsers running on phone with with the caching running on that my web server ends up going almost silent because all that conan's up interacting on the phone after they get their download. It's all cashed. And that's a good thing for me with cash data that that's going to be presented there and take advantage of some of those things that exist in progressive web apps and that whole sphere that folks in web forums just haven't been able to even consider for the better part of twenty years without engineering hurdles hurdles and tricks to pull now you. You've also rattled a whole bunch technology to their jeff. So should we talk a little bit about static web apps. Because i don't think the name is great like when i hear static web app. I hear bad web. I hear index hd and that's right absolutely just index. Inched you know. The fastest web app is the web app. That doesn't run any code on the server yet you know. The fastest website is the one that isn't up to but that doesn't mean true. But when i think about so let's let's unpack that the static web app. This is something. I've been having a lot of fun with the past three or four months on my twitter. Syrian blake blazer static web app or. Let's just start with static. Web app is is really a way for you to deploy a stat contents html javascript css images fonts to some place on azure. That runs in just serves that content served it quickly and processing that you may need to do you have as your functions next to it that will respond to each. Dtp triggers interact and deliver whatever response. You need so maybe one allow folks to upload a profile picture fine you uploaded into a put request or a post request onto that As your function gets put into azure storage. And you're able to retrieve end cash that on on your application piece of cake. Yeah you know. Maybe the problem is here study web. I think it couldn't be a video but of course it could be a video. That's still pete resource for noted on the pay and we should mention rosso. There's the next step you're absolutely right. Carl is when blazer compiles to leave delivers a bunch of dll's and javascript to to bootstrap those deals so yeah i can cash that with webassembly with wasim in the browser right and it it actually stores it in in the application storage of the browser. It's not a cookie or something in cash. It's it's actually stored in the browser in in that that were allocated in the html five enabled browsers great now. I don't need to reload. I don't even need to query to reloaded or in get those three. Oh four notifications that. Hey you this contents been cashed because it knows. It's in the browser miracle. I just did a whole. Pwa thing and blazer train and if you wanna use the same cash that the boilerplate Pwa stuff in blazer uses you sort of have to come up with a name and then you have to make sure that you do your own cashing for things. That aren't you know on a young done. It's it's trivial but when it's done right that web application is gonna sing and it's gonna feel more like a native application and that's something that i think Is something that that folks underestimate. Who are coming from the dot net experience in looking at it and thinking. Oh we need to be doing java script. I need to be using angular eleven. Ten whichever version. Eleven okay eleven twelve. You've gotta release of version of cromer four before that So even so. I think is is really compelling about this is we know how to do all these cashing tricks. We know where to put these things. But we're going to run into the same problem that we would have as blazer developers that the folks bill java java script singlepage applications run into the the search engines the the crawlers that run for twitter and facebook. And what have you. They put up the cards. The social media cards from the open graph tags. We put into our web pages. It doesn't know how to crawl in. Find those on a single page application. It'll it'll hit your blazer application and stop because google bought doesn't know how to run webassembly. The bing bought doesn't know what to do with this. It's my favorite dish being a little stretch on that fantastic So right we've got to figure out ways to circumvent that and work around that now when you're running blazer webassembly in hosting on espn net core application. We can get pre rendering of our webassembly content being delivered by. As peanut cars. But then you're running on webassembly or some other server. That's responding to every request. A processor is running in parsing and handling the request delivering content. Yet were you've got a caching implants sitting in front of that. So it's cashing those responses and this that and the other money money money money money handling all those requests. So there's ways around this an end in tinkering with with building with blazer webassembly and blazer static web apps. I'm finding. I'm enjoying using more. And more of the azure platform the entire cloud service and using that to augment in. These are free features that i'm use and deliver significant value on top of my laser application without hating a server to deliver my content so it works nicely when you when you start blaring in things like as your front door azure search More and more of of azure storage. Whether it's the cues the service bus service buses a separate feature but cues table storage blob. Storage block storage. Lets you serve. Jason files directly into the browser. Now is there a rule against making. Api calls in a static web application. Do oh not at all not rules against that. The azure functions. Are there and the deer run. Great i want to minimize those number of calls because to aggressively cash with appropriate expires. Headers coming out of things like table storage and my blob storage. Where i can cash things. I want to cash that aggressive. So that i'm not going back because azure functions you're charged per execution so it's granted it's per what ten thousand executions or something like that so when we start penny pinching i don't want functions to execute reduce that number as small as possible. Well an end to be clear like if you were lazy about composing a page you could be making dozens of functional her render and ripen transact. That goes back to what we experienced with With web forms the the blinking of a page as content waits to be loaded. We gotta take down the content. That's on the right side of the page load the data from the server rendered in the browser a pain in the neck. Yeah there are certain realities though. I mean if you're you're dealing with some sort of dynamically changing data sets you know where you've got people adding updating modifying things like leaderboard or something. There's no getting around that you have to refresh that data on a on a schedule. That's probably not gonna bit's gonna bust your cash wide open. Sure but you know what in the times between when that when that data was created. I can cash for a couple minutes. I can cash for five ten minutes or however long it is between the data change so good example of this i have. I have a website that built it. That shows my hat collection. Did you know like hat's if i mentioned that in sequence funny fun fun colored beards. Yes i've done that too or is it if it's purple is still event on so I wrote a little website to allow folks to see. Here's the hats that in my collection. I lead folks onstream Ask for me to put on a different hat. And i also use the hats as an indicator of happening that day. I did some work with gelb actions. I've warm get hub at when you look at the replay. Oh for instance. We're going to get her pat. Here's what's going on that day. So so when i want to give folks this list i mean it's it's silly. It's a collection of of my hats. But let's make that into a blazer static web app because let's face it. They don't change that often. But there's little database. There's a collection of images that i can store route in azure blob storage and just relate them with the same filename so when you come into the website i can deliver. Here's the jason file of all the hats that we have. And that's i only have fifty that's loaded now so low that up into memory stored in the browser and all the rest of the content is the for rendering is just cashed luebbe to css Some gadgetry around the bootstrap. Css framework and little solve epa. Absolutely right so. I can do search across that really quickly to. Because it's it's jason file in memory. It's a collection. I mean fifty items to search through with link is. that's a snap. That's easy bright browser. He sent for lunch while in again computing on the client side. You're not consuming united asking the server to figure this out for you. Exactly i'm an. I'm not pushing all of the hats. Down immediately i can use. The loading equals lazy tech my images. So if you're only looking at the first two rows of hats six hats will load up the other forty some images. Great that now. There's less pressure on on the queries into my storage. And there's less requests on your machine trying to get that data. So it's a nice balance How often do you update the photos of your hat that well. That sounds like a fashion faux pas not to be updating those i mean got to be some interval editing in terms of the techniques or refreshing caches because you know as someone who did a lot of catch work over the years we have this sort of smart cash replacement approach where we didn't care about serving out of date data. You know sometimes out of date the enemy milliseconds but we did care was not having the user. Wait while the cast being repopulated so you didn't just trash your cash and you refilled it. On the next request you build new cash items and then you just swap them in right so at the point that i that i upload new new hat records. I- repopulate the jason on desk and it knows to re. I invalidated at that time. So that you you will immediately get. Here's the new data. Because i typically do those uploads in the middle of a stream right i let people say oh gosh. I'm showing off new hat today. Let's get it loaded into the collection. Take five minutes. Take in. And i have bought actually. That takes pictures of the hat while i'm on camera and I loaded into custom vision as your custom vision. So okay i'm gonna geek out for second all yet. No no. it's it's pot i. it's my bhatt but it takes pictures out of s right the open broadcaster software a grabs a frame from my camera and uploads it into custom vision dot a high so after it gets fifteen images. It knows how to identify that. So in the future folks can execute the hat command and chat and it reports back. Well here's the hat that you're wearing. Here's what's interesting about that hat. I'll add some information into that into that data store for the hat collection. It's all the same location on azure. And now i've got another item in the website of the bought news how to detect it and we can continue having silly fun hijinks onstream you know the key is never grow up. I'm a toys r. Us kid don't right and Hold that thought for just one second while we take this very important pause for this very even more important message. This portion of dot net rocks is sponsored by data dog a monitoring and analytics platform combining metrics distributed traces and logs in one place. Data dog helps leading. Companies migrate to the cloud transform to a micro services architecture or transition from dot net dot net core with active and dragon dropped dashboards see a high level overview of your dot net applications alongside the health and performance metrics from the applications underlying azure. Vm's start managing the health of your dot net apps with free data dog trial. And they'll send you a free t shirt go to data dog. Hq dot com slash dot net rocks. That's data dog. Hq dot com slash net. Aro ck s. And we're back. It's dot nierop. Carl richard pay and that's jeff fritz. And we're talking about but static quite over there trying to passers one of radio with those two guys dot net guys. Sorry the dogs get outta line over here. Pet armadillo in texas. Some reason i just had this image of you talking to a rainbow spray painted armadillo. That was making noise would have to be a nine banded armadillo that proper just the three banded would not include nine and green bull armand is there to enormous. Okay yes sorry. Are you happy now that you know i didn't just make up the term nine banded armadillo. I'm going to go in bengal that right now. There you go now. I have the kind of friends that when i pop out a line like that and then and then pull that pages and a demand go year wrong. You know by the time we're done with this episode. There'll be a ten banded armadillo clearly okay so to those out there that are listening if you're listening to this. Podcast go out to wikipedia in check and see if there is a eat nine or ten abandoned armadillo. Get back to us. What were we talking about before there was some working here somewhere. I'm thinking about the scenario. You're painting earlier. Carl about this. I have a sort of real time. Update component is like is that where signal are comes into play like a static page right no back end rendering per se but then you have this component. It's polling concentrated you hugh fat smell. Yes but the problem with again with the term. It's like where's the static part example. Now they we just call his was static about is. We don't have a server. That's actually rendering each individual page right. We the base right in all the computing. That's assembling all. This is happening in the browser. So there's no server for you on we've already generated we've render all the ui because we've used our favourite editor visual studio visual studio code. Fill city of for mac visual studio for. That's i guess that's the only visual studio so we have by now comes with a free set against knives but morale out come with life. Share get hub codespaces and bore and a giant armadillo which is different from the nine banded. Armadillo i know i looked it up every But this also sound. You know we were doing this sort of thing for a while when you think about early days of angular and and durango and so forth it was all the client side rendering thing. Let's stop making all. the page. work happened on the server and allies resources better. I'm just trying to figure out how this is better or different. Gets kinda the same thing it is. It's exactly the same thing. We're taking advantage of more of these services that are already built for us on azure did deliver those features those capabilities that we don't need to think about building. A search appliance is is a pain in the neck. Bud asher cognitive services has search available for us that will monitor a sequel server database or azure table storage and as records change in those data stores. It re indexes on the fly soon. Now i need to think about. We'll go trigger the external process over here with some sort of a cue message to go rebuild and deploy and swap out the index when you have the new index on now. He does it all for us. There's a there's a free tier to it i can. I can love. Fifty mega data in there and fifty megabits a lot of data. When you're talking about just a a list of contacts or something that i can. I can create an index around that simply I get an an endpoint. I can hit an activate cores the cross origin resource sharing. So i can hit it and make sure that only those queries are coming from my application and deliver great search results with the ability to scale later. If i get more data okay right. That's pretty cool. It's interesting is. I still don't know that we have great tooling to build websites. This way. that really encouraged us down to the pitta. Success year right. We we need help there. There's the the visual interaction to build these websites to build and deliver your face with with writing tax right now visual studio visual studio code visual studio for mac. The whole family provides a really nice razor editing tool that that gives you all the intellisense all the refactoring capabilities built into it. But he doesn't give you that visual editor that we had back in the day. You're back to web forms. Darnold they brought back to web forums. So is that something that would be really nice to have to let folks at it and build well. I would almost argue that. That's what you have with power apps and and becomes the story of well if you if you want to build something quick and visual or apps is is a great way to go hook up to to a share point service hook up to azure functions and with that all onto other azure services. That's great and of course you can deploy those power apps whether it's web mobile whenever it's a nice place to fit things in there. It's always been a problem though. It's been a square peg in round hole problem with web designers because one of the big benefits. The web is flow. You know it just use. Is the your screen coming all different sizes in whatever you need to make things work you is. They're not. It's not pixel based you can't get a grid in just you know. Put drag points around a text box expanded to where we wanted to go. You know is not a static sized screen. You're i'm going to agree with you. But i'm also going to hedge hedge my agreement. There's when i when. I think back to where we were in nineteen ninety-six nineteen seven dear lord twenty some years ago and and the only thing we cared about as far as the different sizes are when somebody decided to re their browser. But yet today. You've got really weird over-sized Screen sizes like the size of the monitors that richard has. I've got a forty three inch. Ultra wide screen here. Yeah yeah the twenty one nine nights like who does. Why do people bill whip had just for twenty one nine sized screens like here. I am maximizing across his forty three inch screen. Now do you think every is used. Now gimme gimme. Give me the options. Dialog that's tragedy. I've actually been trying Using vr to browse the web. And i just want to spin around in circles they. They put up around to the other side of my excel spreadsheet by spinning around in circles. Yeah you know. I'm working hard because grapple so but berry now we've actually seen an evolution where things like s flex make that whether whether it's the small screen your mobile device it's it's a regular nineteen twenty ten eighty screen that a normal person has on their on their machine. Or you're looking at something that's ultrawide if you ucsf flex now everything just fills the appropriate space in wraps appropriately like it did back in the day when we decided to use table layout for everything. Now right yeah. It seems like they've seems like flex but still not ratified stanford. Now they've they've found a way to the whole was awry. When i rap the concepts of css and sas wrap that together so it builds an able to generate css appropriately with media queries wrapped around things. And i use flex to lay things out nicely. I can do a ton with my layout to make things better using static technologies once again but to come back to the original point that carl and i were talking about. Gosh i'd love to be able just put a square on the screen and move move the dragged points around while maybe there's a opportunity there to use flex with some sort of a designer that is allowing us to place things appropriately size it the way you want and deliver value. I tell you if there was that kind of thing for blazer there'd be no stopping it. I mean it would be talk about productivity. Yeah i think you're onto something there. I also think There's a rather large rather vocal quotient of the Web developer community. That would see that that type of designer was available for it and would immediately turn their backs on it and say oh. That's that's fisher price technology. We don't we. Don't use that or would you always have that battle of the folks who wanna write the code by hand and like a dynamic. Visualize you're like as i'm creating the code rendered that's that's cool and those who wanna be able to drag and drop but obviously if you want i think the best drag drop experiencing exists right now is in the power apps world like and again they put you in a fairly tidy. Can of what he can do in that space. But if you're doing forms over data you'd have a tough time beating this if they if the data you're looking for is in the cloud that you're working in presumably azure like boy. Oh boy it reminds me the old v days like it is so wildly productive. Were the the main skill you're coming to. The table with is domain knowledge. Not programming now. Yeah i completely agree with you on that. Push all the technology to the side so that you can be a subject matter expert in be productive. I look at. I spent some time working with gatsby over the last few months and gets b has an amazing automatic refresh and reload of whatever component. Is you're working on inside the web browser when you're in that development experience we've tried to replicate that type of experience in a as peanut with blazer be using dot net. Watch run with a blazer webassembly app and you get this this nice refreshing experience but it. It's a built compiled language. You have to wait for it to compile and rerun the entire application in the browser the the inner loop there is something that we the dot net team wants to improve but man. Is it nice with gatsby. It just immediately. You press control asiya or or colon s inside your your vim vim text editor and you see update immediately in the browser It is quite impressive. Is that where i want to be. I i think that's that that's a programmer. A developer an engineer. Who's just way too excited about their tools that that wants to have all of those things handy in it. Doesn't it doesn't do to a little bit of what marco was saying. It doesn't democratize in make this technology accessible for everybody to be able to interact with that. That's become something that's closer and closer to my heart. I want to make sure that anybody anywhere can can start. Learning dot net can get involved with blazer can can build applications easily you on whatever technology they have available to them whether it's a chromebook or a fire tablet or a windows desktop or a mac laptop. Jeff do you have this experience Microsoft comes out with some innovative technology that addresses a need in in a subgroup of the community and it addresses that need very well for those people and you get a whole bunch of people who don't want to use that technology just throwing stones at it and it's not for them but but they're you know the thinking just because you were innovating for this particular set of the community that you will stop innovating for the rest of the people or you know that all these other things that they're currently using are going away i mean is it me or do do the internet masses have this sort of reactionary reaction. Let me tell you about a little feature called c. Sharp nine top level statements. Have you seen this Yeah i think. I have at refresh my memory. I haven't used it sure. So the idea is when you write a regular console application with with dot net. You have to start off with us. He has project file. You need to have a class file. You know right. Public static void main string array of and concert right line hello world. There's a lot of gu that around that that project file to just get this running will want if we can take all that money to the side and you can just write in an application as council write line. hello world. That's the idea with with Top level statements in c sharp is with c. Sharp nine dot net. Five and forward. You can write very simple one file and it runs. Maybe need to see us profile next to it so that you can specify some Import some other libraries. You went to include and away. It goes right. You're able to dot net ron in just executes. Well there's all kinds of ways you can use that then to learn and tinker with various and technologies because you end up writing two or three lines of code and a there was a group of folks in the community that there were saying. Why would i ever used this as feels like something that i don't need to get involved with you know it. It isn't solving a need for me. That's that's okay. Because it exactly to your point. Carl when i to teach they can just write two or three lines of code and learn a for loop learn an if statement select case and see exactly how easy it is to write without getting into the minutia of all the object oriented interactions. I think a general feature of being a mature internet user. A you know a good aspect is to be able to not respond when things are out there a you don't like just don't use them it. It's just simple charity. You don't have to poop all over things just because you don't find that to let me turn around and exactly what you're saying. Let me let me ask you if you get a question that i hear a lot but working with blazer training. How's it going there. richard. Moment of dr karl for a second So i get the question from a lot of folks that are learning blazer. We'll gosh why. Do i choose blazer over angular or react or view in. Why why would i. You know. prefer this when i can use this technology. That's been around for ten plus years and the follow question is always will. Gosh why isn't microsoft using blazer in all of their production applications. Well it takes a while to build these things and the project planning cycles are really really long with when we think about being. There's a great case study author about how being is using as peanut core and now on dot net five and how much performance improvement they seen. But are they going to go in. Migrate to blazer and turn it into a blazer sadeq web app right on the answer. Is you know if your job script shopping. Invested all this stuff and just use it. Sounds like its own version. Eleven twelve by now that you blink again to that point one way to be successful here. There's so many choices. But i think it's very interesting that version nine. You're thinking in terms of how i get new people involved in sharp like ridicules. I really applaud the team. They've done some really cool work around notebooks. Have you seen how notebooks work with c. sharp. And you're talking. Jupiter notebooks right. there's jupiter notebooks and now there's dot net notebooks that run inside visual studio code. What i've got a better know coming up where we're going to talk about running a jupiter python notebook inside accel. Oh yes yes yes i. I ran a series of streams on the visual studio channel where we taught the basics of c. Sharp we did it. All in the browser using jupiter notebooks and it runs a technology called dot net interactive behind the scenes to compile your code and delivering to the browser but the next version of that runs with blazer so it all compiles runs in the browser. And now a good chunk of the dot net docks where you have c. sharp samples being shown you can actually click and run and tinker with the samples live inside the microsoft docs for dot net. Now we're talking now. We're teaching giving you that hands on experience without all the ceremonial go. Install visual studio. Bring down visual studio code. And make sure the sdk's configured blah blah blah blah. But it speaks to this. You know this reminds me of the early days of dot net. When studio wasn't quite ready. And we were mostly doing this stuff notepad some code notepad and then you could throw it to the compiler they and there was this whole point of like listen eat own half to use the big tool like this all this lightweight stuff. This is just a super smart lightweight approach. So this this Came about this. This coal sort of maturity internet maturity thing came about when i asked some people twitter feed. Hey do you think anybody would be interested in Music to code by on vinyl. Who yeah and the reason. I asked that is because i've noticed that it will anybody who's been paying attention to sales. Vinyl sales last year out did not see sales. Think about her minute. Yes were more vinyl salt as much to do with. How out of date cds are. It's both vinyl. Sales are on the rise. Cd sales are down. But there's a whole very strong contingent of people in. It's not just people like us who grew up with vinyl. It's mullaly that. Have you know record players and love fine on. They liked the experience of it in the smell of records and the the jackets in reading them in the artwork in the whole ceremony of you know using your disc washer in cleaning your disks and all that stuff. And i thought well you know a side of an elp he can you know twenty five minutes pushing it but you know maybe a cut it down to twenty three or twenty four and and it. It's the perfect opportunity. When that thing hits the end of the record to get up and go to the you know record player in turn it over and start pomodoro. So i thought it was a cool idea and a few people said yes but there is a quite a few people that said you know my my record players in the other room. Why would i want that okay. So let's it. Don't you thinking about somebody at the club who's going to be taking the the vinyl and being able to scratch and do some really cool things with music to code by dropping agreed to that fine fine purple track. That muzak might my fifteen year old daughter. I can't believe with fifteen year old For for christmas she wanted to a there was a special release of. Why don't we They had a album they were releasing and there was a special release on cassette. I'm like whoa. You're asking me for a cassette for chris. Like out here. I'll drop the ten bucks and get the entire album on itunes and you can have it. No no it's a special edition. That's signed cassette with this. That unlike you don't even have a cassette player. Go pull out. I walk. I have nineteen eighty nine. Yeah i have an old stereo at my parents place. The as a cassette deck on can run over there and get it but what eighty two. Well the funny thing is if it's been sitting for long enough the chances that is just going to destroy the tape when you put it in there pretty high. You're right right. It's like oh you finally took the cassette tape player off. What do they do. Eight the any redeeming value of cassettes in terms of the aesthetic or the experience like compared to you know it was a little more. Shall we say convenient from records. It will hurt frank. Sure yeah but he the ultimate conveniences spotify and so if you're not after giving drafter experienced really experience i think the most interesting if you have any thoughts about emailed me. A carla. Franklin's dot net about jeff. What's next for you. Thank gosh we are. We are coming into the spring conference season. So these conferences are lining up back to back to back to back We have mvp summit coming up in march but before that actually in february the end of february We just announced were running another dot netcom dot com focus on windows development interesting idea. I'm definitely in an episode. The yeah the biggest feedback that we got coming out of dot net conference in november. Was you've got this. These great updates for windows development for windows forms and wpf. But we'd like to hear more so February twenty fifth. We're going to have a full day of windows development talking about all the windows things windfarms. Wpf mixed reality We knew i you. Wpg and and might talk about a little technology. Called dot net maui. In there we might vary Yeah well i've been waiting to see some useful news maui coming soon. It's we are taking on a hard problem. Man not toys about it very hard problem and we've got the right folks working on it. Who know how to go through. And in frost these these operating system boundaries. Very good jeff. It's always fun to talk to you. This is no exception. So thanks a lot for spending timeless. It's been a pleasure. Thank you so much for having me all right. I'm just about done over there okay. Walking within the we'll see you next time. Dot net rocks. Walk dot net rocks brought to you. By franklin's net and produced by wop studios a full service audio video post production facility located physically in new london connecticut and of course in the cloud online at p. Wwlp dot com visit. Our website is dot any t. r. o. c. k. s. dot com for feeds downloads mobile apps comments and access to the full archives. Going back to show number one reported in september two thousand and to make sure you check out our sponsors. They keep us in business now. Go write some code. Cnx next time band aw.

jeff phil zen castro gavino microsoft sharp fritz Jeff jeff deb richard campbell carl franklin twitter blake blazer jason Carl carl Carl richard jeff fritz facebook
Migrating from Delphi to .NET - a Story by Elias Puurunen

.NET Rocks!

57:52 min | 1 year ago

Migrating from Delphi to .NET - a Story by Elias Puurunen

"Hey this is Carl Franklin and this is Richard Campbell and we're going to be hosting the Dot net developer days conference in Warsaw Poland October Twenty third through the twenty fifth breath developer days is one of the largest events in central and eastern Europe dedicated to application development on the dot net platform and we'll be recording a number of shows from the conference and hanging I'm crazy welcome back to dot net rocks this Carl Franklin Sharp coders should shut up about Delphi apparently C. sharp coders have been dogging Delphi and dogging Anders Oh she get this thing get the first draft in the camp not done done is crazy draft finished good good I've been as you know I'm GonNa let you come to the decision about this blog post whether you think this person is Recorded this on the same day as the show Jeremy Miller last week so let's roll the crazy music for better no framework emphasis for writing it and which I just don't see any evidence of it I don't know who this guy hangs out with but listen to this disclaimer those Oh my blogger know me personally also know they don't go out of my way to be confrontational or disrespectful I try my best to follow the middle path to see positive and all things but a c sharp developers and they are confronted with attitude and belief system that quite frankly is utter nonsense it's not based on history facts but disputes rooted in childish `ISMs in my buddy Richard Campbell how you doing man you know no rest for the wicked dude of pushing hard to try and get the book finished and We're in the block of pretty heavy duty like I said last week working on a Blazer version of our back office and that's coming along really well it's the travel at this particular moment which is why we recorded all our October shows in September is I pretty much on the road for all of it the together in Poland Gotz every once in a while I come across a blog post or tweet or something where somebody just a ranting lunatic okay I've I've gotten to a place where can consistently right three thousand words a day that I'm proud of good and so that's enough that with a good push for six weeks or so and this is Richard Gamble and back in studio today Elias Pure ruining GonNa be here in a bit but before we talk to him I just want to check in times you face the level of stupid that begs a response of verbal one and this is one of those cases lately I see more Delphi developers getting into debates must be obeyed and and others that I am spending the winter finishing the history of dot net I'm not in a travel I'm going to go up to the coast be all alone you say every dow like Oh maybe I'll take a little time and smoke some ribs did that this time the smokers all cleaned up and put away now but I a raving lunatic but he's I don't agree with what he says but what his disclaimer is great and this is a blog post called why c entertaining let's say that and I don't think this worldview exists in mass this guy may have found some and I got nothing that's it so who's talking to us today Richard you know we're GonNa we haven't talked about Delphi on the show in ten years people that he talked to who were living in the past I I would say this blog posts might be understandable in like two thousand four did we do a show about six dot net migration right and it was the the point being that Francesco a mix of old habits and unhealthy obsession with the notion that new means better all right I'm GonNa let you pick up and read it from there doc easy he's depressed these going to be fine you're going to be okay making a comfortable living in in two thousand fourteen migrating Old v Six apps into dot net and and his tool had gotten very very good yeah it was written in two thousand sixteen so apparently I'm I'm a little stunned I got nowhere to go nowhere to go either just go ahead and it's a good laugh is the US Navy dependent on XP so heavily He said how much money do you want keep maintaining security patches for xp which they do and they say okay yeah in for a developer days Poland in our friend Mr Guthrie is going to be there and it's right fun fun fun but I promised she it's just that there were lots of folks out there that were running at b. six APPS on X. P. we're afraid to move them for various reasons but that's not the common I'm actually going to read here the APPs in Delphi and I would that being stunningly productive that is a refined tool that hasn't grown as much as you know hasn't bloated right out there and I'm excited to come back around to that because always been impressed with Delphi no we haven't Delphi sucks right kid the grab a comment offer show nine seventy seven yes the back when we did three digit shows wow and we bring this up because at the time because experts stop being supported by Microsoft although that ended up being rescinded because Oy them out of rewriting them just never been an option there's simply too much code to replace in halting development for a couple of years to do that is a non starter we are successfully using the V. Migration is one from Herald short and it's five years ago surprise herald comment he said I worked at a very large suite of applications that were all written in V six they've been actively think about that of course is the VP six obstensibly stopped being developed in one thousand nine hundred ninety nine and so why fifteen years after that in partner and that's the tool that Francesco is making to migrate these applications and many of the com controls in libraries depend on into dot net while the various challenges along the way folkestone out there building and that I think ties back to the blog posts that you mentioned in twenty sixteen clearly some people out there building client side along with all the com components dependencies go develop environment staying on the thirty two bit version of windows does keep this much simpler although we've demonstrated that can be made to work on sixty four bit versions that would have previously been impossible mile cool I will also add v six ideas and the oddest difficult to keep alive as you might think while not a straightforward is installing on x. p. and that's from May of two thousand fourteen okay when we talk to Francesco Bellina about VDB six two dot net migration all right which is velten enhances nineteen ninety-seven needs to get he's talking about five years ago so twenty fourteen there was a team building vp six still right then keeping the maintain so L. keeping in mind the BBC sixty crater still running into thirty thirty two bit mode of review bugging issues that only current environments it has been handy we have no need to keep old nothing is come up that could not be worked around we now have a functionally equivalent set of applications dot net with no missing features in fact the application dot net we are now able to do ads certain features well you know our good friend Mark Miller comes from the world of Delphi and I remember being very jealous of Delphi in this crazy blog posts but allies peon wants technology to work for humans at age four he got to use a commodore sixty four which started his journey to learn shut up about Delphi not align you've ever said before I think I'm pretty sure human computer interaction. HCI and he's used the principles of HCI to make better APPS for the users he serves ever since he even named his company TVM's around to continue to deploy develop our product well so we made the point very succinctly you can doing it is interesting to consider group symposiums across Canada in his spare time allies teaches the University of Waterloo's masters of public policy students how to write code you can find his I book beyond passwords which launches October Fifteenth at Beyond Passwords Book Dot Com that's like five days from now right how to make computers do his bidding as he used WPF and silver light to fund his Computer Science Degree at the University of Waterloo Elias discovered the field of we North Eastern HCI solutions to reflect his commitment to great user experience or whatever we're calling it this week to combine his love of conferences turns out if you throw a large enough money at any company you know that's going to work out yeah and so there was a fair number of comments people saying hey you can still Kepala v six windows ten and like Yeah Oh my eyes glazed over paragraph two I'm not even I don't even want to dive into that that's a that's a special level of anti we we are able to install it and use it in production both windows seven and windows eight point one 'cause horses is back in two thousand fifteen before win ten shift a twenty fourteen yeah and and kind of just like not I don't know tilting at windmills maybe I guess I don't know it's just wow Um and I read on the show you'll get a copy co by and definitely follow us on twitter he's at rich Campbell I'm at Carl Franklin send us a tweet there's a lot of other software I bet they sing on modern hardware yet modern operating systems like stinky fast sure so harold thank you so much looked at Delphi as a win forms APP right I mean it was building client side apps and windows how do they ever get to the web because that to me is what pushed people out of it was we needed to get to the version of Delphi it's almost like they've got their own little ecosystem in the Delphi world is nice to see and Delphi certainly beautiful languid like speaking and Free Hotel Coffee He created track this event passport a suck free conference experience APP is powered conferences sell Delphi so the Rad Studio is at version ten now Starting at a retail price at twenty two hundred us the VP timeframe because of the features that had had and it compiled to real code and all that stuff yeah Delphi and code rush the original version code rush adver Delphi was I mean you never seen stuff made faster with stunning how quickly he could build software and marks a hell of a fast coder at the best of times but this was just like level up stuff and he you know that's where we're mark coined that term coating at the speed of thought right well let's bring Elias on and maybe he's got some comments on right and you can you're absolutely right you can still be productive in Delphi in fact I think looking at the latest version you can actually build mobile apps using the Monitor your comment a coffee music Kobe's on its way you'd like copies Dako- by right I comment on the website Don Iraq's dot com or facebook because we publish every show there and if you can there's all these different flavors that dot net appeared in didn't seem that the thing that that Delphi was about you know it just occurred to me that you know even though we all know this so I mean that's not an inexpensive tool that's is as much if not more than than a full embassy and subscription for a year anyway got me actually to go look up delphine through to look at the state of affairs and Hey Embarcadero still out there owned by different amounts by era and They still very close we're almost there beyond passwords all right first of all what did you think of the blog post did you get to read any of it. Carson has to be expensive because their audiences very limited I would say compared to the open source community yeah I don't I don't know the answer that brother but basically designed C. sharp modeled after Delphi well modeled after Java real yes they modeled it after Java but the the way that the person who had written this APP long since had left the organization Yep the core of this APP ran air quality wjr well I mean talk about going back to school right past gals been around forever ever and and a great language on its own right I always it is just makes the point of the site is up the ECOMMERCE is running you can buy now like this is the product you can definitely by it through that APP it looked exactly like windfarms it was incredible and then and then compiled a regular cues like I got nothing bad to say about Delphi simulations and the the the core of this library was just absolute pure magic they're doing differential equations crazy math stuff dot net and c. sharp influenced by Delphi because it was influenced by Anders Hallsberg you didn't build the whole thing right contra with some blog posts might say yeah there was the take this and turn it into a web APP for many reasons they wanted to update their old database format they wanted to by a a government organization that had this APP that they've written in the mid nineties person who had classic scenario he's an amazing product at the time I'm stunned still being sold I'm just curious about like the market changed window stopped being as dominant as it was mobile is ah particularly in the way that events are handled you know with the basic two arguments of the sender in the arguments that everybody listening should know this by now there may be a few people out there who don't is that Delphi was written by Andrews Heilsberg who don't know Pascal who it feels like C. Sharp light which was part of the reason why some of our conversion projects go so smoothly it's not a huge jump to go from got it got it we all know you're from Canadian Canadia so they had this old app ace yeah you could build client side apps using windfarms WPF yeah you can build Web APPs with NBC and and and so on there's the micro framework running and smaller hardware like he certainly had influenced throughout it and I would say positive influence like there are few people on this planet that understand developers need better than Andrews Heilsberg except in Delphi as a we figured out that if we could carve out the Delphi library specific stuff any influence he has on any project makes it better yeah absolutely and when you look at the Pascal Code and Delphi Code today basically the way this thing had been written the core jam of this thing and I know you've had Kate Gregory on to talk about developers and and shops I have this APP be translatable into both English and French but should give away the government that I worked for sure like DB tables for doing access database look ups and yeah they were using access for this and the their version of win what you know can inherit from all sorts of base classes that was Adelphi thing are you that without a doubt that was a little bit above my pay grade I'm not I'm not ashamed to admit that I look at a differential equation my eyes glaze over but they we're talking about donuts standard so just to give a bit of background how I got onto this if we want to go down that path absolutely is I got approached that have code running in C. Plus plus they just want to keep it going and throw a modern wrapper around it we were basically facing the same scenario avenue just wasn't it strength yeah I mean the the one project that we worked on that got us down this path of doing Delphi to dot net when I was going it was formed if we could carve that out then we would have a standalone library that we could build you know worst case scenario into and enough of the code was there that we could basically step through and compare what the execute -able was doing versus where thankfully we were missing parts that weren't chew important we're missing a few forms but the core library code was still there versus the where we were in the code kind of like doing a weird kind of break point scenario couldn't find replacements for in Dot net core funny enough the stuff that we had to carve out so the references to anything that has totally unmaintained they want and it was written in Delphi and they wanted to turn it into a web APP and so they gave me a copy of the source code to look at under NDA and I noticed that mm sort of deal or best case scenario we could just port that code somehow over to dot net standard and then use that consume that library in an espn at Core App web API APP and then throw a nice javascript singlepage APP over it and how long was this apps clearly just shoving inputs in and getting results out and trying to figure out how what have you done here was there any stuff in Delphi that you couldn't Adelphi too so this project was earlier this year actually okay so so I'm saps modern times renewed actually dealing with some components that when we first tried to port this to the newest versions Adelphi deliberate itself wouldn't compile because it was yeah timeframe was around January February twenty nineteen ban it just it just shows like sustainability of and then that turned into you've got this APP it's in Delphi it's been compiled against a against an ancient version of Delphi open my contract was to take a look at the software and go can we add new entries to this existing access database and how things not break plus they want to update it that's what compelled them to want to do this rebuild was because the initials offer this thing that had been written in the nineties is still important enough that they're going to do but sounds like a complete forensics exercise to try and and get it into shape I cannot guarantee how much longer that's going to continue to run on windows I mean it probably will but the yeah no certainty compile did you have a working Devon vire at Delphi Dev environment for it no in fact some of the code was missing while you were missing some the project the run time was already under construction before he joined Microsoft so the you know the response of all that important web was important and interesting how do you get there you know you talk about the strength C. Sharp was and I think it's one of the interesting about C. Sharp so many people use e sharp so many different ways we're able to kind of reverse engineer and figure out what the code was doing that way it was not an a billable state though that is really interesting you got the black box problem to do with DB tables which the time Delphi two thousand seven came out DB tables had been deprecated and I think even removed from Delphi and you didn't run screaming out of the room I've written code for the Atari Twenty six hundred nothing scares me this pass go from Delphi over to see sharp land and over into dot net standard but you're talking about Donald Standard not core hand if in the worst case scenario yes and that was the worst case scenario we were bumping up against right you did have source just not a compatible environment I had source and most importantly I had the core library had the simulation engine which is the bid they really hard to work around but core three has high DPI for Windows Forms Yeah that would mean recompete assist database you can poke out directly you've got a compiled APP that was originally written in Delphi that you cannot Ri compile because you don't have a working environment easy screen automation wrapper around the original APP to keep that going like basically just do if we have a web API just crazy absolute worst case scenario that's not the worst thing in the world the next best option would be if we could compile this code if we can compile this library because I thought my my initial thinking kind of went like this most horrible awful hacky version is we could throw some sort of in its form to get results from it that was that was the worst case scenario and then from there I thought well who did you try and stay in Delphi well that's where things got interesting because I have this tendency in this is probably very into a deal l. and then we can do some p invoke or something crazy and at least we could call into it from me I mean I in modern versions of windows you're running into issues where it if you're running on high DPI displays it doesn't display properly right or scroll bars ah it is a good day to blow register absolutely one hundred twenty eight bytes Aram tell me more nat somehow yeah because it's written because you have the source of the Pascal Source Code we have enough of that we had the source code to the core engine relying on components that have been deprecated way earlier while but when we when how long ago was this allies because you're you're talking about very old version could p invoke into at least we'd have something yeah do you not even you're not even trying for a radio you're you're willing to calm this thing you have to Michael it's fun for US Watch watch this we have watched this every great accent so if we could basically carve out all the Delphi in platform specific stuff and compile that engine into a d. l. l. the best business decision but I'm curious intellectually I suppose in that when I'm faced with a challenge or something that I I subscribe either to Delphi or two dot net will will get somewhere then I remembered that back in two thousand four two thousand five there were versions of of Delphi when it was owned by code gear so this is after Delphi was sold by Borland over to code gear that we'll come the hell out of it if we're going to come the shit out of this thing where there shouldn't be so who knows what weird API calls it's making down any and you've got all the window Shimshon things to try and keep things running but yet the Mark Miller philosophy of don't tell me something's impossible because I'll just find a way around it that's why we tell you it's impossible man we just want to see if you're going to do it which they wouldn't sell us at now the vendor this point is who embarcadero exactly didn't anybody old version Delphi kicking around on floppies you talking about a twenty year old code like it probably wouldn't compile in Delphi today that was the trick is I thought if we could get this to compile somehow I can imagine you'd end up running this APP where it's like no you can't use a modern screen that's the high defy things are remarkably tricky problem because it's just nothing that was considered before and compile into it which would have been great if we could have actually got a version of that of Delphi two thousand seven from the vendor I tried I tried now now what will happen is I'll get a million tweets saying you should have gone here in right the most concerned about right because I mean I'm thinking about mean that situation if I have this I could read this code and rewrite it by and compile this engine into some sort of a seal our library that I could call so at least for dealing with managed code you have a great great some old website somewhere I mean the other question is like maybe it was sitting on a pirate sites somewhere that which is questionably legal but so that's the thing is when you just you just hit on the next idea I had which was if I can get this down into managed code maybe I found was the dot net compilation engine that they had was just not it produced really buggy code and so they dropped support for it very fast I could disassemble the library and use reflector or or dot peak or just decompile shot at all those vendors and I take that what's in I l. intermediate language and converted over to C. Sharp and maybe it'll work right and it's not like you'd be Salt Lake you were going to buy a new copy of the new version anyway right this is a particular instance where you need an old copy yeah but I can imagine Barbaro simply crushed any version of the code gear dishes when they've got past it well after two thousand seven basically what the possibility there was this period where there were versions Adelphi that compile against C. O. R. if that and it's probably old enough that the code you had which was from the nineties might actually you could compile Delphi down to dot net wow now that's just crazy talk and so at that point I thought I wonder if I could grab an old version of Delphi I blazer APP workshop online in just one day will write a complete service I blazer PWA APP with entity framework core API controllers components city Out with you so go to developer days dot pl and get your tickets now awesome idea and I'm going to stop you for just a moment for this very important message hey what are you doing Monday November fourth wanNA write a blazer APP with me Z. Hack we throw I go there to basically operate the APP in a bubble and put an API run your literally filling. I like it was a very short-lived product which speaks to this may not have worked out anyway right like well yeah you gotta Dig apologists run properly it's followed it is preceded immediately but I watched this hold my beer yeah yeah but I mean I would think even if you went and got him on a version of Delphi ailing the APP I'm talking about if we've got an compile -able out yeah and you throw it on a high DP ice cream you still have problems with that so you've got an ah just to get your a you're you're running your your you get into a dot net form where you could probably decompile it again into CR so our ask peanut core identity and User Management Using Visual Studio Twenty nineteen so sign up online right now it blazer DOT APP v next dot com that's Blazer DOT APP v next DOT COM amor back this is Donna rockstars Carl Franklin I'm Richard Campbell Yo we're talking you got Russia in there you got old crappy Delphi compilers the possibilities in Pascal ABC's compiler no this is where the I found this crazy version of Pascal written by a professor at a university in Russia it's called Pascal ABC and it is a learning tool but here's the kicker it compiles Pascal and Delphi lipped wait a minute so you started that process at one thirty in the morning so by now it's like five or six in the morning Oh there was no sleet step comes in and I call it f. five dirty word because you would hit F. Five exactly the mental state earring 'cause you're on a path now you know this could be a series on Netflix yeah no kidding this is full of suspense and intrigue goes away so continue to do that and I'm just continuing to just get rid of all these compiler errors hit F. Five getting rid of it dial and you had to pick them off one by one starting with the bottom right some of them were fairly standard like we were oh you did it in a sitting yeah I was just like at this point I was committed I was I was I think everybody listen to this knows hello I'm I'm on the edge of my seat tell me you did this because I'm going to get at work so around one thirty in the morning language so that that you would take a code base originally written in Delphi in the nineties use some kind of of Pascal compiler think it is still alive and it still works holy Borscht Batman thing so this is the code you had would compile it using a type that wasn't recognized or there was you know there was some sort of there was some sort of weirdness that was common amongst all the code so is like we could just do copy paste and seventy a lot nice yeah good right Pro Prado's law result right right rid of the typing errors in eighty percent of the compile it into I al and then knowing believing at least because we don't really know what's true that you could then decompile it into c sharp inning movie the possibility of pirating software to get a compile wow so what fly code into dot net assemblies Da da Ta Sundown I love it it still alive I found the link the other end now with with Delphi apps do you still have that sort of code behind model or is there any kind of separation of you know originally beautiful way because that core engine that core engine was perfectly separated it wasn't tied into the floor compile look at the airlines that would come back and then say a dirty word probably several screen them at this guy very much James Kirk cons and I'm just trying to get the this tool to give me an assembly at the other end right right doesn't mean it's right it doesn't mean it's right doesn't mean it works right it doesn't mean the code has vowed like I'm just trying to get this thing two zero errors right yeah and get an assembly member what time it was the morning when he got zero errors compiled I'll something like four or five in the morning I just hit I just spent a couple of hours just trying to get the stupid thing to compile down now keep in mind very cool so at this point I've now got an assembly that I've compiled down I crack auto or binding or anything like that I don't even remember whoever wrote this out and I mean infinite credit to them they coded it in they copied select we do find and replace all yeah yeah and then we would take the number of errors from two hundred and fifty downtown other one hit at five get rid of another one and then finally hit a five match result build succeeded Zero Errors Almighty must've south writing series of copy pastes suddenly I've got a C. Sharp version of this library wow now the way that this Pascal ABC compiles down the Code It gives you some Pascal type rappers that do some sanity checks and try to make it as close to bill let's say exactly wow beautiful I it was it was domain driven design before demand driven design was domain driven design sources I still had some builders deal with so that that process of disassembling the assembly and getting that C. Sharp Code doesn't arms much Oh wow great so everything that very old well written piece of software everything the APP did was in a separate module take this into I forget which I wanted I want to say was dot peak I can't remember exactly though and take a look at it and now that the Pascal and Delphi implementations of those types as it can gap so when I went to to try and compile those C. Sharp have all of the core engine modules in c. sharp files and after on this compiled into an assembly and it's in I l I can basically say just give me the C. Sharp version of this I l and yeah right and the issues I'm now running into is that I'll give you a perfect example in the version of Delphi they were used so few so at the end of all of this I finally long ago they had learned Pascal some are some old they and they were also using some deprecated data types for example double or a single and that depends on whether your processor supports floating point operations in hardware hey what could go wrong with that about another hour hour and a bit of just doing f five try to get this thing to compile down to a done it standard class library I get to that magical zero errors using they were using fixed very large but fixed length a race because whoever was rid writing this library didn't realize that there were great from my one laptop that was awesome funny so that was a feature back then that real would actually all all through because it was a scientific simulation engine they were using real all over the place interesting and real in Delphi could be because now that the data types changing that changes the rounding behavior and depending on the more modern version of Pascal. I believe it always give you code that you can compile the first time I still had to go through this F five debugged f five f five diagnosed if I were this process f five five at four basically it's got to be a new process we need to Dr at five back when we thought about having the math functions as a co-processor yeah oh my goodness I remember getting the co-processor exactly but again it came down to a business decision kick it upstairs decide that no exactly I believe there was you could do variable length lists but they were just using a race so it was whoever written this had written this based on however nineties we're talking like nine hundred ninety six thousand nine hundred seven chances were you were running your computer was most likely a four eighty six or higher so you had it sort of acts as a forty eight bit precision forty eight bit floating point number so it's you know that could depending on how we're rounding that could throw the results this is from the ninety so they still had the the math co processor was optional exactly now at this point in the and it was the business decision came down to this is good enough this is close enough it's a simulation nine digits of precision close enough it was just let's throw some massive tests at this thing and see where we can break this library awesome all right very it's style based on the compute that was available to it but it for you it's got to be a nightmare well it meant that we had to make a business decision being value on your new C. sharp system and comparing them exactly and you always presume you're wrong oh exactly in the testing that we did we found the results were off by like one one billionth are one ten billionth right so it's in a dot net standard project and are you correct did you ever correct the Pascal to get a better compilation to read up into C. Sharp or with the error correcting nice part was okay I've got this piece of software that can give me CSV files which means that if as long as I can read the same simulation data out it up a real quick test harnessed to basically wire up the engine simulating about as close as possible as like if I were yeah that's very fair and it is this is a set of math functions right like you are doing some regression analysis than the math matters you don't want to decide all set of simulations and then and then run them and then not only run them but export them down to CSV files So the from the existing database I can set up the simulation engine the same way that the old APP should be running it and hypothetically do an export and compare I to you but it was I mean windows ninety five ran on three ran on a three eighty six sx and that did have to have a Coporo true didn't are the two files and see if they match and so I took the simulations that shipped with this engine why was the client had a lot

developer Dot Delphi Poland Carl Franklin Warsaw Europe TVM Richard Campbell Carson forty eight bit five years one hundred twenty eight bytes thirty thirty two bit eighty percent sixty four bit thirty two bit fifteen years twenty fifth
Episode 192  Blazor with Carl Franklin

The 6 Figure Developer Podcast

32:56 min | 3 months ago

Episode 192 Blazor with Carl Franklin

"Came hello and welcome to the figure. Developer podcast the podcast. Where we talk about new and exciting technologies professional development clean code career advancement and more. I'm john calloway on clayton hunt. And i'm john with us. Today is carl franklin carla's executive vice president of app v next a software development firm focused on modern technologies. Carl is a twenty plus year veteran of the software industry co host and founder of dot net the first and most widely listened to podcasts dot net developers. Welcome karl glad to be here. Thanks very much so Before we sorta jump into the meetings things would you give our listeners. Maybe a little introduction to yourself like tell them how you got started in the industry. Yeah well you know. That was a concise bio that you read. I have been in the industry. A long time actually got started at a tool vendor company for visual basic tools. Actually they were just starting visual basic tools. When i came on it was crescent software in connecticut. And they were doing quick basic tools. Believe it or not but it is the same kind of stuff that you do today. You know you had to like link the men and you had to do a little more command line than we're used to today. But and then they got individual basic and they had a big suite of vx controls and then and then i sort of Started writing for then visual basic programmers journal which became A which before was called basic pro magazine. And i wrote the q. And a. column for that. And i wrote all sorts of articles and started speaking it v. Bits and that later became. Vs live and Then i started in nineteen ninety-four all i am nineteen ninety-four a website. Nobody even heard of websites at that point but it was called carling gary's visual basic homepage and that was with is A friend of mine who are apec software and they had the infrastructure to support. You know website so he basically set it up and show me how to ftp html files and edit them and and then you know that became very popular you know then i became a regional director. I started training company. And i was doing stuff with dot net in the earliest days. Even the betas of dot net. And then i was teaching a peanut classes and db classes and then Of course just kind of snowballed from there then dot net rockstar in two thousand to a podcast before the word podcast was a word and By the time you know our s s an enclosure tags camera. I had a couple of hundred episodes in so i was like the content to chew on when everybody needed content and then coming from a background of component vendors. I understood what advertisers wanted and they were currently bemoaning. The fact that the internet was eating their lunch. Nobody was reading the magazines that they were spending all this money advertising in and they needed a place to advertise. Come on over here. I got something for you. So I lived on added revenue for awhile and did more training and You know was learning a whole lot from the dot net rocks audience. In there are dis and the mvp's In all of the the greatness that was going on the dot net community. And i just kept going and going and writing and building and Doing projects and eventually i started app. V next from a newsletter. That i sent out to the dot net rocks listeners and there was probably like forty thousand people on the list and i said and this is an opt-in list. They said hey. Are you interested in this time. Halloween's was getting really cool. Like hey you guys anybody interested in working on some really cool projects you know and they come along. I don't need forty hour week salary developers. If you've got a spare twenty hours a week or something like that you want to work with me on some things like a hundred. Replies came back to this little text in in a newsletter and vetted about thirty three thirty four them and of that maybe ten sorta stuck around and we started slack talking on slack and they became rockstars. They've just blossomed. And we've we've all kept at it and done really well. So that's about his concise of a history of carl that i can give you. You'd admission that you've kind of kept busy dabbling in a number of different items entertaining us all with dot net rocks and providing music code by. And of course your your latest incarnation Blazer train clayton is also a big fan of blazer and we've done some live streaming live coating of some blazer projects so were Somewhat familiar with blazer but wanted to see what What your experience has been what you're seeing in the industry in these early blazer days sure while from the people who are head down in nbc. I see a lot. I saw a lot of skepticism at first. Especially you know when you'd go to somebody with customers and say hey any your customers doing blazer and they laugh at you they'd be like are you kidding me. you know. we've we've spent ten years an angular getting our stuff in our projects every time any java scrip- framework comes out. We have to have an edict from god. You know to make changes and it's really hard and you know we've invested millions of in this javascript infrastructure. Now you wanna throw it all the way and you see sharp and then i'm like yeah but You know customers are are reluctant to switch lanes until they know without a without a shadow of a doubt that this is going to stick around and it stable and all that so. There's a lot of questions from people who who have been developing for customers for years especially in the javascript sacks You know what is this thing good enough. It's strong enough. Do you think it's production ready and all that stuff and what's really cool is i just heard. Mark rendall delivering a talk an nbc online. Just a couple of days ago and he's got some stuff that's like how you can piecemeal move a A web forms application over to heavy application without too much disruption and then at the last the last ten minutes or five minutes. He's talking about blazer 'cause blazers a natural sort of drop in next way to get to dot net core from web forms kind of has the same level of Shall we say the high level approach hides a lot of attack but that tech works really good and it was really pleased to hear. Mark say you know at first. I thought it was all hype and you know. How could this possibly be so good and so abstracted at the same time and you know when you have high layers of obstruction. You usually give power and control. But that's not the case of blazer and he said it he said. I have to say that i was wrong. He said this is so f- in cooled. I can't find anything wrong with it. I can't find anything wrong with the architecture. Can't find anywhere. Were gonna fall down that isn't manageable and A guy like him saying that just really you know warms the cockles my heart. It's interesting that you mentioned web forms as well. Because i know that jeff fritz is has been working on some components that mimic at least the style of the web forms controls. The he's easy adoption of blazer by someone coming from web forms jeffersons amazing he he basically. He didn't write it all but he organized this repository friends of fritz and basically he got some input from this guy and he wrote some stuff and he got some input from the team and they put together this community that sort of drop in replacements blazer components for web forms controls with the same syntax and everything. So that when you take an as px page and you want to move to a blazer page this going to be minimal disruption. i mean. That's the theory anyway. And they're working towards completing all of the all of the components in web forums and mark. Randall mentioned that too. I've actually interviewed jeff about it both on dot iraq's in blazer train. That's very exciting project. I just have to say there's so much web forms out there. How can you not have a project like this. You know so with with blazer. One of the things that has been semi up in the air has been the the application organization with web forms not for the benefit but the community kinda just went to throw everything into the code behind and then call the database with nbc. You know obviously that's a application organization pattern so it's kinda just given to you with react. You know they had Redux and that was how you you would manage your your state and everything with blazer. What are the trends that you've seen. And does it relate to anything else that somebody might be familiar with. Well like you know it kind of reminds me of vp. When vbb came out and everybody had forms they could drag and drop stuff on and you know they just did the minimal kind of architecture to get things working in running. And that meant code behind button clicks and stuff like that and blazers no different. You know it's new and shiny and the the lure is to do that. You know just to to get it up running quickly. And i'm even guilty of showing demos. I'm blazer trained that do that just because i want people to understand what's going on right but it isn't prescriptive. You know there was a point in in in the demos that we did blazer train. We're actually showed a proper architecture of you know on the api side using a well-known return classes that sort of wrap Success true or false in you know list of and you know one for entities one for a list of entities and used generics and then. Api manager or data manager for. That's reusable with generics. Right that has some nice lincoln there soon. After right one for each type of data and then on the client side you've got in a generic repository for api services. That handles all the crud stuff that you can just say. I want a new. Api service of whatever in then. It fills in the rest. And of course you can customize that too and that sort of really showed people just because you can do something quickly in endured early if that's a word quick and dirty in blazer doesn't mean you should in so if you're going into production with a blazer application the same kind of good architectural principles apply. You don't want to repeat yourself you don't want to you want separation of concerns and You want to use interfaces and inject things where you can and You know keep everything as as loosely coupled as possible. So i think you know the software software and blazer doesn't while blazer lets you do at the easy it certainly doesn't force you to a lot of the examples i've seen are the counter click example. Where is one. Where one client clicks increments in refreshes does all the things sir Some chat examples the. There's the blazing pizza example. Which i think is a little bit more involved in shows a little bit more functionality. In a little more idea of a more fully featured application window we choose blazer is is blizzard now the choice for application development. And if so do you do you go when you go. Blizzard server like what are the the caveats are. What are the decision points. What's the decision tree around that. Yeah good question. Well first of all for me. If i'm doing any kind of greenfield web application now. Blazers what i choose whether it's webassembly or blazer server that's what i choose just because i'm the most productive in an and have exhausted like all of the points of it where you can make these decisions in in. Have now a built up library of tools that can go and use but I think that they're the reason that you would use blazers server. And i'm hoping that everybody knows the difference blazer. Server is run all the code runs on the server in the magic happens with the built in signal our hub and of really really efficient. Compressed message packed binary format that happens between your browser and the server for you i changes. It's really efficient. Like i've tried doing what blazer server does with my own. Api and you know using compression and using all this stuff in it's nowhere near as fast as the voodoo that these guys are doing like it's really good so with blazer server the benefit is you you load quickly right. It's great for small clients that are don't have a lot of memory because it doesn't use whole lot memory it basically just keeps what you see Html on the screen and when things change is ships off command signal signal out of the server server runs the code keeps say a graph in memory for each user applies changes on the server sees what that is and then sends messages back to the client to say a update this with this and update that span with that and then it just magically happened so it's like the best of the plumbing that you've ever done with your basic java script infrastructure around api's but that's all off the table like that is all done so Server is good if you have up to maybe fifteen thousand twenty thousand customers that might be using it at the same time you can jack up azur app service you know with like fourteen gigs of ram and for processors. And that's gonna be able to handle that many consecutive clients before you start losing time you know before the latency becomes an issue. And they've done. They've proven that with tests that they've done please. A webassembly on the other hand has the benefit of running in the browser. But you have to download it right and you can do lazy loading and you can do Virtualization data and all that and you can do caching and all that but it has to get there. You know sooner or later so there is that hit also blazer wasim doesn't you might think that compiles everything to assembly and then ships down the browser. That's not what happens the only thing that's compiled to webassembly native is the lar- so the run time is binary and then it's doing an interpretation of all those assemblies that you're loading up so it is you know it's slower for the most part than java script is right now but in dot net six time right. There's going to be the ahead of time compilation feature which means that okay. You might have some You don't get the the the cr lar- per se but everything's pre compiled and it's just going to. It's going to run much more quickly. The benefit of webassembly. Of course is that you don't need a server. So that means everything can be shipped off to a a cdn content delivery network and dick and go far and wide and you can have bazillions of users in a in. You can manage your own. Api calls however you want with the traditional means of scaling api is right so it is a trade off. But what's cool is that first of all it's still evolving dot net six i think when webassembly becomes like but but for now you know you can use blazer server and then when you're ready for webassembly if ready for webassembly those components you can take all the components that you have turned them into a razor class library and that same code can be houston webassembly. So it's it's a and i gotta say i like the blazer component model programming against it with events in you know updates just as much as i like the fact that it runs in the browser i love the component model. I like the component model. Better even writing regular dot net zambo or whatever. It's so much cleaner in so much less verbose. So i've been doing devops for the last three years so i'm not i haven't been really able to play with a blazer too much other than what we've done on our livestreams. Is there any time when you would use both of these two or could you use these two models both the server side and the and the client side. Well you kinda do have to choose a horse right. But i showed in a in a in an episode of blazer. Train called synchronicity. Five point oh how you can Build both webassembly application and a an ablaze server application from the same code base at and use them at the same time. Essentially your server looks into has a reference to your your client project and uses the components from that but on the server and so you can do a you know. Have both of those browsers up at the same time if you go into your solution properties and use multiple startups projects in so now. You've got essentially to browsers that. Come up one is running on the client wants on the server. But it's the same code so while you don't wanna use both at the same time because you really have to choose. You can put off that decision until you're sure how your application performs in both hosting environments so that's the value of something like that wonder if you could even use that for like like an ab testing or even like a. If you're like you're talking about where your servers getting too much load or something like that Maybe load balanced to the client side rendering or something like that. Yeah i mean it's it's just the way that you can test both environments and see which holds up better. See what your customers prefer better. I'm in slightly disappointed with with all of that. Because i there was a demo that steve sanderson gave his while ago. Now to two and a half years something like that and he actually showed the Server side generating the initial page load and then passing it off to webassembly but he did like some kind of you know. Only steve sanderson can do this. Hack in the demo. And then and then they didn't. They didn't move forward with that idea or at least Not to the point where they've pushed it out to the to the public. I was kinda sad that they haven't gotten that out yet. So i think what you're talking about. I experienced myself the original episode. Where i showed that was just called synchronicity. And it was essentially the steve sanderson hack that he showed it in d. c. And the whole idea you. Is you at a reference to the client project from the server project and then he changed the app on the server to be the client project app and then everything just magically worked and then if you tried that same thing in dot net five it didn't work because of the way that scope css scope. Javascript work so that sort of caused that not to work in that way. Of course steve. Sanderson is genius and emailed them and said hey man. How do i fix this. He's like oh you just do this. So they have the fix. And that's in synchronicity. Five so there is a workaround. Okay i'll have to check that out but to be fair steve. Sanderson is about three to five years ahead of all of us. So we'll we'll catch up to him eventually and the nicest guy you'll ever meet if you see him at a conference you walk up to me i don i. Don't you're awesome. just go. Thanks and you mentioned the the latest and greatest. Bits coming in dot net six. Hopefully we're still on track for for everything that we want. In november think rich lander published on the dot net blog recording this at the end of march. I think he published it. Mid-march the preview to for dot net six. Do you know if there are any blazer. Bits that they've released in preview to already I haven't been paying attention actually. No 'cause it's It's gonna be so touchy for awhile that you know just kind of but but i am watching the repo and every once in a while. I put my head in there and see sir where they are. But i don't even think is the preview even out yet. I i just read the the blog post in anticipation for for great things coming. So yeah i am I'm expecting great things. I mean the whole you know the coming together of the cross platform. Ui is very exciting to me. So exciting in fact all right go ahead ask me what's new. What's new carl. You got something in glad you asked. I am working on a new show. Dot in iraq snuck going anywhere blazer. Trains not going anywhere. But what i'm gonna do is do a new youtube show. Where i'm gonna go back and forth between blazer train and this new show and this one is all about dot net and it's all about general dot net stuff starting with dot net five because that's where we are now moving ahead dot net six. We don't we can leave all the old stuff behind. I'm not interested in old stuff. This is all new. And it's called the dot net show so by now you should go to the dot net show dot com. It's the not any t. s. h. o. w. dot com. However for you guys right now since that's not available yet you can go to the dot net show that azure websites dot net. Go ahead go take a look at my intro. And while you're doing that i'll just tell you that. I'm i'm really starting with focus on zaman forms because i think people need to know that zaman forms is the basis of maui. You know the new the new hot coming in november. And it's not going away Donna forms is not going away. it's just evolving. And they're promising that if you stay with Stay with zaman forms right now and when as here. You'll be able to migrate your applications seamlessly we've mentioned blazer train timer to Do you want to go into a little bit of detail for the the audience here. Sure happy to so It started out where you know. I got on the blazer bandwagon. Pretty early on and i knew that people that listen to my show and the people who are interested in you know rapid development with dot net would be interested in it so i learned it. I started teaching classes. Dove right and i started writing applications. That used it and then i was at a conference a few years ago in poland. I think and i ran into the deb express guys who are friends of mine the booth guys we hang out and they said hey you know maybe places. Pretty cool isn't it. We're doing some blazer stuff. Maybe you'd like to do a road trip a road trip. And i said well. I don't know anything about your blazer. Stuff he goes. Nah nah not our stuff. Just just go talk about blazer. What's in the box. And i said well. Yeah i'll do that so we planned and we got a little you know. Suv and we drove all over the united states and flu around and went to all these places and we were like in our. I dunno seventh or eighth venue and we were going to come to saint pete remember. Yep yep yeah we then covid. It started we're were. I think we're in portland or maybe we're in los angeles and the driver started getting a low grade fever. I think it was portland. And we're and we're headed to seattle and seattle. Had an outbreak. like now we. We can't do this so we cancelled the rest of the tour. And i came home after quarantining myself in a hotel room in portland for a week a week and a half. I finally came home and I decided to start doing the blizzard desk show. So we morphed it into. Let's do the same content that we're doing but we'll do it online and we'll repeat it so that people with different schedules or whatever. And that didn't make too much sense. Because it was cluttering up to have expressed his video feed with the same content over and over again. So i said all right. Let's make a a a weekly like a serial you know where we just take these bite-sized topics and tackle them one at a time. So somebody can come and see a menu of topics they want and just go right in. So that's that's that became blazer train so i think we're forty some odd episodes in right now. There's quite a few episodes. Yeah so with dot net rocks blazer train and now this new web show. Where do you get the extra hours at the rest of us. Don't don't have. I'm a lucky mojo. I just am people actually pay me to do this. Research and make this content and i. Can't you know it's just a luxury to be able to do that. I mean i can take a day two days and just focus on researching my topic and getting a demo app. That has killer you know and then i can record it and then you know. Show it and all that stuff. I have a lot of friends in the industry. So i can reach out and find people who are doing things that are cool that are beyond my expertise and bring them on So so again. I just feel very lucky. I do have customers. Do have projects that work on. But they're also watching blazer train and learning from it and and picking the code in pulling it into their projects so yeah it just works out. I'm like i said i'm i'm very lucky. I'm looking forward to the dot net show and especially to getting back in his amarin forms and then into maui later one thing that's really cool. Is that sponsor debt express just made all their zaman forms controls. Free just download them. Yeah right so now. There's really no excuse not to do it. And and here's the thing about zaman forums. Like i was doing it in two thousand fourteen when it was really early. You know in hard. And i think a lot of people got put off by the same kind of problems with s decays and You know stuff being sync and it wasn't the best experience for a long time and then it just got a lot better and It today it's ver- it's a very different experience. The building presented forms than it was back then even just a couple years ago. It's a very different experience. It's really pleasurable so to dive into that. I've already written music to code by as zaman forums at. That's probably going to be my first real demo. Do you have any resources that you might point our listeners. To who are trying to get into blazer or Zaman forms were. Should they start all right. Well for for blazer. Look for the repo awesome blazer so this is a list of every single community and commercial project. There is out there for blazer developers. It's a great resource. Chris saint he does a lot of great controls in blog. Posts and amazing stuff. Laser train of course is a good one Zaman firms. James montier has written a lot of great components and he is one of the guys on the team. That is the sort of evangelist for zimmer forms so look for his controls but if you just google communities amarin forms controls you're gonna find a lot of stuff. The problem is and i had the same problem with blazer. Once blazer went mainstream is that there was a whole lot of blog posts and stuff that. We're all in previews and old bits and things that were completely irrelevant. And just should be erased. It should just be gone from google but so what my advice is is when you're searching for things. Use the date feature of the search engine so that you're not getting old stuff. Don't waste your time. I've gone through so many things so that's really cool though. The code doesn't work anymore blazers. Dad's zamara is like that. So is a bit of a swamp out there as far as that kind of stuff goes what has been helpful in your career that you might share with those just getting started or those maybe looking to level up your own careers. Surround yourself with really smart people. That's simple find richard campbell. Now seriously. i mean that's that's really it. I mean surround yourself with people that you can learn from and that are nice enough to take time to at least you know send you a link somewhere that you can't find learn how to use the search engines effectively but but i think surrounding yourself with smart. People is a really good idea. General awesome so on that note. Where can our listeners to follow you and keep up with what you're working on. My twitter is at carl franklin. That's probably a really good place to start. Because everything that i do. That's any consequence. I talk about on twitter. Carl this is really been great. Really appreciate you taking them to speak with us today. Sure it's been my pleasure talking to you guys. That was carl. Franklin carl is executive vice president of at be next a software development firm focused on modern methodologies and technologies. Karl is twenty. Plus year veteran of the software industry co host and founder of dot net rocks. The first most widely listened to podcasts dot net developers. If you like this episode please like rate interview on. Itunes find shown oath blog post and more it six figure dot com and catch us live each week on twitch and be sure to follow us on twitter at six. Or you'd have. This has been another episode of six-figure developer podcast helping resear- potential. I'm john calloway. I'm clayton hunt. And i'm john.

steve sanderson john calloway clayton hunt carl franklin carla nbc carling gary Mark rendall jeff fritz jeffersons blazers zaman rockstar karl Carl clayton connecticut Sanderson fritz carl iraq
Four Weddings and a Funeral, The Boys, and a Conversation With Mindhunter Season 2 Director Carl Franklin | The Watch

The Watch

43:28 min | 2 years ago

Four Weddings and a Funeral, The Boys, and a Conversation With Mindhunter Season 2 Director Carl Franklin | The Watch

"Hey it's kelly and welcome to the ringer podcast network season two of h._b._o. Successionist back and the ringers chris ryan and jason concepcion are here to give you the latest and roy family drama every sunday night. They'll be breaking down what we just saw on our new show called number one boy's succession after show you can tune in live on the bringers twitter every sunday night right after the episode ends <music> now hello and welcome to the watch. My name is chris ryan. I am editor at the rigor dot com today on the podcast we may or may not get an andy grunwald cameo but i believe that andy's news that he teased on monday was going to be the announcement that briar patch will be showing at the toronto international film festival i could not that'd be prouder of andy. You know as a guy we all know love and who watches most of his movies on airplanes. I know that it was his dream in life to be seen at the toronto auto international film festival but sincerely it's really really cool. That briar patch is gonna be a toronto. There's always so much good stuff there so to see his his work. Getting recognized is there is incredible. Maybe he'll be able to call and chat a little bit about it today. For these thursday shows what i wanted to do was talk a little bit about like like kinda run through t._v. and review. What's on right now. What are what are we checking out. I have sean coming on sean. Fantasy is gonna join me in a few minutes and we're going to talk a little bit about the boys which is on amazon which a lot of people have been hitting me up on social media to check out and i finally did and it was so far. It's been a very satisfying experience i wanted. Let's chat a little bit <hes>. I have nobody to talk about it with so i'm just gonna stare at kyle while i do it which i'm sure super cool for her is four weddings and a funeral on hugh kulu which is one of those weird things you know 'cause like i say i'm always tempted to put these shows into like buy or sell or you know. Check it out or just completely ejected. I would say that i have like a low grade addiction to this show partially driven by my wife who seems more engaged with it than i am but for those of you who don't know this indicates adaptation of <hes> a very beloved gosh. I guess it's like a ninety s film <hes> fr nineties british movie. It's set the television. Adaptation is on hulu had set in london. It starts natalie emmanuel who many people <hes> from game of thrones and it's essentially about a group of friends who are living in london some american summer british and sort of structure is supposed to be for weddings and a funeral and there are those things but for the most part is your typical group of people in their late twenties early thirties living in a city together falling in and out of love a couple up. I think this show is trying to do a lot and it's fine 'cause like obviously like unpack committed. I think the first batch of episodes of gone up on who they might have actually really. I think what they did was released a section and then they're going to do some more. Weekly releases going forward. It's obviously something that i feel like has been through you kind of like a process developmentally like in terms of what it was supposed to be 'cause. There's some tonal shifts. Sometimes there's a competition to decide within the show who is is important and who were paying attention to. It's interesting. I think that <hes> as he streaming show is go forward. You're going to see a lot of scripts that might have been meant for weekly releases as a twenty twenty. Two minutes show that now get expanded to forty five minute episodes that are released all at once and the way in which we watch. These shows can really change how we feel about them now. I think there are some inherent structural problems to four hundred funeral and of course like some of it might just be that. It's not always my jam but i actually am a pretty big rom rom com fan not. I don't know if he has that about me but like i'm kind of a sap so i'm definitely game for a ten episode. Romantic comedy comedy from mindy killings set in london. I'm all for that and there are some really nice. Commute turns here and there in the show natalie emmanuel who i believe is british is the playing in american in the show which i don't know if she does the accent fine but has kind of his role has to live a lot of this show joe doing things in secret so a lot of her character is basically try to hide things from people. I think that people will be surprised when they come across the show because it has is a little bit more melodrama than i think. Most people would expect from it. Not to foreigners in a funeral wasn't melodramatic and it's an original inception but i think the way that people have kind of approached mindy stuff in the past is that it's kind of a riff on comedic tropes that she she loved growing up in two thousand eighteen. A lot of things do wind up being passed each i. I don't really find this to be to pastiche. I think that it just feels like a show that we see the by the time like mid first season. You're almost like it feels like something that should be happening in these third season of a television show and it's kind of hard to explain what i mean by that without giving away major plot points in to to this shows credit. There are actually take things happen like characters get married character die. What have you but totally it's kind of hard and comedy is hard anyway but it's it's kind of interesting to see sometimes it's very broad satire of pop culture and sometimes it's supposed to be very heartfelt and i find it interesting to watch them grapple with that and watch them grapple apple with what kind of show at wants to be by all accounts. It's supposed to be a limited series so i don't know that they'll ever get a chance to take another swing of the pinata but it is an interesting like if you like rom coms. I can see it being the kind of thing that you're like. I've watched four episodes and now i have to finish it to find out what happens. In a lot of ways tone is the front and center of the conversation. I wanna have sean about the boys which is something that has been in development for really long time i as a feature it's a garth ennis comic and it has been i think in since the mid two thousand people have been talking about making this columbia was talking about making it as a feature at obviously sleet the world of content is changed enough so that you can have something like the boys which is run by arab eric kripke but has also input from seth rogan and evan goldberg and dan trachtenberg who made ten chlorophyll lane and it essentially looks like a movie. I mean it. Basically you feels like a like. They spent a ton of money on this. There are some cheesy special effects but for the most part it's kind of like hollywood greed superhero hero filmmaking but really raunchy very cynical and i'm gonna talk to sean a lot about the tone that this show strikes coming up my conversation with sean about the boys and then the back kaffa this podcast will be my conversation with the great filmmaker carl franklin franklin made one of my favorite movies of all time called one false move move with bill paxton michael beach and billy bob thornton does backs and length ninety two i think and since then he also be devil blue dress which is a adaptation of a walter mosely novel leveled starring denzel washington which is fantastic and he's gone on to become one of the sort of most dependable reliable and ever-present television directors of the last ten years you can find his work on homeland and the newsroom and leftovers and tons of other stuff and carl. Franklin is one of the directors working on mine hundred season two. It is mind hunter season. It's back. It's back on friday. You may not know that because it's been a pretty quiet buildup in fact there has is not really been any buildup. I've got a chance to see a couple of episodes. It comes out on friday so by the time you probably listening to this. You'll have access to mind hunter. I talked to carl franklin glenn about working with david fincher about coming onto a program. That's already established. It's visual language and how he learns language and what he does with that and it was a really fascinating in conversation with a veteran veteran filmmaker and it gives you a taste of what's coming on mind hunter in the second season. There are no spoilers in the in the conversation with carl franklin franklin so enjoy that check it out once. You've watched a few episodes. Check it out before you watch few episodes. I'm pretty into the second season from what i've seen. I think it's pretty it's different the first season it feels <hes> i know this is going to sound like a weird way to describe a show that was already pretty detail obsessed but it feels very granular a lot of the drama <hes> is submerged under people doing their work in a very very specific way in a very procedural way at mean that like a csi way. I mean you're literally almost feeling like the script sometimes feels like it's transcripts of people talking about their work so it takes a little bit of getting used to in terms of like how it's how the dialogue is happening because it's very very very matter of fact but i think the first time where people had to get used to watching the first few episodes of mind hunter before really took flight in mid season. I think that's happening again and i think that they reckon with some of the stuff that people people were just kind of glossed over and the first season it's it's almost less atmospheric more straight on head on dealing with what is what is causing this violence what this violence does to its victims and what it does to the people who are <hes> whose job it is to investigate it and to explain it. It's it's kind of a fascinating in investigation. It's not sensationalistic. It's not particularly funny. It's particularly like a it's very very very direct and i'll be really curious to see how people feel about it. Especially since netflix hasn't done a lot of promo around it. There's like a teaser trailer. Episodes soad's were were not really sent out wide and you know. I think it's going to be a fascinating response. Some curious people think of mine owner season two. We'll be talking about that next week. Jason jason see and i are going to be talking about it will also obviously have more succession stuff next week so let's get into my conversation with fantasy about the boys and then later with carl franklin about the next season of mind hunter. I will talk to you guys on monday. So now i'm doing by fantasy <hes> sean. I was just in my my opening statement my monologue you and jim rome i did. I just got into the jungle. I was talking a little bit about for weddings and funerals the hulu adaptation here. That's not great. It's not great and i think a lot of it is like it's got an uncertainty about what the tone of the show supposed to be okay and i chose not necessarily have to have a monochromatic thome but i think that the boys is an example apple of something that whether you like it or not definitely definitely definitely knows what it is certainly yeah and it's nasty. It's cynical so let's talk a little bit about this is obviously a graphic novel from garth ennis. It's gone through a relatively long development period where i think oh eight people have been trying to get into this to make this this goldberg and rogan made this with dan trachtenberg who has made maybe one of my favorite black mirror up so it's play test and also directed ten cloverfield overfilled lane which i think personal favorite is still really rock solid watch really great thriller and this is like a super grease story so like basic the basic premise if you don't already already knows this on amazon hour long episodes and it is a world in which there is essentially been an corporatization of superheroes that there are super breath able to people about two hundred and fifty at least known in the first few episodes at least we're gonna be talking about the first two episodes and there's a a corporation vaught. What is it voight vought vought. There's a corporation called vodka that sort of runs the world's superheroes <hes> they are almost like a fully integrated you know mega corp that handles their personal appearances their licensing deals their their actual crime fighting up down to the analytics that they provide for the heroes but as we are quickly made aware of these heroes are pieces of shit yeah vodka's kind of like google yeah or or a visa kind of empire kind of one style ironically all the fancy <hes> and i was. I think you and i both kind kind of waited a little while to watch this show. I don't know why i know it's kinda. In my wheelhouse yeah i think i have probably coming out of the summer and all of the conversations versions that we've had about superhero content over the last the first seven months of this year. I was like i'm good for superheroes for just as long as i can nab a break but but it also i think at this point i've kind of got my my fill of like even the a this is like the cynical anti superhero hero take corrective superheroes were bad or what if superheroes were human like us and so is just kind of like. I'm all good. I don't need to kind of like interrogate this idea anymore so i i mean this is how you know that we're in stage three of superheroes as the most important cultural force in the world right now stage one was oh wow the spiderman right is a huge movie and it looks good and feels cool stage two is moral runs everything stage three is we can try anything and it just might work so stage three is todd phillips's joker stage three is the boys stage three is dead pool stage stage. Three is iterative stage three start with suicide squad. I think it's dead pool is really this. The signal chain where it's things can be a little bit nastier a a little bit darker. We can continue to include the concepts of prestige and even problematic storytelling into something that otherwise was meant to be very eddie listrik and the roofs are still four. We've seen this with westerns before where you got. You have your classic sort of roy rogers. There's the shiny like perfect hero then you start to get slowly and slowly until you get full blown anti hero with peckinpah says the peckinpah here and that's what they're doing so this so while you have <hes> you know what that means though right what's coming next. This is almost over well. That is what that usually. That's what that means. We just going to start again. Are we gonna keep having superheroes but we're just going to have to be like what we need is a really idealistic believable like superhero that we can all like invest in possibly the probably if you something thing about the political climate of the world that dictate some of that stuff too <hes> i i do think traditionally with various genre types the more corrosive they get the the closer. They are to expiration in terms of being at the forefront are we. Are you predicting a sunset for the superhero. I've been talking and writing about that for a while well. I think that that's not what you were kind of more like get used to it. This is not going anywhere. It's not going anywhere because they're still making westerns right. It just means it's not going to be the most pervasive thing for every can't be i talked on the picture a little bit about how <hes> the lion king feels actually much more important for the future of movies for the way that we're going to tell stories and the fact that avatar you're going to be the franchise the next ten years theoretically if those movies are any good people care because the way that those movies are literally created is like is what what movie night dependent on whether or not donald glover is there no star system whatsoever yeah so that that isn't a judgment on the boys okay which i those pretty cool yeah so here's my relationship so far with some of the i would say a lot of the stuff that evan goldberg and seth rogan which i would count myself as a fan of preacher creature lost me a little bit but i would say that initially what happens is in preacher and the boys. I'm like man fifteen year old would really like this totally and i'm just like my relationship to the movie or the the show that i'm watching is what is my relationship to my fifteen year old self at any given moment well. That's a very good question question. I actually did read preacher when i was a major so it was easy to make that connection. I think actually some of the straying from the preacher text is what made me lose was preacher yeah. They took a lot of chances with that show which i appreciate and admire but for whatever reason i couldn't connect with it. This one i think is much more relevant into the moment <hes> it seems to be responding specifically to the last phase that we just talked about that we just experienced rate and it also makes sense because it's a great treat to us on celebrity you know and what we think are celebrities are and what they really are and they have there is definitely a and we were just talking on the big picture actually about whether or not like movies can keep up with societal change and whether or not they can be truly reflective of a moment society television. I think theoretically should be able to be a little bit more nimble. The feels kind of like accurate but a little a bit like older guys trying to understand social media and some of its portrayals of celebrity. I think this show ultimately for me is working because i really liked the performances and then <hes> jack quaid wade plays this guy huey who's just like a porsche nook working in a av store at all like a radio shack which is kind of funny because like it suggests a little bit of the two two thousand and eight nature of this that they're even a job at a radio shack anymore and he because of a tragedy kind of finds himself at loose ends and get hooked up with off a sort of mysterious possible law enforcement agent play by karl urban. The character's name is billy butcher and very subtle. What does he call. Oh him like you look like a porn version of the matrix or something version of neo yeah and i really enjoy the they're they're repartee and their relationship and then on the other side of the superheroes are access point is through this character played by erin moriarty who i think is just kind of like really charming and really interesting great actor yeah and she's playing a character named starlight. That's her superhero name and she's comes from iowa. Join this collection of superiors like like this kind of justice league and quickly finds out that they're just fucking dirtbags and it's a really smart interesting way of doing this and so far. I've just been really engaged with the characters the plot lines. You're kinda like i i get i get it. I see where this is going. Also elizabeth shue plays sort of the head of the corporation doing so some nice job there yeah yeah <hes> erin moriarty carter is definitely the best part she at least from what i've seen you and i are only very early into the show you know at as you know at at this point the first to really matter because they dictate whether we keep going and i'm going to keep going. Yes and i think that they have a chance to take a lot of risks with what they do with their. You're basically put her in a kind of sexual misconduct plotline very early in the show yeah and there's something interesting about that it's and putting those putting a superhero context on a very tricky story to tell in the real world is fascinating. That's not something that you saw in sham. Yes yes lauren. Aquaman or in men in the loss superhero stories are not yet at a place where they feel like they can approach those they can curse in deadpool but they can't actually try to apply real life. Yes stakes their stories because they also like ryan. Reynolds is like a viable property that we have to keep their rules that you have to play with movie stars that you don't have to worry about with carbon at this point exactly and that's why there is kind of a there is kind of a c grade of fame here that i think actually works well for the show. Show chase crawford plays. One of the superheroes hurts called the deep. You may recall chase. Crawford has the least good actor on gossip girl shum and he's dubai. Oh i that yeah there you go. He's got in the show. Though it's not yeah that's nothing against him. He is playing kind of smarmy and inappropriate figure and not at all what he presents in public we see him presenting in public and then very quickly we see what he's like behind closed doors and it's interesting that they're letting starlight be an avatar for the downsides of fame in a lot of ways and the downsides of like ascendant fame fame. You know there's it's it's not such a far leap to draw a parallel to like a harvey weinstein kind of a storyline and what she goes through which is is interesting. I think you know whether that's gonna like make people as excited as they are about the neck spiderman movie i don't know but i thought it was compelling so one thing that i when i say like the fifteen year old boy thing i i just think that like when you're like a hormonal teenager and you reading comics like your imagination of the action is like the comic frame kind of inspires you to think think about like what would that be like running through a building and i think that is the primary motivating that is the sort of touchstone that fro we're getting goldberg and trachtenberg kind of us especially in the first episode where it's just like shit explodes like people's bodies explode and like they're like wouldn't it be sick if this and they actually show it and that is i think not stomach churning but it can be probably off putting for some people but i would say production value is is pretty high. It looks good yeah. The show looks good. I i was. I liked that aspect that you're describing the idea that if a flash esque character existed like a train yeah like a train on this show and he was running at the speed of light all the time through the streets of new york city he might accidentally hit somebody and explode them. Yes yes now. That's a very late stage late capitalism version of comic book. I know where you're like. What have we actually took this apart and thought about what's really going on under the seams teams of superheroes but it's pretty clever but that's exactly what you're that is phased three. That is like like yes what would happen if translucent the invisible visible man was just like a sexual deviant who is just hanging out in bathrooms and that's what impact on pause doing in the wild bunch like if there was actually a bunch of vigilante alantic bandits mexico they would fucking kill everybody yet. They wouldn't be heroes. They would be murdered and we're probably at that stage now. Superheroes and i for one welcome our new evil superior overlords so we'll keep our eye on the boys. I think we both kind of recommend it to people who are looking for like a different take on the superhero genre. Do you have a dead soul. You might enjoy the show. It's like it's also interesting too because like i was i kept thinking of hancock while i was watching taste. Which was this pete berg movie from about ten years ago with will smith and jason bateman and shirley's throne. Which was i think in their minds supposed to launch a franchise. I don't know i can't remember but i feel like that was really and then we could do a sequel. That's about the <unk> wrote that right who vince gilligan oh i did not know that and it was rewritten and apparently the vince gilligan version as a lot closer to the boys okay which is that it was a much more hard edged superhero superhero story okay well. If you're really craving you can go dig that one out of the library <hes> so yeah the boys on amazon. Thank you so much to sean dropping by my pleasure coming up. Next is my conversation with mindhunter director carl franklin. Today's episode of the watch is brought to you by luminary a new podcast subscription service some of the best content around. I am excited about luminary because it is the only place you can listen to the newest show from the rare network break stuff. The story of woodstock nineteen ninety nine. This is is definitely a podcast. You cannot miss watch fans in nineteen ninety nine. A musical festival took place in upstate new york. The became a social experiment there were riots looting numerous assaults assaults was all set to a soundtrack the most aggressive rock bands incredibly it was the third iteration of woodstock festival noon for peace love and hippie idealism <music> but woodstock ninety nine revealed some hard truths by in the midst of the nineteen sixties and the danger can engender along woodstock ninety nine luminary gives you access to a bunch of other original shows from innovative dynamic creators who cannot find anywhere else like our spit off the rewatch ables nights ninety nine the luminary app is free you download and in addition to we can't miss originals you can use to listen to thousands of podcasts whether it be music tv and film comedy sports or more luminary has the right show for you. Check out woodstock diana me and so much more on luminary. Get your first two months access to luminaries premium content for free when you sign up at luminary dot link slash watch after that it's only seven ninety nine per month. That's luminary dot link. Slash watch for two months of free access. Luminary dot link slash watch cancel anytime took two days episode of the watch is brought to you by the righteous gemstones what happens when the creators of eastbound and down and vice <unk> principles turn their attention to the world of televangelist preachers find out in the righteous gemstones coming to h._b._o. This sunday this new comedy comedy from danny mcbride centers on the gemstones a celebrity televangelist family behind a popular mega church that also happens to be a major money making enterprise mcbride stars as jesse stone the eldest of three grown gemstone children who sees himself as a maverick in the ministry game joining jesse or his sister judy played by eddie patterson and brother kelvin a pseudo hipster who always finds a way to get under his brother's skin play by adam devine john goodman stars as the family's patriarch new york ally who finds himself at a point of crisis as he mourns the loss of his wife he also questions whether the gemstones are still serving a higher power as they aggressively expand expand their empire. The righteous gemstones is a hilarious irreverent. Look at high living holy rollers who's world of mansions jets greed and corruption belies their their virtues godly mission the half hour comedy premieres. This sunday at ten pm only on h._b._o. I'm so honored honored to be joined today by carl franklin filmmaker whose directed a couple of my favorite movies actually one false move and and devil in a blue dress that as well as a ton con of television the andy and i have talked about over the years episodes of the newsroom homeland leftovers bloodline the dearly departed vinyl thirteen reasons why on and on an on and he joins a if you'll forgive the pun murderers row of directors this year on the second season of mind hunter karl. Thank you so much for joining the watch a the so. Tell me a little bit about how this how joining a the ranks of directors on nine hundred starts. Did you get a phone call from david fincher. Is it something that you you did. You guys have a relationship before this happened but we'd worked on house of cards together. I that's where i met david <hes> a guy named and john melfi was the line producer on that show and i guess he alerted david to me to my so i met david he wanted wanted me to do a couple of those and so i did and then i did a couple of seconds season in so when mine hundred came around they actually asked me to do a couple of the first season but i was busy and couldn't <hes> break away but they contacted me early you don't really early uh-huh right and so when you're getting involved in a show with somebody like david that show that has a distinctive visual look like mind hunter. Can you tell me a little bit about the process of sort of matriculating into the creative and actual hands on production of the show like what happens bins for director when you join a joint something that's sort of midstream like this and you're saying okay. I'm working in a language. That's already been established visual language. That's already been established but i'm bringing my own sensibility to a house that process workout well. You know you you kinda. Just actually describe it. You know <hes> there are certain rules that were basically presented to me in the same way. When we did house a car just overall you know i think you know he wanted a much more formal kind of more traditional look in terms of the shooting style as opposed to a lot of sticky cam and hand held steady cam. He kinda wanted you know a little more formal handling of the material where there's a lot more choreography within the frame as opposed to you know where you do lot of camera movement so but beyond that you know it's pretty much whatever you know what whatever you wanna do whatever you want to pull out of that two kit but there were certain parameters that were set you know early on and and of course it makes sense because of the kind of show that it is yeah i mean he's as lord sort of legendary for his meticulous and multiple takes and you know getting everything exactly right in a frame but i imagine television is a somewhat accelerated production schedule for you. Are you kind of like the eastwood. Let's get it in before lunch guide. You like to do lots of takes. What kind of sensibility do you bring on the day of shooting. I kind of you know. I think whatever is necessary. I used to do a lot more than i do now and then i realized it's interesting because i was was talking to steven soderbergh about this and we were talking about working with david he was saying in comparison he views himself as a graffiti artist so in some ways you know i kind of feel a little like that. You know <hes> i. I've found for me when i was you know back in the a day. When i was shooting more takes for what i was looking for. Oftentimes i'd have that in the third or fourth take and i wouldn't necessarily you know feel. There was a lot of advantage that i would gain by doing more david. You know it's a technical genius. I mean if i mean he's you and a lot of the things that he's developed. You know we were we were using <hes> the plate van to get you know traveling shots which is something that he's he he and his <hes> <hes> dp but his to eric and i can't remember the other dp worked with before actually developed technique so this is a guy who basically innovative in terms of you know what technically <hes> you know he's doing and he's very very detail oriented and you feel that and in some ways some of that has rubbed off on me. I have to say i do see the value in it. It makes you lean in closer to the material and and and you kinda i pay a little closer attention because there's something at the same time that even though it's a technical thing there's something about it that on a deeper level that seems to be operating. It just makes you focus a little more yeah. It feels almost immersive right especially in the second season just watching the episodes so far the level of attention to set design costume design so the stairs you know the seats on an airplane or everything like that like you just wind up kind. I forgetting. It's there but knowing that it's having a deep impact on what you're watching absolutely yeah. It's interesting. It's a it's a different kind of way of of <hes> dealing with this kind of material. I just was saying this earlier that you don't really see and i don't wanna tip you know the hand but you don't really get into oh you know physical kinds of murder you know actually mean people murdered and all of that and maybe i don't know if this is something that we want wanna. I don't know whether this is the spoiler yeah. No i mean i think that's that's pretty evident. From what i've been watching is that it's really about the psychological toll of being mired in this rate yeah and somehow it actually i think is more true to the to to the feeling that murders in all kinds of causes in this kind of handling as opposed to the accurately trying to represent it you know in in in in in the interviews we oftentimes which are several minutes long. You know there's something about that. That is very thin. Gives you the feeling that you get when you read a news article about a murder you know when you that horrible kind of local news kind of trip you know with the where the the co ed or whoever it is with the graduation picture of smiling and at the same time you read this thing about this person and you know you aware the fact that they have people who care about them and that they are you know we're living human beings that are no longer here yeah. There's that there's something about thought that coldness that hard kind of you know something that that the show catchers i thought it was fascinating the way that they handle the different processes that tench and ford kind of go through to grapple with that kind of trauma. It's holds character ten so i kinda hold stuff offit bay and and kind of try to keep the darkness from the edge and then holden is kind of allowing himself to be vulnerable to all that and you get you really get a feel for the different ways that people process this kind of stuff in the world. It's a b- in the same way that you're talking about where there's a lot of like there's a lot of space and and inquired around these characters that you really able to live in it. Yeah tell me a little bit about growing up. Did you have much of <hes> understanding or knowledge of of b._t. K. of of the atlanta child murders of son of sam like as a as you were growing up. No i did not <hes> i didn't hear about b._t. K. until i was you know i was. I'd probably was ten years after his whole. You know thing <hes> son of sam i was aware of because i was an adult by that time. Don't remember what summer that was in new york seventy seven yeah six. I guess seventy seven so i was aware of that because somebody's that seem to have gotten a lot more coverage than btk as i remember yeah i mean that was the best in everything you know because it had the the whole engine of new york media behind it. I guess yeah yeah. The only person that i had ever you know. Manson was kind of the first <hes> you know. The manson murders were kind of a big thing for me. That was the first kind of theories of murders than that that i was kind of aware of. I remember carol chessmen who i guess raping people. I don't offi murdered. The to the bad was something that was the first time i remembered anything any kind of serial crime that had <hes> you know <hes> any degree of publicity and so with in terms of like the historical accuracy two times and and just sort of following along in that way what are the kind of things that the writing writing staff and the production staff dude kind of maintains sort of historical integrity when making the show you know i think in wardrobe of course you know they're very very very meticulous about making sure that there's accuracy there. I do feel too that in the style of shooting that by not being overly aggressive camera that allows you know for the you know. There wasn't a whole lot of that happening back. In the seventies you know a the camera wasn't as muscular as it is now and so somehow that routes it into a time in the seventies and eighties because this actually takes place in nineteen eighty one but you the camera wasn't as muscular in those days as it is now <hes> so that's one of the things i think that does the kind of classical style shooting allows it to kind of maintain. Its you know kind of historical integrity but you know just being accurate you know which is what you do anytime you do a picture picture because david is particular says he is. You know nothing's gonna escape get past that. Is that that yeah so i think one thing our our listeners would be really interested in is understanding the flow of how a season of t._v. Like this is kind of coming together. Gather so when you're shooting your episodes obviously maybe some will be blocked by location. Maybe you know there's post going on different episodes while you're shooting in yours and vice versa. Can you tell us a little bit about the journey not necessarily the narrative plot points of what you were working on but like you come in is our david andrew editing or is david onset. Do you have kind of meetings with those guys to talk about what you're working on and making it all coherent throughout. What's that process like you know. When i came on andrew dominik was shooting and we talked a little bit basically but not you know not so much about the show we had many years before i had actually seen had read all e. I read all the scripts before i come in and whatever is available in terms of you know anything. I think that i can see that's been put together. You know that's been. Maybe a rough cut of whatever i'll take a look at that. I don't remember seeing anything before. I came on this time because <hes> you know we were kinda. Scrambling a little bit in terms of scripts. You know where script changes were being being made while i was in pre production and throughout production on my episodes you know david would come on the set. He'd be there for a bit then. He's gone. He was not you know he was <hes> involved in. I'm not sure what any rate he was <hes> he typically not onset a whole a lot. You know on on on your set shooting. Although you know a few times he did come in and he was there. Sometimes for rehearsals <hes> and i think again again just to make sure that there was a kind of you know that that weren't taking it in a direction that was outside of the parameters of the style and i don't remember ever really <hes> discussions about that but i remember him coming in and and having things to say to the actors and saying to me about you know what was going on and some of the scenes us discussing those things but that was not <hes> so that that didn't happen most of the done with you know once in a while you've worked so much in television over the last few years that i was just wondering a as somebody who such a veteran of of acting and of of directing for features and directing on t._v. One of the things we talk about on this podcast so much as this sort of ever changing <hes> landscape of where really interesting filmmaking is happening and i was curious if you had any thoughts about the sort of abundance of opportunity -tunities but the impossibility of knowing whether or not what you're making is necessarily going to be found or seen because there's so much stuff out there right now and you know so you came from from making something small and very special to a lot of people like one false move and have had such a long story of curious where how you read this sort of landscape. We've now well. You know i kinda. It's kinda like a goal shouldn't yeah and it's <hes> i i kind of knew this was going to happen. You know when when netflix released house of cards on the entire season on that one night in february two thousand fifteen or whatever that was the revolutionary change and i and i actually was concerned that it would not work because i thought you know people were wedded to their patterns of viewing and their nights nights and days often times where you know sometimes even constructed around their favorite shows but what happened is that people binge as you watched and they you know they basically you know got. They've got a bit of a fixed but they're still you know the needle in their arm and they still basically you're looking and you know something. That would have taken the month to <hes> to see his. You know they saw a few days so it's it's it's it's on the one hand. You know that there's a universe of material this out their product but you know as a filmmaker. It's kinda hard to keep up with with with the you have to kinda you know go with whatever you know comes in you were radius because it's just so much out there and as a filmmaker you kind of oftentimes oftentimes. Don't get a chance to see everything anyway even in the way that it was before to me. I just feel that it's great because there's just so much material you know there's there's a lot of opportunities in a lot of different places. I don't know that it that if in any way a a negative yeah it certainly seems like even if it's harder to concentrate and find stuff it's the amount of stuff in the like. The specialness of this stuff off is just getting more and more defined it is and see the thing is is that you know for the for the kinds of complex characters that are now being being shown on on cable and streaming services like netflix amazon cetera. You're not seeing that for the most part in feature film you know. This is the environment where you get this. This is where it's gonna take place. You know for for a more mature audience. The temple movies that kind of you know commandeered totally taken the whole pro-market in some ways you know you. It's just a refreshing thing i mean. I think that again because binge-watching is such. It's a popular thing with people you know. They're actually seeing a lot more material. They actually need this amount of material to you know to kind of quench their appetite okay yeah. It's really interesting to go from like you. Were saying the the idea of building your wednesday night around watching lost to building your wednesday tonight around watching three or four episodes of something karl. Thank you so much for calling in mine hundred season two streaming now on netflix and <music>. I couldn't think of a more perfect fit for the show and i really appreciate you calling into the pot. Today's episode of the watch was brought to you by the righteous gemstones. I'm stones do not miss the righteous gemstones this sunday night on h._b._o. From the team behind eastbound and down and vice principals comes the story of a popular beggar church slash moneymaking making enterprise starring danny mcbride as a bad boy preacher jesse gemstone john goodman as the family patriarch ally and adam devine an e patterson as the younger gemstones siblings. The righteous gemstones premiere sunday at ten pm only on h._b._o.

david carl franklin franklin amazon director evan goldberg netflix sean chris ryan london toronto garth ennis hulu roy rogers murder david fincher danny mcbride new york seth rogan eric kripke
jQuery is Obsolete with Chris Love

.NET Rocks!

1:02:11 hr | 1 year ago

jQuery is Obsolete with Chris Love

"Automating your ass. Peanut deployments on your to do list. Now's a great time to give octopus. Deploy a try the starter edition. Lets you install octopus on your own infrastructure in deployed I. Web Servers azure websites in pretty much. Anything from no Cuban and they just made it free for small teams. Give your team a single place to release deploy and operate software with octopus. Deploy find out more at octopus. Dot Com dot net rocks is being sponsored today by text control the company behind tx text control a Microsoft Word inspired document editor library and document processing engine for your applications tx texts controls fully customizable and programmable in is available for most platforms including asked peanut. Mdc Web forms WPF and windows forms. Recently they released their angular. No J s versions that allow the immigration of whizzy wig document editing into your web APPs. Tx texts control really shines in applications that do mail merging and reporting where Microsoft Word compatible templates are merged with Jason Data in the client or pure server side applications that create adobe. Pdf documents so try text control for free and see the live demos at texts control. Dot Com slash. Demos hates Carlin. Richard here to tell you that all this year's NBC conferences are now being held online. Only you can still attend the workshops and sessions but from the comfort of your own home. Here's what's coming up and see. Copenhagen is April first through third so go to. Nbc Copenhagen Dot Com to register NBC. Porto will be April twenty first through the twenty fourth go to NBC. Puerto Dot Com to register NBC. Oslo is June eight twelve so go to Oslo Dot com to register. Nbc Minnesota Will Be September eighth through the eleventh go to NBC MINNESOTA DOT COM to register. Nbc Sydney is October twelve. Sixteen early bird discount for in. Dc Sydney ends July twelfth. Check out the full lineup of conferences at DC CONFERENCES DOT com. Welcome back to dot net rocks this Carl Franklin Richard Campbell into. I'm at home. Yeah we're both at home. I'm not in the studio today. I'm actually also using a very rare for me to do but a Logitech USB noise canceling headset gaming headset. Yeah Yeah exactly and I couldn't use it when I'm on the road and stuff and I just didn't feel like pulling out. The the bigger microphones today so you know if it really bothers anyone let me know. I won't use it again but I wanna tell you before we do better no framework one of the places that I went in Just outside of Philly on the Blazer road show this place was actually in Phoenixville Pennsylvania and it's called Blooberg distilling dot com. Oh Yeah what do they still there? Well okay so it's distillery where they make their own spirits and they only sell their own spirits in their bar in gastro pub Bourbons scotches and I say Scotches but you know Scotch Style Whisky Irish style whiskey gin even rum and they they have all these things in bottles and if you follow my twitter that Carl Franklin you'll see a tweet of the wall of Whiskey and I actually bought one of their I bought a couple of balls and done having the American weeks right now. Nice so is it actually a bourbon. Likes CORN AND WHEAT We'd all the way down well. They have afford Grain Bourbon. Yeah so that's mostly corn of course has sixty percents or fifty one fifty one percent corn then there's wheat and then there's Rye and barley as well so it's kind of a little bit of Irish taste but this one is the American wheat whiskey right so it's It's not all there's no running there but they're not calling it bourbon so they probably didn't eight. Follow the rules or something. Probably not. And I'm not exactly sure what it is. But you can go to Bluebird distilling DOT COM. Check it out so anywhere near Philadelphia. Phoenixville in particular. Stop in and see these guys. They're really really great and tell him. I sent you all right. So that aside I wanNA know what's new in Richie Campbell. You know life changes daughter. Moving out getting married. So the little disruptive congratulate you know excited about it but it's still Katie changes happening and could for her and just happens to be getting married while Oslo's yes so I will not be at NBC. Oslo because the priorities and Yeah and this is a new recording rate. So I'm engineering today. And we rewired everything gearing up trying different equipment trying to modernize modernized. That's an interesting. I have to modernize the hell out of my studio because I have a whole closet. Full list needs to go. You know I pulled I one of the things. That was at t los one plus one which is actually an expensive device. But they haven't is for years but think about this. Can you remember? The last one is a telephone hybrid. When is the last time we had a guest on a phone line? It's been years it's been years and years and and and even if I did have someone who had these phone line they had no other option. I would call them through skype right two cents a minute. Like what do I care right is? It makes a difference rather than trying to use the phone line on with the telephone hybrid so yeah. I haven't hybrid on in a long time so it was good to pull it from the rack. But I started dot net Ross using Kilo Swan actually no. I was using something even worse than that. Kilos is actually good stuff. And that's what. Npr premiums product to it's about a price accordingly. There's not an experts equipment. But I remember having some sort of telephone hybrid that I got from broadcast the ply world study and It just didn't do a really good enough job of getting rid of the other side of the call right and so there was still this and I had to edit all that stuff out. I'm talking about two thousand two year man. That's once the T- Los One came around and it was just like almost complete silence on the other. It was magic. Yeah and the one plus one has two of them around bounded so you could have two lines so what we would do is Richard would call into one phone line and I would record that as a sink track and then we would call a guests on the other line and record them just in isolation guy themselves network. Yeah it was one of the magical things podcasting in the day of just because we've fixed all the steps. Nobody ever stepped on each other. Everything sounded smooth. It's all a lie talk but yeah all that stuff's finally out of Iraq and Simplify Right A little easier these days. And although we haven't really said it in a while. Richard is in Vancouver British Columbia and I am in Connecticut. Doing all this stuff through the magical skype were recording our tracks locally out with also the Internet back in episode eleven hundred. We describe the rigged. It largely hasn't changed true. Well you want to do a little better. No Yeah. Let's get on with it and roll the crazy music for better note. Framework Puts Speech. Show sixteen. Eighty one. You can go to sixteen eighty-one Dot and get the better framework link. That will bring you to get hub a project in the blazer extension called Canvas In it's an html five canvas API implementation for Microsoft Blazer. Interesting all right. So so this client side Blazer. Then both Oh laser blazer I mean the component model works in both place okay. But this mean you're poking into the can't html canvas which means web jail. You know this is sort of gaming and cad libraries right. I mean so it's a you know. Basically laser has java script interrupt so you can call any Java script function from C. Sharp. And you can also call. Nec sharp function from Java script. So it has this nice interrupt layer and in both the server side Blazer and the client's side Blazer all the Java script is obviously in the browser right but then the whole you know how I call it. Had to interrupt with it. All of that is handled on the service side through communication of similar in. Then you know on the client side. It's obviously more direct but still that Java script is running in the browser of course but this is a cool way to sort of create a component that wraps a Java script widget or whatever think teller it controls are the the blazer controls are simply component you know blazing component rappers that just interrupted interact with their job script widgets right. So if you have Java script widget that you like and you can just sort of create this blazer. Rapper over it and now you're you can program. Nc sharp this is one of the examples of that. That's very interesting. Opened huge possibilities in just although Nothing it's they've necessarily implemented per se. He's just thinking about what web assembly means this ability to interact with all of the jobs ship libraries. It's huge soda. And I also want to reiterate that serve side Blazer works as well. You're going to have more of a lag between. Your interactions with server side blazer so but once webs semblance baked in May this might become very very popular among people for sure. That's what I got talking to us. Stretch grab a comment. Toughest Show Sixteen nineteen which we did with Mr Love One year ago. Roughly January twenty nineteen talking about. Seo and from a developer's perspective. What a developing to know about search engine optimization and this comment comes from D. Camper who says great episode loved the advice from Chris. I'd like to particularly echo the value of using a content delivery network cdn. I've massively improved performance of sites that lead by putting cloudflare in front of them. One thing to be aware of is it by default. Cdn's is the only cash static assets your javascript CSS images so on which you can get a huge boost by selectively caching pages such as the front page or what we in in the Biz. Call the landing page right a lot when when you recognize if you're in the sort of business of getting people down a pipeline. Say to buy something you talk about bounce rate or how many people only hit the homepage and don't go any further than that. That landing page and one of the ways we reduced landing page bounces was by making landing. Page the fastest pay on the site that page loaded under two seconds. It was made a measurable difference in getting him further down the pipeline and so although CDN's every tool you've got to make the crazy stage at strange luke was when we would render a landing page as page with no assets so we simply embed everything even images as sprites into the page so you loaded one file boom there you go you know. It's it's tough to maintain that so there's a whole generation process o- on but if you only wanted speed. I got speed right here once once you. D- goes onto say once you've gotTA expedient in place in next step is to move resources that aren't loaded from EU domain like fonts in libraries and things that the reason for this if they're on a CD externally you can add the cost of a DNS look Goshi requests there on your domain skip. All that often funds can block patron rendering properly or caused a page re render to that extra work can have a significant performance impact and he also calls out to web page test dot org one of my favorite sites use it for years and years and years. It shows you what happens as your page loads in helps you understand how browsers render your page pages and what users will see and in different locations so you can basically asking. Hey would you load this page from India for me? And it'll give you the performance experiences of that and you also select browser renders on so Free Service although you can pay for different parts of it you can include it in a CIC pipeline. Great Tool so. D- thanks so much for your comic copies to Co buys on. Its Way to you. If you'd like a copy so by write a comment on the website dot net rocks dot com or on the facebooks. We publish appreciable there. And if you come in there and I read on the show. We'll send you a copy music. Oh by indefinitely. Follow us on twitter at rich Campbell in. I'm at Carl Franklin and says tweet two-dimensional put it on campus and we'll put it on campus. That's a all right so let's bring back to the show our old friend our good friend. Mr. Let's be efficient with HTML Java script. Chris love he gets a front end. Developer for people in companies who are lost in the Sea of modern web user experience standards his a quarter century of web development experience and is built a wide variety of websites in APPs in those years in recent years he immersed himself in Responsive Web Design Single Page web applications and web performance optimization you plies these interests to run a small web consulting company love to death. That's number two that focuses on user. I Web applications that operate on all device classes and usage contexts love to Dev offers web development in analysis to help companies engage end users in the operate more efficiently. Welcome back Chris. How're you doing? Hey guys I'm doing. Well I guess my dad necas new data that bio that really specialize in Progressive Web APPs since we actually talked about that a one liner view. Yeah that's right. The last time you were on we were talking about feet of US talking about. Seo Time before we were focused on the progress of web stuff but it all it all kind of rolls together so it's all a blur for me. The one thing the two things that don't go well together are spas in Seo absolutely is And I know boy. We really supposed to talk about today. But we can. We can slot into that a little bit but Yeah so like the search engines will say they can they can parse the Like affronted framework like React or whatever and they can it just generally go as well as you think they do. Index those pages but there's there's ranking factors involved and we know and keep from this but I know that react takes about twenty seconds to render on average and anger takes like twenty nine seconds on average to render. It doesn't surprise me. You have those numbers in your pocket. Friend will pulling those from https which I think Richard you probably know who they are. But basically they. They run continuous test using. I think what set which test infrastructure to Iterative over. I think they're doing five million sites. Now They. They started off with a half a million. I think they're up to five million every two weeks and they would have both desktop mobile. And you can query the data through big query all. The data is made available And so I know there's one query imposed on the forums where you can actually sit there and Quirion amd breakout. The average rendering time for sites with reacting Angular View. Different frameworks and stuff like that. So that's that's where I'm getting those numbers from sill before we get into j queries obsolete which is a great great topic to have you looked at. Blazer do know what the the download is for the Web Assembly and for the server side with the I mean it's it honestly is not that any of interest media guests. I know you under your Blake into a big time to When I looked at it that what a year or so ago I think it was like round five megs download. The the package is at least what I've seen man. Okay well. Today's now they did it but I honestly I kind of look at it. This way. Several lightened flasher debt. For reason and this is kind of like version to hold those on. Yeah Age if your light and it's not flash. It's not a plug in model. I know it's not simply which same sandbox Java scrip- Brunson I. I'm not going to be able to comment on because I don't I don't follow it enough. What I do know is that web assemblies really good for things like Haiyan gaining type stuff And things earlier I would say crazy mathematical requirements. You know I just don't have enough demand on me to follow into to kind of really dive into it when they first started shown to me. And I'm like five minutes to download just 'cause they're just showing me to do basic forms and I'm like I don't. I don't see the just for that. So it's it's two megs now and By contrast g mail is five megs right and angular is probably the most nat angular is. Well what I what I what I see with. The framework sites is generally. It really comes down to what you pack into it. I've had somebody come to me with a a fifty meg payload of Java script for Re simple site just because they didn't have things configured correctly. So you know it. It kind of varies I guess so well on speaking of big downloads stuff. Let's Talk About J. Query. Sure why would you even consider that big download these days? When you look at Blake reacting in anger in view comparatively. I was actually looking at the payload size of the latest version. I think it's never like sixty four K. But Jim had its place in history and it was the right solution at the right time when all the browser. Tom's were different right. And that's why people and I think especially you know the the enterprise developers who never really got into proper Java script really liked it will. Yeah I remember you know. Let's say early. Two thousands timeframe Java scrip- was like this horrible horrible place to be and I remember one. Javascript looked and I couldn't even get past the first chapter. It made no sense to me. Like the only thing I ever used it for image rollovers to to swap images. So yeah. Yeah it was like a serious problem. well it it made it made client side. Javascript approachable and I think it really solved two issues because you know fifteen years ago. We had a diverse browser landscape. Even though Internet explorer was the dominant one when John Resig Made J. Query at the bar camp right But we still have. We had fire Fox Tom. I don't even think chrome had even been created yet. That's before gross exactly so we really had to dominant browsers and they both did things slightly differently. There was there was not the Qadri of web standards and standardization bodies around things like we have today but I think Jay Corrie drove that To standardization which made everybody's lives easier and you can look at basically around two thousand eight is when things really started blowing up You Know Resig wrote a J. Query sometime in two thousand six yard and at the time we had a prototype head gotten some traction and I think Dojo was out there. Maybe maybe move to move tools. I can't quite remember the The exact tunnel among those. I never got into a Dodo and blue tools and I only looked at prototype briefly because there was the site that I was asked to maintain that headed on there. But I don't really remember the whole just about with the J two key pieces from a developer point of view The number one is the documentation was spot on. It was easy to read and understand. I think that makes a huge difference Just over the past year for me something. That's the main thing is really tripped. Me Up on getting things done on time has been third party documentation for API's has just been horrible. Yeah and You know all these like one and two word air messages. Don't tell me anything and there's nothing in the documentation about it and you know what fields are actually required or not required required with this field. Did Not that field all these different mutations of of things this is crazy but with J. Query we documentation that every piece of it would seem to be documented the way it actually went to work and then of course the other side of it is normalized browser stuff and edit functionality that the browser didn't have so two thousand six the only way to select dominant was by. Gillnet by those it and we didn't have the ability to select classes or or element name Than in all those kind of things. So what what was he wrote sizzle which was a selection engine to parse over the XML. That is the DOM. And I say that loosely. Because I know somebody's going to say it's not true X. L. That you get the gist anytime you you you query par sex mel. You know hats off to you if you WANNA follow through with it. But there's a reason why we switched to Jason. I think so but I think that forced the browsers just we gotta create something that works better. And that's that's only what's happened and I think on top of that. What caused not only helping? Us build more robust interactive More Clyde dynamic applications is it's it's also given the browsers incentive to really make all kinds of native functionality in the browser there's there's almost zero differential between native application Api surface area and the web surface. They're still they're still a few what I call out lower things And they're they're features that I don't think are super high demand even though people make a lot of noise about it so like geofencing 's one thing that comes to mind and a lot of people squawk about that but you know. I don't think the average person really wants geofencing. 'cause it's Kinda creepy. I don't think your average I don't think your average small business which is one of the key snares are like. Oh the little cafe down. The street wants to send you a coupon every time you walk down the sidewalk right. I know enough about how little small businesses like that run to know that they're never going to keep up with or report a service on a monthly basis to send out those coupons. The iphone eleven has semi sort of geofencing stuff built in. Like when you turn Wifi off if you're out when you get back home to don't Wifi location it just turns out again but It won't just like you know you can't say on the iphone eleven. I don't think anyway you know only use Wifi in these spots that are sanctioned by me otherwise. Don't connect you any that's interesting. I haven't really heard about that. I don't have an iphone. Eleven their way expensive so I still got an iphone six. I got an upgrade soon because I can't get the latest version of Lila's but I don't get a new phone which I think is sad so I can still put the latest version of Windows ten twelve year old laptop. That's no problem so yeah so You know Jake has fantastic place in history where it it really was the polly feel for the modern web. If you will share here and it made some anything's possible in at saint time it kind of like a lot of developers do WANNA learn Java script than they could follow a lot of examples and things would just magically work and then you had this proliferation of the plug in ecosystem and the only thing that I've seen that parallels that in at least that I've personally looked at is the the wordpress plugin infrastructure ecosystem right Is Far as like just available options to find all kinds of crazy stuff out there But today it's kind of a downside if you will And this kind of falls into I love the way you kind of. Set up the the The episode here. Because you were talking about the kind of the evolution of your podcast infrastructure in electronics. And I think anybody's listening to podcast and you've got any kind of age on you. You're probably like the three of us. I've got a whole basement. Got Three bins of old electronic stuff down it including a I think a five or six hundred dollars hub that I had at one point does dude like retiring looking at t lesson how much we spent on them at the time grant they have like that weekend haul out where. I got rid of that gear. That's more than Tun worth of stuff sitting in my garage right now to go the electronics recycler like all the most. The most painful one I had to do is my first survey. Ever bought was ten thousand dollars number throwing that out. It's junk it really is John. Yeah and he had it on like six years am sitting there. It was a it was a to use server had two hundred fifty six megabytes gigabytes of distorted Hathor. Hatha Giga Ram. It was ten thousand dollars. Man Yeah Yeah Anyway but Iran Iran so much stuff back in the early two thousands for me. It was a magic machine. Oh Yeah I had Three hundred and fifty websites on that at one point and it was like it's four two to four percents. Cpu Load So. I pulled up w three techs to look up the current adoption on J. Query and its numbers are still going up so actually ran. Some queries is more than just to make sure had kinda latest numbers using the bureau. There is like collects data. They also Copy it over to Google's big query right in his public data sets. You just have to add it to your profile. There's instructions on their side to do so since I haven't done it in like three years old. Walk you through it but the One of the data sets they parse out essentially is like the allows you to look to see what kind of libraries and frameworks are being used and what versions of those are being. Used to actually ran a query on that this morning and So there's like five million websites and roughly eighty five eighty. Six percent of them are running a version of J. Query and what version the predominant version is one twelve so the original. Well no not really. The original came out in two thousand. Six hundred twelve came out to two thousand sixteen. Okay there was all these like little super modern Hitter iterations at point when it went from one I want extra to was when they drop the eight below support right out of it and so that's why people stick with one to this day which I have no clue why I have no clue when someone says. We have to write a new website to support. I nine put my hand my hand eight right but bottom line is the DEB's not probably deciding that they not going to argue with the boss. The boss says I want this. He has to support all browsers. Yeah well since Microsoft. I think was five years now since they've deprecated Internet explorer. Yeah I mean move on. I mean what? My Wife's wife's company standard is Internet explorer. And I said why do y'all do that. She goes because the CTO just hasn't got the memo. Yeah well now The the late the new version of edge the edge with the chromium engine on the enterprise side. It's not running it. Also has the I. E. Eleven engine in it. And that's all repalce stuff that's where it should sit public sites. You shouldn't bother with Internet. Explorer old internal applications. They listen to expensive to migrate. That's why that's why the Internet explorer mode is an edge and you can control that with group policy. Yes they got all the instructions up there but basically when someone goes to on the site. It's old it'll just automatically open it in that code for you and now to be launched the old browsers while now it doesn't mean that although that is only recent that's only in the past few months that they've got. I'm a followed it enough to to know where that sitting but you know if nothing else that the the advantage you get is not only do you get the e engine but you also get the chance to more modern security but wall around it so to speak and from an enterprise for you. That's definitely something that you should be looking at. If you're still running a browse at Microsoft Heaven hasn't updated in five years. And you're not worried about security. What presume you're only using that browser to an internal site that needs it editing. Gration as soon as you hop to a different site you just type in the. You've got the eleven engine running on that internal site you type in your url it flips back edge chromium exactly right and that that's what is shipping users shouldn't know what engines actually being used. No and it should not be possible to run that old engine out onto the public internet. It exactly exactly so sorry to angry. It guys talking. I'd have to deal with it as much lately I just My wife was show only some stuff Friday afternoon on from the she was blocking through and work and I was like why aren't using Internet explorer at any rely. She was using it so anyway. Ten they go to great lengths to hide I e from you like it hard yet. Yeah I think our company just regretfully upgraded everybody to Windows ten because seven died last month when it when it went out of me out of support finally but in a funny we were cheering the deprecation of retirement of of something we we lived with so much. I have nothing bad to say about. I about windows seven now. It was great. One would argue the greatest that my of the windows guys ever made in. Winton has had terrible problems because they've been experimenting with new models so people aren't frustrated Sort of the end of the road for us. They're only just starting to figure out the right way to update winton. The next this year next year is going to be the period where with the operating system truly drops in the background. You just don't even think about it anymore. Well you know my point is you have. I've always been an advocate of a browser based operating systems. Like the you know the chrome Os is you know. Even though don't even have a chromebook I love that model because to me it just it just makes it a you. I kind of Broza back to kind of dump terminal of the you know the seventies and eighties kind of thing and it gave makes the client side a lot thinner and easier to manage musher so ironically. Chris I think Web Assembly is the operating system inside the browser outside the browser that will become the cross platform standard of suffer development in the future. But you're still. You're still within that browser confined talking about. That's what I'm talking about your evening you can. You can run. You can run chocolate and d eight outside of a browser right today but I think simply outside of the browser has more of a potential future for client side development. Even then you know. Trying to build MOPE NATIVE MOBILE. Apps or native APPS for the for those operating systems. I mean look at things like web window. I mean it's still in the browser sort of electron light but there are also new Things that take wet assembly out of the browser and onto the operating system and that Tokyo. So you run it on a raspberry Pi or something like that or on windows. Runback run Lennox Right. Well I know what you're saying. Yeah you're you're under the way so you can write one. Kobe's piloting and not worry about word sitting. Yeah that's I don't want I don't want to take over the topic but I think it's ironic. Where the browser is becoming the default operating system in the future. We're going to be talking about web assemblies being that particular thing. That's just me putting on my future at the. It mindset likes browser because the security models already played installing software on on desktop sucks. It just model is built into absent. Yes but as soon as scary models part of the browser container so as soon as you talk about we're GONNA go out of the browser. You just obviated that so convinced. We'll do that what we like about as it is today but it will have to be a totally different. App or back to the same deployment follows. Yeah but anyways we need to take a break and pay some bills here so sorry Chris. Give me one moment here for this. Very important message hates Carlin. Richard here to tell you that all this year's NBC conferences are now being held online. Only you can still attend the workshops and sessions but from the comfort of your own home. Here's what's coming up. Nbc Porto Will Be April Twenty first through the twenty fourth go to NBC. Puerto Dot Com to register NBC. Oslo is June eight twelve so go to Oslo Dot com to register. Nbc Minnesota Will Be September eighth through the eleventh go to NBC MINNESOTA DOT COM to register. Andy Sydney is October twelve. Sixteen early bird. Discount for in. Dc Sydney ends July twelfth so go to NBC Sydney Dot Com to register. Check out the full lineup of conferences at NBC CONFERENCES DOT Com. Amor back. It's Donna. Iraq's I'm Richard Campbell. That's Carl Franklin. We're talking to our friend. Chris love the debate his long and arduous as usual. But I think we wanted to talk a bit about J. Query. Because boy you know based on these stats. It is the most popular javascript library in the world. Right in like like we were getting to like version wanted to the most popular. I think that was thirty. Five percent or somewhere that ballpark of the actual Jake Wordy Installations. I think the current version which is three dot four with some around four or five percent of that number which is Kinda sad because generally you want to stay current stuff. But honestly what happens is you. You wrote an application. No one bothers to keep the dependencies up today which is very common in. That eventually comes back to bite you and to me it falls under what I call. Software entropy You could also say software decay is another term. I'm kind of thinking about lately and I kinda cross I was listening. I was watching some action thing today. They were talking about the half-life of the radiation and I was like oh it's sort of like the half life of software. It's IT'S ONLY. It's really great up until that half life and then it starts to K- aided its potency and but let me give you a case study from one of my clients last year. Not Not Twenty. Eight nineteen but twenty eighteen. A doesn't matter but I was helping them convert everything to progressive about. Okay but this Site was really poorly written to begin with him. But it had jake worry splattered all over it. Which isn't the worst thing. per se. But I see this a lot though. Is that people will select a plugin. Let's say and I J quarry plugging is of course open source and it has basically been abandoned for years in the in the case of this one particular plug and I think it had been abandoned for five or six years had been updated at all and it was a rapper. There was more or less Hooked into the early pre standardization of the media capture. Api in other words using the camera to actually you know. Take us a picture of what they were doing. of things and the problem was it was hooked into the old pre pre standard version. Of what actually became media capture. Api well chrome decided to pull that support out for that Standardized API call and all of a sudden. Every one of their deployments with all of their customers suddenly broke they went. They went to panic and I actually know how to talk to me to capture. Api have the lava that used to make it even easier an offer to help him out like it'll take me a few hours. They were they had gone through like four or five of these these fire. You know things blowing up. Every time chrome made an update and pulled all sport features which happens over time And they I think they were just like fed up of that kind of scenario going on and so they kinda like they pull the plug on stuff because the stakeholders of business types feel beholden to us and they feel like they don't understand what's going on with us a lot of time so they they were freaking out and they just thought it was a problem of the technology like the browsers itself in the whip rather than the fact that they're developers were using obsolete code and as lows trying to explain to them when they did they couldn't such a fire mode trying to save all their customers that they couldn't stop and listen to you know the the simple necessarily is trying to tell him at the point. But but I see that all the time you see a lot of plug ins that are out there like that or you have to Jacor plug INS and and and that can be very problematic because you're you're essentially hinging your dependency. You're outsourcing your success on something that more or less isn't even maintained which is if you look at how I mean. I see more more. Public Projects are essentially just becoming abandoned like yesterday. I was a new project and I used the a node blamed the thing and I was GonNa put request in there and I went to the request page on MPM and they were like yeah. We deprecated that two weeks ago. And I'm like wow that's like one of the most popular node modules request and so they deprecated thinking swell. Should I use this or should I try to figure out how to use those the raw? Hdtv stuff built into no. I'm like I think I'll stick with this but I'm like okay. I'M GONNA put a check mark by all these projects that have that have request built until and and decided okay. What am I going to do to make sure these things don't fall apart in the next few years so So that's kind of more of those problems you get into. You've got these dependencies on things so and I'm seeing that more and more as we've Kinda matured. It's not it's not just a J. thing. It's it's any kind of dependency on something. You didn't write kind of thing in my opinion and not knowing what the actual base. Api actually is. I think that's another key problem. Yeah absolutely but you know. We use libraries a reason and they're open source for a reason to like discuss their deprecated or people WANNA maintain it as meat. He's still can't use them participating boosters right well in theory their productivity boosters Sometimes I feel like I was more time hacking around him to actually get get them to finally do what the actual customer wants to be that it was just a writer from scratch and look at him and way okay. How long is it? GonNa take me to hack this thing to make it look like what the customer wants versus just riding from scratch. Is it really going to save me time? But he is not an education question. Then do I need to know more to be able to be successful with this right and it and sometimes you know you know like if if I don't know enough about an API that I'm going to probably choose the library. But I have to know that I had need to have a plan to sometime in the near future knowhow to replace that library in the dependencies. Have in it So you like with Jake. Where the one thing that made me held onto jake where he probably not longer than I wanted to was the fact that I've never had enough time to stop and just write simple X. HR code in a Ajax Calls. Right which what about? Actually being a couple. Three dozen lines of code or something like that. I can't remember To to make one of those calls in but that would that's like thirty or forty percent of J. Query it's time was just the stack and then the other part of that with sizzle. It's like the vast majority of J. Query or those two components and one of the Nice things about the more Modern Day Query. Which makes it tolerable is that you can actually build your own custom version of. Jacor they made it modular. So you can essentially Rhonda script and say only include these pieces to it and so you can you know. Ideally take out the the stuff. But you don't need anymore and take out the The sizzle engine because oscillates bypassed anyway because the way they changed it I think in two could three. Oh that if the native API is are there to select elements. It doesn't even bother calling us. Zal Engine Anymore. So you really don't need that. Because that's they've those have been there for a decade now released so you don't need you don't need sizzle so there's a few other ones that. I probably wouldn't bother adding in there too. There's actually a whole deprecated module and stuff like you said of modular actions and stuff. You can take out so you can. You can suggest throw a bunch of stuff overboard. Actually make a pretty lean jake where I think I've gotten it down somewhere in the twenty kilobytes something like that. I haven't had a really. I mean I throw it in my projects occasionally like Like one thing I don't do. I will not ever still refuse to write. Code is to actually write code right to create charts that there's too many good charting libraries. There yeah you know The WanNa musical project right now actually does have a j corey dependency and honestly he was like yeah. This is going to be a lot easier. Just throw it in there. 'cause it's only one page we've got charts up on this whole application. Gazza's listens to it that way one of the reasons j queries on so many pages. Nakas PEOPLE REALLY WANNA use J. Query but almost any library you touch has it seems to have a dependency on Jay. Worry yeah I'd do make A. I do make an effort to try to find elaborate without any external dependencies much as I can If there's just a hair bit more coach because I know there's not going to be like that extra like fourth party dependency so to speak that you know if that one goes down this one goes down to. It's a it's a chain reaction. Goodness help us if J. Query you know went away in any way like my goodness like the damage to the Internet. Yeah you the browser guys talk about. We gotta make sure we we slowly make these changes to not break the weather clearly jake where he just vanished the Leban- break because all those coffees for all over polluting everywhere. Mainly the theory is yeah a lot of stuff would probably break but if you spit if the vast majority are still using one dot twelve And that's still been around for you know six seven years now whatever. Five years You know it is what it is but The other thing that I see a lot of times in the jury space. That is very problematic to and I think this is I think wordpress is like the primary culprit of this is wordpress plug. Ins will include J Korean there in just assume that you don't have Jacor down there and so you're page will wind up including two three four. Five differ references to J. Query right and they may all be different versions of it so they all stop on each other and then you get you get all kinds of craziness that can happen in the browser view. Go let the average web page and you look at the console and look at look at the errors their log. There you start really kind of feeling what's going on in the browser starting to pull more more Few No old. Api's out the been replaced with better ones. They're also tightening the security walls like a like a common one right. Now that I see is this one about Cross domain cookie Stuff Dallas. I don't even quite understand enough to to make a substantive conversation about it but I know that a lot of websites like really big common websites that you have references to don't have the cookie set like a Like stripes that integrating it on site slightly and like if you call their their striped Jay from their their their cdn. It didn't have his cookies that correctly. So you get this warning in there. It's going to turn into an era very soon and you're not going to accept payments and unless they get fixed on their end kind of thing so you know those kind of things problematic Falls in line with that story about the media. Capture repeats very similar kind of thing. They they warn you and and I had told my client that the media capture things going to break in December right. Because here's the warning and this is the math. This is the document that Google is out six months ago about this and they just chose to ignore me and then when it happened they freaked out. Fire that well. And that's that's a company. Try to do everything I remember. The story was twenty sixteen. There was a fellow Who had made the package in an PM. Hang on yeah. This is a a young man who got into a fight over the name kit. 'cause there was also communicator called kick and and so he and in in the the. The company went to N. p. m. it's like you have to change these names and the guy got pissed off and he put his package called kick. It's not a big but it had a function in it called left pad which was eleven lines of code and so many people depends on it. It broke tremendous numbers of sites. Yup just referring to it by URL. Right there wasn't something downloading. They were doing it from the N. p. m. reference and so when the MPM reference got pulled. It just tore stuff apart. It was massive and example of a really great example that. Tom Blood types. I'll look through libraries like that and I'll see how do they do it in and I add it to my own little utility utility objects for for Lampton and client side code. If I need to I can drop it in there instead right in and just make it a part of my I core functionality but time how many developers would actually go through. There's like I'll read this article and I need to. I need this package. Even though the packages like you know tutor kilobytes. It's got one eleven line function that I need. I'm still GONNA put the whole package in there right knee. I'm looking for those eleven lines. What are they doing? Good example one that do especially when the Levin Lines was left pad which was literally like adding padding. String like it actually reading. And we're gonNA write that okay. We'd be surprised But so example one that is the most most day corey plug ins all the really doing his adding and removing CSS classes and a lot of cases ultimately what the bulls down to right So I'm into material. Put things together. And you know Google's got material designed library it's not. It's honestly not used that often. It's not I don't think it's written that well either but you know the little snack. Bars are essentially is like confirmation. Overlays that just little small things at the bottom of the screen top screen thing. They've got a component for that as well me just drop it in there. As standalone component and it was like sixty kilobytes javascript. What are they need sixty kilobytes javascript? And looked at it. And it's just like nest. After nest after nest of Wet Packard was and then you get down to it. And there's I bowled down. I think Blake twenty lines of code to add and subtract it oh classes off elements is ultimate what it boiled down to sixty kilobytes a code and I bolted them like twenty lines. Most who is just insulation So you know I look at those kind of things What a waste. It's just too tooling code that somebody didn't realize how actually strip out of there basically is what amounted to but again. It's a third party penance. You Hook yourself into and E- I can feel pages. That don't like low really crisply. I can feel that stuff and I can feel things breaking and I look in. The console. Town discusses my nature to kind of say. Okay we'll see something on a site that ally. Consol mealy kind of turn it apart and stuff like that so I see all kinds of crazy stuff out there. And then look at stats like hd barrack every now and then the Nazi crazy stuff there and yet I talked to the guys on the edge and the chrome team and they tell me crazy stories. I talked to Gaza being Google. Teams search teams. And they tell me crazy stories about stuff that they find and and things like that so. Yeah the salient point here about J queries. Essentially the thing you want to Jake Reed for which is sizzle is largely handled. Now because browsers you know. Acura has evolved the standard successfully. Well okay so that. Must've javascript side that would be Outta. W3c rocketed him. Yeah that's okay. I mean there's at the very problematic and keep them all straight Carl's into the WEP assembly. They had their own different standardisation group. That I don't follow right but Yeah I don't read the standard very much. I do read the W3C stuff about the html and and then browser API's quite a bit just helps keep things. Saturday. I'll read the service worker at least six times but also But yeah all of the stuff. That's the thing about it. You gotta you gotTa look at it and go Do I really need what. What is the the eventual tax of this poly? Fil On me resulting. What you're doing when you're throwing a library in there when a standard is actually there or in the works it's a poly fil Another one that I see on a lot of sites as modernizer. I don't really know I don't really know why we need modernizer anymore. What we knew why we needed it at the time. But the time has passed right exactly but I see a lot of brand new sites with that built-in like so many wordpress themes just have J. Query modernizer. Just part of it right. Did they just thought to why? It's just a I cloned a theme. There was made eight years ago. Cleaned it up a little bit. It's still take query modernizer reference it even though they're not even being used or or whatnot so yeah so the just occurs to me that things are happening so quickly that it's just as important to forget things that it is to learn new things off forgotten so much. Yeah it's a real balance on the nine. I never had to forget things so quickly as I have in the last few years challenge. Yeah you know I was thinking about it as we were getting ready for this today. I'm like okay. I think back to some of the things that we said in our conversation years ago like us a web APP talk and I'm like well. Some of those things are actually today. Because everything's changed sure and they're gonNA keep changing going to get change. Keep changing faster and faster so I look at it as how much can I really say is this is. This is what I fixated on. And how long am I going to stay fixed on this for me? Personally out of it's like I've got a core simplified architecture that works then I must stick with that and I'm gonNA use third party. Vinci's is I feel need necessary but sometime I need to keep track of where they are But I also realized that. Allow the that any of us work on really have about a twenty four to thirty six months shelf lives before they're probably gonNA get wiped out and any case especially if they're public facing so telling should that that hardcore dependency be there or not You know like the example that media capture thing that that plug in if they threw in there had already been deprecated three years before they even added to the site while that should that should have been. He's never gone admiral. Yeah right but I don't. I don't think there are developers ever actually looked at the get hub page. They just found the library somewhere and just probably copied from somewhere and dropped it in there and didn't notice that no one has even bothered with get hub report on several years so and the REPO even settled its deprecate. Yeah but You know at the C. I see those kind of things you know those kind of things. Add Up to people's thinking that the web's not a good that the web doesn't work well and that that bothers me because I know the website great platform by she made for client side experiences. What it's all about is ultimately about user experience. And you gotTa make sure things don't break and that's that's ultimately what we're in charge of developers is having that integrity to our applications and knowing that things aren't gonNA break. I wonder if part of the the lack of need for polyphenols at this point is that chrome dominates. Meaning if you really right for one browser or chrome maybe safari after that. 'cause you care about ipads iphones? But the is the number one thing that people talk to me about And it's business obviously business stakeholders that come to me about it. That's their number. One thing I mean. I think a lot of business owners realized that Apple's probably not going to accept applications. They're really very strict about what goes in the store and what is kicked alice door like like. I had one guy to me I think last. May Ish and he had an application seven million paying customers at seven dollars a month. You do the math on that and it wasn't. It wasn't worth nine million dollars in my wasn't a nefarious application by any means it was. I see other kind of applications in this type of thing all the time. They kicked him out and did not give them a reason. Why money for a pretty good lawsuit there even with one of the most valuable companies in the world. Well it. But they've got that four dot two site six closet basically says we import list is kick you out because we feel like and that's that's ultimately what ultimately threatening said email them back and they said four to six to him and that was that So but the thing was everything in his APP. There is no reason why it couldn't be a progressive laptop so we just turn it into a web APP and right in going outside of the store. You're right so he didn't need to worry about that and honestly probably is going to get more customers. 'cause it's just easier to excess that while. I'm good as you don't find anything on APP STORES ANYMORE. So all the better to just now it's up to you to your promotion and it still shows up an icon on the phone. People don't know the difference except the an ad break when IOS update so in that sense. They're happier well. You know that's the thing about Iowa is is. The new is six by and large. But I will or Zafar. I've always said that about Safari by personally to me when I'm not an apple. I'm not an apple guy. Look at the what I look at in the apple ecosystem. I personally don't think they've moved much since. Steve Jobs died. Yeah it looks like to me as an outsider. It looks like all the innovation more or less stopped when they handed it over to Steve Cook. You Safari has been way behind for so many years but in the last year year and a half they have really been moving forward with support for modern features in Safari. Gotten a whole lot better. Yeah it's still I would still say it's not on par with where chrome edge and fire. Fox are right now. I've always said as far as like I. E six cents. It was popular but also not compliant. He's that's the only reason we cared right is that it was still populated. We still a non trivial number customers. Going hey this doesn't work right on Safari. Yeah you get the other side of the two like in the US Iphones are the dominant phone. Gal is when you get a particular phone. It is the dominant one Even THOUGH SAMSUNG OUT SELLS EVERYBODY WORLDWIDE. but And the other side of people who who have iphones tend to pay more for stuff of the people who have android so from a business point of view you have to the apple ecosystem. What I see ANDROID IS AS ABOVE. Well actually attaining the IOS attaining parody with android but introit has been the dominant platform since two thousand twelve but in August nineteen. They SORTA almost came together. I don't know I think I got a lot more devices. Net the worried about the browser here in the browser scenario because you can get chrome Freia less and so lots of folks who are also running room. But it's not chrome it's this is very very. This is very important. Point the people gathering. Yes you can download Chrome Fire Fox in touch on Alex They're not chrome far fox. They are A. They're a a web view running a scaled down version of web kit And that's that's that's very different. The only reason the only reason that exists are called. Co Browsers nor reason is really exist. Is to up your passwords and favorites. That's not what it is about. Yeah that's that's ultimately what you gained from that I'm sure there's a few other little features here and they're like no. I know the teams tried to tried to to add a mini the UI functionalities. You get in regular edge over there with the actual engine to render pages and provide functionality is still whip getting. It's not even the full set of Web Kit as you would get in the safari browser so so so there's no problem. I like like I don't know if the service worker progressive web aspect of it actually works From from within those But I don't know how I also don't even know how popular they are the two I was generally. They're not and in fact that the fact that you go to a site on a safari on your ipad and it doesn't work right so you run quote chrome and it also doesn't run right means you just go back to Safari. Doesn't make any that doesn't solve the problem. You actually have e- exactly right. I think going back to his stats that you were talking about Richard. There was a demonstrator a survey like earlier this week in late last week anyway. Some some company that doesn't annual survey of actual mobile landscape stuff and in North America. Iphone is the predominant brand right okay. We'll let you get up. North America. It drops off especially when you get into Asia and Africa. Like there's almost no. I found China. China's iphones a really popular in China So I'm not sure what. The price point is to get them over there. But like I know what I got India like it's everywhere. You very rarely see them. Because you can get a twenty dollar android right. Like android comes off layers. Ios because it forces updates in which is also good for us like at least whenever you run into Safari. It's generally the latest safari. Lets them back right? Yeah they control everything. Hardware-software it's the be it is the walled garden but that's the strength of it but android has deeper ecosystem that allows folks to get a device. It is nominally android in heck of a lot less expensive Chris. We're just about out of time any last minute things that you want to mention before we go. I guess the only big thing on my landscape as far as the development space coming up is I will be in India to see sharp corner conference next month which mid-march Getting their holy. Which I'm really excited about. And I'll be some around Delhi area for for almost a weaker blow more whatever hanging out and doing different things. I'm supposed to a couple of universities while I'm there which I got to do. Last time I was there. It was just a fantastic experience going to some of the colleges in the area and stuff like that as fun. Yeah so that that's going to be a Lotta Fun. I love going to India. Those people are like so nice. And it's just so the last thing. I just wanted to mention this show notes but I mentioned sort of Web Assembly. How jumping out of the browser. It's horrifying for Richard and you guys. I just wanted to mention this. Initiative called Bossie W. A. SL. And you can go to Wasi dot. Org Is the web assembly system interface. So this is essentially a standard. That is a subgroup in the web assembly Cj and got kit hub repo and pull requests and they're making it possible so I just wanted to mention that will keep our I on that but Chris. Thank you very much. It's always enlightening talking to. You can always learn something good. I'm glad you had me. I enjoyed talking to you all to. It's always young Nelson all right. We'll see you next time. I'm dot net rocks dot. Net rocks is brought to you by Franklin's net and produced by PLOP studios a full service audio video post production facility located physically in new London Connecticut and of course the cloud online at P. W. O. P. Dot com visit our website. Dot Any T. R. O. C. K. S. DOT COM FOR RSS FEEDS DOWNLOADS MOBILE APPS comments and access to the full archives. Going back to show number one reported in September two thousand two and make sure you check out our sponsors. They keep us in business now. Go write some code. Cnn time yesterday.

J. Query Carl Franklin Richard Campbell Jake Reed developer NBC Chris I Carl Franklin Google Microsoft Nbc Oslo Puerto Dot Com NBC Minnesota twitter Oslo Dot Sydney
Building Applications using Server-Side Blazor with Shaun Walker

.NET Rocks!

52:42 min | 2 years ago

Building Applications using Server-Side Blazor with Shaun Walker

"Are you struggling to replicate the bugs and performance issues customers reporting plug ragun into your web and mobile apps right now in diagnose problems in minutes rather rather than ours kiss goodbye having to dig through log files in relying on frustrated users to report issues. Make your software development life so much easier easier using ray guns error crash and performance monitoring tools. Every software team can create flawless software experiences for their customers with reagan. You try it free today. At reagan dot com <music> welcome back to dot net rocks. This is carl franklin and this is richard cavill back. I can studio doing the thing the thing with the stuff. How you doing man been a great summer. I have gotten far less in writing done that. I planned i think i was just essentially deluded this idea that i would have time in the summer to just focus on working on the book rice you know up on the coast host but anytime i'm on the coast people want to be there. It's beautiful there. I think i'm going to have to finish the bug through the winter on the coast when nobody wants to be there just like go to the library. You know someplace where you're not distracted by. Wait a minute. What am i saying you. That's one good thing now that is just one big pile rabbit hole for this right but sitting the coast place just looking at the ocean when i have it to myself. It's fantastic. It's just it in the summer. You don't have to yourself sure. I got something interesting for better no framework so roll the crazy music. It's got a story that came out in the verge on my birthday august eleven happy birthday yeah well. I thought you would find this interesting because it touches a couple of <hes> things that interest you the u._s. Navy will replace its touchscreen touchscreen controls with mechanical controls on its destroyers interesting because of a deadly 2017 crash between a destroyed well oil tanker that apparently the touch screen controls got in the way or they failed. I you know the thing with touch is lack of haptic feedback right like what are you bet in a bit of the panic you mess those things up. There also just more complex right. There's more that can possibly go wrong. <hes> the good old mechanical nickel controls work because they're just the laws of physics. You know simplified yeah i don't. I don't know that you have any vanish touchscreen and obviously some specific disadvantages to i've. I've read a couple of pieces around the accident with the mccain before i mean there were there were lots of problems but this looks like one of them. Yeah <hes> the the bigger one was. I think they've actually made the radar system so complex that there are not enough people on a given ship that understand them and they have problems recruiting and retaining meaning people skilled in that sort of stuff then r- actually in the wrong radar mode and didn't even realize it. It just makes me go back to the idea of physical keys like we're all walking around. Physical keys on our keychains reason is because they work. You've got a few digital keys to they. They're pretty good but right up to you. Don't have electricity the really not that good yeah when the battery dies in your job he stops working or or worse when you're using r._f._i._d. Which is passive and the and the power's hours out in the building yeah and you literally cannot nothing to read the r._f._i._d. Sick though right so yeah. There's there's something in there i think but anyway that's what i got. Who's talking to us today richard campbell so i grabbed a comment off of show six eighty nine. Oh my we're talking to sean offer today and i went. I had at least look at the last time we had sean which is literally eight years to the day or within the week wow we talked to him about dot net nuke <hes> and a few things to just give you some context jumping back eight years. One is show six eighty eight. It was the first pico wow so yes that was the carlin richard space out show which if you recall i thought was an incredibly credibly bad idea. That's right and resisted every step of the way and i was wrong. You were right. This was entirely your idea but <hes> <hes> it's hard to tell you no because what you like talk about is what you like talk about but i see from everybody else's perspective. That's a great conversation sation well and of course the comments in six eighty eight play that out what's interesting is they even spill over into six eighty nine. This folks are still saying oh by the way they keep doing. The gay coutts yeah but the particular so we were talking about dot net nuke back then and believe it or not migrating to c. sharp from v._d._b. Dot net and just so capable who you don't know dot net nuke is a it was a really <hes> one of the first content management systems for building out websites certainly ah dot net platform i by spy my goodness like it right back to the original stuff but this particular comment ties directly into that it says from anders bloomsburg who says hey guys i love the idea of the gauchos and i'd like to suggest a topic. I was chatting with richard at the green lion inning or dev last year in the green line i do how can i i was a lot of whiskey man and he introduced the topic of sous vide cooking to me. I'd never heard of it before. It was quite intrigued by the idea. It sounds like such a scientific incredibly geeky cooking <hes> anyway. I wanna know more. How does it work gear. Do you need and what her so cool recipes. I think it would make a nice show and thanks for the great podcasts so you get an next november which i don't know that we went. I think we probably did but it <hes> yeah you know there you go over over from the previous show and we never have done a show. I geek out on. I don't know if there's much. I don't there's an hour there would tend to agree now but maybe it was in two two thousand eight when it was innovative but today i think pretty well known for andrew's already has a device waited on us to make a show about it hopefully not i i mean i use my nova precision cooker every week. It's just that ability to throw food in the been essentially in the water and walk away okay and no two hours from now. I can pull it out or three hours from now. Visit really matter doesn't really matter safe window so under thank you so much for your comment. A copy musical buys on its way to you and if you like a coffee music kobe right a comment on the website at don iraq's dot com or on facebook we publish every show there and if you come in there and i read on the show. We'll send you a copy music. Oh by and <hes> definitely follow us on twitter. I'm at carl franklin. He's rich campbell. Send us a tweet. We will convert them into abacus really really mechanical nice. I was reading a great little article about why we call a we have upper case and lower case which a lot of languages don't have because literally it was the boxes of the typefaces. The upper case was for the for the big letters and the lower case was for the small letters positionally on in the for the <hes> the printing machine that is fascinating case totally random case literally with the case the box that they sat him. Wow neat all right well. Let's bring sean back after eight years. Sean walker has twenty five plus years professional experience in architect doing and implementing enterprise software solutions for private and public organizations. Sean is the original creator of gotten nuke a web application framework which is one of the pioneering open source software apps native to the microsoft platform. He was one of the original founders of c._n._n. Corporate commercial software company providing products services and tech support for dot net nuke which raised three rounds of venture capital from top tier silicon valley investors based on his significant community contributions. He's been recognized as an m._v._p. Microsoft soft m._v._p. As well as an e._s._p._n. Cider for over ten consecutive years he was recognized by business in vancouver as leading entrepreneur in their forty forty under forty business awards was a founding member of the board of directors of the outer curve foundation and currently chairman of the advisory council for microsoft's dot net foundation sean is currently technical director and enterprise guild master at cognizant soft vision. Welcome back on the great to be back. It's crazy to it's been eight years. It seems like a long time went by really fast. Your bios changed a little bit since eight years ago. Yeah definitely has changed yeah yeah you would hope and i'm sure life has changed for you quite a bit too yeah when i think back twenty eleven and the fact that you mentioned that we were migrating from the version of diene that was visual basic base to see sharp that seems like ages ago aw yeah and i hadn't heard the term you know realize just thinking about your your bio that dot net nuke was one of the very first open source projects associated sued the microsoft space and you've done all of those growing pains of how do you make a living from an open source product like you've been involved in every bit of that yeah definitely had it shared challenges over the years especially in the early days when we were just doing very organically certainly microsoft microsoft had <hes> a share in its success in the in the very early stages by sponsoring me for for a year but <hes> yeah it's definitely been a long the hall i eventually left dwn corporate twenty fourteen and that was quite a long run so he had originally started that back in late two thousand. There's an into so that right large portion i professional life dedicated to the n. and where does outer curve fit into the equation these days. We've got the dot net foundation and so so forth like that this predates all of that yes so i would occur and i believe that was around. Maybe twenty eleven twenty twelve when microsoft decided that they wanted to create a a nonprofit foundation to manage their open source initiatives. <hes> curve is still around. It's <hes> significantly wound down in favor of the dot net foundation now right yeah and you and your vault not as well yeah so i i started in two thousand fourteen <hes> and at the time i guess it was j schmeltzer who was leading the effort internally at microsoft to get the dot net foundation going doing along with some other folks like martin woodward <hes> i had actually just left d._n._a. Incorporate that time <hes> and i guess based on some of the experience i said i had working with <hes> open source communities <hes> i had the opportunity to work with those guys that they got it setup actually authored the original charter for the advisory visor counsel for the dot net foundation <hes> as i had some free time in my hands that summer so <hes> i think dot net foundation has really provided a a lot of value to the dot net community. I think every significant <hes> dot net based open. Source project is probably a member of the foundation at this point <hes> and they've done some pretty amazing things in recent years in terms of opening up the membership. I mean they have a <hes> an election of the board so ivan actually ran for the seat in that election but there is a a really strong board of people with various backgrounds now that that make up the board john galloway's doing a super great job of making sure that everything gets done when it comes to the dot net donation but we're here to talk about blazer. Aren't we yeah. I know you had <hes> steve sanderson. Dan roth on a on upgraded. Show yeah those around april when the official preview came out. I think actually if you think about it if we took the time to curate it we have shows about every single stage of blazer because we did a show with sanderson at n._b._c. right the first time he showed the prototype of it. Yeah people went nuts. I've se- i've david foul. Dave <unk> heads just about exploded. Which is something saying something. I i actually heard from folks within microsoft that <hes> a lot of people didn't know it steve had been working on and he did that initial presentation at n._b._c. oslo and some of his managers managers were actually in attendance and the audience and they were blown away. They couldn't believe what he demonstrated and it's so in deep into s._p. Net now that the actually call it server side blazer now not a._s. Peanut core razor components yeah. It's contrary sheriff changes. I think so initially <hes> blazer was sort of synonymous with this client side model with web assembly but over time it's evolved now to also include a server side model and that's what they're actually shipping in september yeah. It's interesting because you know c. Sharp on the server who would have thunk it the lender member. Why is this. Why is this thing. Are you asking why is server side blazer. A new client side was the breakthrough right. That's what this is all about and then there's been this wave of well server side. Yeah it's funny. It's a good question question. <hes> i think the cool part about blazer is it's got a component model and really i think that <hes> as far as web technology goes jose dot net the last really good component technology was web forms and i'm going to say that and people are gonna say the web. Worms is terrible but <hes> it had a really really good component model to it where you could build components and reuse them across different applications in fact i mean that's that's really how dot nuke <hes> was built from the ground up using in a lot of reusable components and then allowed people to build reusable modules which they could share with one another as well so blazer actually has a really strong component model title which was sort of lacking in previous versions like n._b._c. really didn't have a great component model so that's what people are excited about and that's why blazer on the server side. I makes a lotta sense. 'cause you can leverage us component model. Do you think this is a microsoft field specific thing that the developers used to developing an dot net rely component malls or is it just genuinely matter who you are. This is a superior way to build software to good question i. I think that it's a superior way to build software. I mean i don't think it makes a lot of sense to be building the same things over and over again why not reuse as much as possible. I think that that is also a common theme and other languages as well so i don't think think it's unique to the microsoft platform react certainly with <hes> components in all sorts of these services <hes> client side things are creeping that way and in fact i think that largely the concepts of blazer and the component model have been taken from at least conceptually from some of these more popular javascript frameworks for angular react and do you and others and of course we always loved the component model in in microsoft development technologies going back to visual studio and visual basic before that you win forms yeah agree. It's a highly a productive way of building software move. Yeah you don't have to get down into the details as much if you think back to to the web forms days and think of some of the commercial vendors genders that were successful at that time with their component sweets you know there was quite a few of them that we relied upon heavily teller infectious sticks and others <hes> mean that component model at those same vendors are actually getting pretty excited about blazer for the same reason yeah. So what does it look like to build old blazer applications these days obviously it's not like <hes> the visual basic of yesterday but <hes> certainly what is it. What's the thing we're going to notice the striking difference between the way we do things with say n._b._c. Well again. I guess it comes back to the component model and the way that you you have to abstract everything as a component and it really depends on <hes>. I guess what your goals are but you have the ability to target both of the hosting models that are available so you can even today right applications that take advantage of the client side side model and web assembly <hes> or you can take advantage of service side or you can build applications that target both <hes> in order to do that you have to you know architect your application in a certain way okay but <hes> it allows a lot of flexibility and and power in terms of building apps are rethinking spa. Ish here is a tend to be a single page app or more traditional. Wehbe style no it really emulates the single page application model. That's another benefit again. If you wanna to build a single page application and you don't necessarily want to use some of these larger fron javascript based frameworks <hes> <hes> blazer even on the server side is a good model for doing that so you can build an application that feels like a spy application but it basically is still running server side and it's all written using c. sharp rather javascript and what's powering it has essentially signal are and so the the safe. You're getting hangul to client side blazer. I don't think the dot net runtime is smaller than angular no and this is like for client side blazer. That's that's where they're still needs to be some optimizations that are made because it actually has to download a lot of assemblies to the browser in order for it to run affectively and so they really need to come up with the more optimized version of dot net to move that effective and that's why they pushed the release date for client side blazer until potentially later later this year or early twenty twenty so what is the client technology then when you're doing service either you just rendering everything into h._t._m._l. <hes> so you're writing z. Sharp <hes> just like you would normally do if you're writing. You know web forms or m._v._p. Si <hes> yeah and it's still targeting h._t._m._l. As it sort of output language yeah so it's not anything different in terms of the underlying technologies that are being used. It's not it's not rendering kind of proprietary new format or anything you actually build your applications using standard c sharp in the standard way and then you can lie although those applications and then in the server side side model those assemblies are running obviously on the server and the user interface is being generated by interaction by signaller that's and so it's actually doing dom differences over signaller with the browser so it still provides a very responsive fail for the application sure. I guess guess. It's a little more latency sensitive but you know it depends. I would certainly think in your typical forms over data internal application latency is not a question. It's just maintainability. That's what it's all about yeah and that is one of the guests the big questions about server side. Blazer is no how scalable the ball is. Signaller aren't scalable from what i understand. Yes you're using their service. That's right you can't even use it with functions auctions yup yes so it <hes> i think that i haven't seen benchmarks and a pretty sure those will be coming soon because obviously suicide blazers shipping in like a month so <hes> we're gonna pretty soon be able to see some performance. Benchmarks using different services the azer signaller service. I'm sure it's gonna that'd be h- more scalable than the basic but you should be able to run blazer service side applications even the most basic as your service accounts right yeah. I guess it's interesting when you think about corporate of these days is how much it's going to be on prem at all. And how much is this going to be azure stuff. Kinda developer perspective where there's a lot of excitement around blazer is at least when you're building a lot of these large single page applications today. You really need people bo with different specialized skills so you'll have front end. Developers were more skilled at javascript. He'll back developers more skill to see sharp and it's getting very difficult l. to find the right mix of those resources <hes> and we we have that problem today when we're trying to staff our projects getting the right balance to make our our functional teams and but with blazer you use the same c. sharp technology obviously to build the back and as you do the front end so in theory i mean people with back end. Skills can be used more effectively to build the entire full stack application ecosystem of third party components for blazer coming along um. I think it's still early days. <hes> some of the folks that you would expect to be involved already like the you know the progress taylor and others have already started putting together. Some minimal tool sets as components sweets that you can use to build applications. I'm expecting checking some big announcements. Come september that will be a bunch more vendors building tools yeah. It's it's not just the the incumbents and it's interesting thing about teller. Endeavour has the incumbents because they were the new guys when dot net came out but now you have the the rad's ads ends of the world like there's other new organizations that are coming in on the blazer bandwagon and offering components that way so it yeah. We're really interesting time. It seems a new wave of component vendors yep yeah definitely i saw something the other day from radson they are already focusing on blazer interesting to see how much marketing microsoft what's behind blazer because that'll be an indicator of sort of you know how much excitement there's going to be in the community and how much investment people are gonna make into to utilizing it well. It's one of the battles within modern dot net now. Being an open source product is can you sell commercial tooling against an an open source product. Does that make sense. You would know sean well. It's certainly possible and yeah i. I think that there's different business models that have proven to be successful and you can have you know a more simplified open source version and then i'm more premium premium commercial version. That's like the open core model as the model that d. n. and has been using for quite some time fairly effectively <hes> other it opens source you know commercial companies have used a similar model others focus on providing the the open source tooling for free and then relying on consulting services or perhaps <hes> like the cloud hosting services or other types of services around it. That's other. That's another pretty good model. I look at <hes> outside the microsoft ecosystem and i look at folks like you know red hat to that affectively <hes> al-qaeda's doing that effectively around drubel technology and so that's a pretty popular model as well yeah. I think he's the i i'm always concerned about crippling pulling software kind of feel like it's the support model. Are maybe multiple instances that kind of thing that <hes> that makes sense yeah i personally am. I guess i'm leaning more towards the providing the services around a really stellar open source product that is not crippled tripled in any way. I think that serves the needs of consumers a lot better and still provides a lot of opportunity for monetization yes then the balance is the ecosystem ecosystem like the third party sort of influencers and so forth that are providing that support for free versus paid support from the company and it is an interesting balance to say because you kind of want both right part of what makes a product successful are those advocates you always have the rockstar types those charismatic personalities that like your product out there pushing it you want to support those people but at the same time they're they're taking away from your ability to make a living that's hard yeah and that that's sort of the the the trick with open source ecosystems where there's a commercial element is finding the right balance. It's interesting in the deep. In an community. There were some early hosting providers that got involved and specialized in providing d. n. website hosting and they they ended up making out a monetarily a lot better than now than the folks who are actually creating the product and the early days <hes> but i also saw that if those hosting providers didn't exist and the product would not gain such popularity because you know you can't have one without the other so and that yeah the hosting model of course is a perfect blocking because you're gonna stay there every you're going to get billed every month. It's very hard to move off of it and it's providing powerful services in that sense right. This is what keeps your system up and take the pain away from you right. I just found in <unk> asteroids game that that would that noise. That's what that noise was. Yes that's the other cool part is so you can build some pretty interesting things with blazer. Especially on the inside person can you can build like full-on games and it's quite an interesting technology from that perspective and so he's using the canvas capabilities of of asia additiomal of the of the browser dom to be able to draw directly on the screen. Yeah it looks that way. I'm going to add a link to it. It's a web sembu the demo. It's not a blazer demo per se but right. I think it is written. A blazer could be written in anything when it's well dissembling right. That's part of part of what makes it the whole thing so crazy. It's just thank could just see running in the browser could be anything you don't really know other than it's in the sandbox of the browser but i'm fascinated updated to swing to the server side model specifically for i guess in correct me if i'm wrong. You're sean. It's the forms over data business right. They are there other things you can build with service laser. No i think you you obviously that's probably the main use case but you can tell him on a a lot of functional applications. Even i think the other interesting use for building functional mobile applications so <hes> so rather than using native mobile technologies <hes> right you can actually you know you could build progressive web applications which function quite well as mobile applications and you can build them using laser as the underlying technology are they actually early progressive web apps like is just a mode that uses the progressive web app manifesting features now. You have to layer that in but it's pretty simplistic to do that. I've seen a few examples of that already yeah yeah it's it's very easy interesting. You wonder if there's in the framework waiting to emerge on that side as well. It's big that's right but we are talking about one of the advantages of this service i blazer as it should run equally well p._c. Laptop tablet phone yeah in fact at <unk> at the m._v._p. Summit earlier this year. It was interesting. Steve sanderson did a demo and the the sort of known hosting models for blazer our client side using web assembly assembly and server side but he also demonstrated using electron to build a desktop application and he actually used the exact same components so the exact same set of code that was built as component was targeted these different hosting models and didn't have to have any changes all configuration what it was actually making an electron app yeah. They're using the electronic host from blazer exactly yeah my head officially exploded. Just i was gonna say 'cause. There's a conversation here about if blazer in electron arrivals and i think a complimentary hey guys is hold that thought while we take a moment for this very important message hey remember the platform. We talked about on a show few months back. The open source guys enabling c. sharp trump developers to write single code base apps for mobile and web via web assembly will now. They're running a conference in montreal with speakers like miguel de causa billy hollis and more go to w._w._w. Dot no-confidence dot com for details. That's u. N. o. c. uh-huh n. f. dot com and use code d._n._r. Twenty-five to get twenty five percent off the conference price hey this is carl franklin and this is richard campbell and we're going to be hosting the dot net developer days conference in warsaw poland october twenty third through the twenty fifth developer days is one of the largest events in central and eastern europe dedicated to application development on the dot net platform. We'll be recording a number of shows from the conference and hanging out with you and early bird pricing ends august thirty first so go to developer days dot pl and get your tickets now and we're back. It's dot net rocks. Thanks carl franklin richard campbell and sean macher talking about blazer. I think richard's head just exploded yeah yeah yeah so the the the ability to target these blazer components at all these different coasting models and i'm sure they'll be more that emerged in the future is one of the huge capable the capabilities. That's i think got so much potential so you can sanderson demonstrated targeting blazer server side to electron yep yep so building <hes> it was basically the electron shell <hes> running blazer component and the same blazer components that were running in the web or on the client side so it's a pretty adaptable component model to blazers spitting out h._t._m._l. And electron rules and electron hosts picks them up and renders yeah. I'm not sure how how the electron model actually works under the covers. I haven't played with that at all but i mean from a visual perspective what he demonstrated all very very a native wild yeah you know his theory recognizing that. All of the blazers doing on the back end is spitting out h._t._m._l. Any of these a._c._l. Frameworks could work every time we talk about blazer to the nagging question in the answer is always the same though but is there anything that it can't do uh-huh or any <hes> achilles heel that plays her house while i think the achilles heel will be maybe using the wrong hosting the model for your use case and i guess the fact that it's going live on september with server side <hes>. I think that i hope it doesn't <hes> <hes> get used in the wrong way and what would that be the wrong way well. Maybe you know trying to build applications that would better be or better better suited for running in the browser and trying to run them on the server and expecting the type of performance that you would get in the browser as a as a native browser app so it's more web forms even than <hes> the client side blazer model right and that's why i think that a lot of people would probably prefer to run in the client side model where which is much similar to <hes> more similar to angular react rate where the u._i. Is all running natively in the browser and you're only relying on server connectivity for service calls to get data yeah yeah which is not necessarily what you're doing here so you can easily build a u._i. You are that's gonna perform. Poorly over a signal are could be a lot of data being all back and forth just the same kind of problems that we were having intrinsically physically with web forums and state and things like that except that you're in control of that now so that's why i was talking about building the wrong application. Maybe for the hosting mafia on <hes> you kind of have to understand that the nuances between them make sense yeah yeah so it's been it's been interesting so i i started working with blazer surrogates back. It's almost a year now. He was back last october was early stages for blazer then and <hes> it was actually scott hunter that reached reached out to me and said it asked me if i'd taken a look at blazer yet. <hes> i have thirty long relationship with scott. He actually in twenty eleven seven eight years ago. He spoke at the dnc summit event in in orlando. Florida is one of our guest speakers and so we've stayed in touch them thin and he's always had <hes> <hes> appreciation. I guess for the d._m. Community and <hes> he's always been looking for ways to move the community forward because the product itself is still written using web forums <hes> and it needs to undergo some kind of migration effort to go get it up to modern standards and so he had asked me if i had looked at blazer because default the component model and blazer <hes> would is really conducive for building out like a framework d. n. which is very dynamic hamic and so i started taking a look at it than it took quite took me probably a month to get my head around it <hes> and i wanted to most of the examples that are available for for blazer are more static examples <hes> they're not dynamic. At which is what's more required if you're building a framework <hes> and so eventually i i got hooked up with the dan roth steve sanderson and <hes> they were quite helpful in showing me some of the more i guess undocumented primitives that are part of blazer sir <hes> that you can take advantage of two more dynamic things <hes> and so what i ended up doing was building a prototype application which kinda emulates what diene conceptually functions like an built it all natively in blazer so the notion of having dynamic pages with modules that are rendered dynamically that compose a page <hes> the ability to that have multiple sites are at you know multi tenant application all of these capabilities. I've sort of built into a new open source project that i called octane. I got a link to that yeah so it's still i would say early stages. You definitely can't compare it in terms of functionality to what d._n._a. Offers today but i think it's headed in a direction where <hes> it could be a good solid starting point for developers developers who want to get started with blazer which was really what one of the biggest benefits of c._n._n. Was in the early days as well. You know as a fully functional application that you could open up. Look at all the source code. See how it works. It demonstrates a lot of different techniques that <hes> you know you might need to explore building a blazer application. <hes> and it's all built natively using the more modern technique so it uses <hes> h._d._p. Service requests uses a repository pattern it you know it uses all the more modern modern techniques for building a modern web application and i also have made sure that it functions in both the client side blazer model well as well as a certified blazer model so that <hes> regardless of you know how you want to build your application. You can choose hosting model that suits your needs interesting. It's and so just a set of tools to help people explore blazer to about you know what if you were going to build <unk> using. What would you do yeah so it's a great place to get started. It'll have the same capabilities as demand in that people could build applications that plug in so you basically the concept of installing able and reusable modules and so the same way that there was an ecosystem that sprang up around e n n. I'm hoping that it will will be possible with this new framework as well a dive back into this lifestyle again sean well. I know and it seems crazy after i ended my time with the n._f._l. I took some some time often. I thought yeah i. I don't think i'll do another framework again <hes> but then <hes> it's just something that i've always cared a lot about is creating ways for developers to be more productive so rather than like this. This is just my preferred way of building applications. It's not to start from scratch and build a lot of mundane code that is common for every application. I'd rather just have a more functional foundation that i can build on top of and focused on business logic most important for me. <hes> and i don't think that for dot net core. There's there's a lot of <hes> good frameworks that exist you know that that exemplifies sort of more modern web technology and most of the frameworks that exists exists for dot net today were originally built on web forms and some of them have made migration efforts to move forward but unfortunately some of them still have a lot of baggage so well well in the leap to blazers a pretty big leap. My jinxing thing is if i call this the new silver light. I think you are jinxing. It becoming say that say that because obviously still for light had a a very terrible end but but it's very different than silver light in the sense that silver light required you to install a plug in in the browser whereas web like this you know this it doesn't require any special proprietary software plugging yeah. It's in the end. It's just h._t._m._l. And even runs on an iphone right i pad but the and that's the thing is if if silver light existed today and sorta does but doesn't really you know you think about what it would take to what a modern <unk> forms <hes> data over forms tool would look like it clearly have to work on all these different form factors and you'd want a unified language. You'd wanna be tolerant to baltimore browsers in a it's the blazer and a good framework around it. These are the ingredients audience of what new forms over data should look like are any of the browser manufacturers for lack of a better word. The browser brands not playing nice as with web assembly not so far it was originally <hes> mozilla <hes> that <hes> or like fire fox right was the first one jumped on web assembly in the very early stages and they're the ones who provide support for web assembly <hes> i think that was back in twenty sixteen <hes> and the other major browsers have followed suit <hes> so web assembly is already shipping in all the major browsers for quite some time now even safari yet but they're in it now <hes> yeah oh yeah so the the whole browser compatibility thing isn't so much of an issue and and also i guess that's more that's more of the client side model for blazer. It requires assembly server side blazer doesn't require that so you could run service i blazer on any legacy browser even like older origins of i e extinct but it also makes you wonder like service side blazer really blazers soon as you take web assembly out of the loop. Would we do well. It's espionage n._b._c. Razor components through your calling it before yeah i think so they've renamed they tied to rename aim at to differentiate between the server side model and the client side model and they just decided that that was confusing so now it's all blazer and i think blazer really refers to this powerful our component model that could then target many different deployment hosting models and that's ultimately what's made the difference. It's as long as you're building the software the right way and it runs well. Have you experimented on the different browser and platform combinations. What do you have to do to make this apple made. He's apps work well on phones or the component models. Take care of that <hes> yeah i mean so if you're running it in a in a browser it just it it delivers h._t._m._l. To the browser so it's <hes> you don't have to do anything special work on devices right depending on which which browser you choose to use on your device so you don't have to do any of the <hes> the the u. I. code c._s._s. Stuff that you know people get tripped up on to make it work everywhere. Well okay so the default default templates that are shipped with blazer. Today is bootstrap. Which is you know the response of framework which can be used for targeting all different devices prices yeah. I'm just wondering how much how much are you depending on a third party. Components are third party library than to make sure the stuff works that the tiller rex and the devops is and so forth the world yes. Oh blazer itself isn't opinionated. When it comes to creating a user interface so you can choose choose to use whatever components he want from third party vendors you can choose to use bootstrap or you can choose to not use bootstrap. You could choose to use whatever you want right so you you oh you are in control of it ultimately. You have just worried about how i sweden h._t._m._l. Specific syntax out through c. sharp running on the server side. Yeah you'd make component yet. The component will generate your markup for you and ship it over over circularity the browser yep. How tough is it to make a component. That's pretty simplistic. I mean a so you can obviously go to the the blazer their site <hes> you can see a lot of decent documentation. That's there you can spin up an example blazer site within visual studio as using the the visual studio two thousand nineteen preview edition at this point <hes> and components <unk>. Obviously it's really simple to create a really simple component. <hes> <hes> which is the same like hello world really simple as you start to build more elaborate applications. I mean it has its <music> own life cycle. You have to get acquainted with the different life cycle events that are part of the blazer model similar to the way you had to get acquainted with life cycle events as in previous models n._b._c. or web arms. We're going to see some tooling in visual studio or what is the tooling look like today anyway my yeah so <hes> the tooling is so this is another of the reasons why client site blazer isn't shipping in september where a server side is so if you're developing server side the full visual studio debugging experience just works perfectly well today right you can set breakpoints in your blazer component step into you would look at variables everything to see h._t._m._l. Right that's right yup c._s. h._t._m._l. Yep and client side. It doesn't work so well yet. They're still working on that visual studio experience <hes> so it's it's not as productive today to develop client side a you end end up having to use your you know your browser developer tools and <hes> you know looking at the window looking at the console to see if there's errors so it does not as productive for client side but i know that they're working on having a sort of a very consistent debugging experience across posting thing models in the future looks very cool and then the other thing is <hes> it also works in in via code so you don't have to use visual studio yeah again we get into complexities of action building your own components. That's where i'm thinking. How does mike control collapsed down in a smaller form factor into some less space consuming thing like the devil's in the details here. Well you still have to understand. I guess how right <hes> h._t._m._l. In u._c._s. access to target different devices just like you do day in any spa framework a you have to have people who are familiar with the techniques for dealing. I'm with you. I informed factors in the browser and there is this case for this component model and for the average developer needs to bill forms of data that that works on a phone as well as a p._c. Saying go buy a component library and they are dig taking care of that problem for you so you can just focus on the demeanor. You need to work oricon interesting times man. I just wonder if this thing's going to break out in a big way. It feels right. It does feel right and you know steve sanderson's behind it. It's it's probably pretty awesome. Man does consistently spit out genius on a routine basis. Yes yep now the whole team. That's been working on place or any thinker. All has a real passionate group. <hes> came into it so carefully sean thoughts on that like why. Why did they hesitate for so long. I mean they're committed now. It's going to be a product but they say they sat on it for a year but the whole you know i it was sanders is project and it was i experimental like what do you think all of that in the early days the <hes> focuses on the client side model <hes> and at that stage age assembly was pretty new as well <hes> and there was some challenges like so the very first prototype that steve sanderson put together together <hes> it was it was a proof of concept at worked at used a very sort of not very well known <hes> open source portal dot net called. I think it was dot net anywhere right right something something that was originally designed for smaller devices with smaller amounts of resources right and i think at the point when steve was using it was abandoned where to nobody was working audit anymore right so they realized that that wasn't going to scale then luckily they found out that the mono team was also working on a awazem waza import <hes> of mono and so they were able to move to that and so i think it's it's behind the scenes. There's been sort of an evolutionary process as they figured out how how they could actually deliver something that was like an enterprise grade technology and maybe the problem was you know steve demonstrated something that looked so amazing such a long time ago. The question is like why did it take so long to get to this point well. I think we all know as technologists that there's a lot more that goes into developing really solid software so you look at a proof of concept and you know it's not the end result no and and yeah and i'm not gonna say smoke in mirrors but yeah there is a very keith changes along the way they're just not visible to the average person i am where they got to their but i also thought everybody sort of hesitated on his web assembly a good idea there was there was what i went to saw ross show up in go lang show them like okay well and clearly this other people who think that that was a good idea. I'm for one. I'm glad that they're taking their time because it's kind of important that they nail it. You know that they attach their hitch their wagon to the right horse instead of horses. I think it is important that other languages that have jumped onto web assembling <hes> the so there's already a a large community that's forming around that technology and i think that microsoft in this case got in early early enough that when they come out with the final product. It's going to be a complete product right. It's not going to be a half baked product just just to play catchup right. They're gonna you know they're going to be there at the table with something. That's like a real set of tools that developers can use you know let's also just think about the the the component ecosystem as i was saying before that this enables <hes> you know we could find ourselves back thinking about being back in those days where you could just <hes> you know drag and drop components onto a page set properties pretty and do a lot of the programming just by meta data without actually just focusing on the code itself not so much plumbing yeah because i think with these single page applications built on these javascript frameworks. We've got quite a far distance away from that kind of development model so it's the size of some of these projects have grown <hes> quite substantially. They're not a simple as they once were. I think that there's room now for a more productive framework to emerge that can simplify things well. Oh can't wait for september. It's going to be fun yeah. It's going to be a good september. What are your plans between now and then <hes>. I am going to enjoy a little bit more of summer. I'm going to try to get octane into a <hes> a more. I guess what i would call m._v._p. State so that i can try and coincides something. That's fairly fairly strong at the same time that <hes> the blazer service. I'd ships with donna core three sounds good. We'll we'll have to have you back and talk about it later all right. Thanks for having me on appreciate it. You got sean great talk to you all right and that's a show we'll see you next time on dot net rocks <music> dot net rocks brought to you by franklin's net and produced by pop op studios a full service audio video and post production facility located physically in new london connecticut and of course in the cloud online at p. He w o p dot com visit our website at d._o._t. Any t. r. o. c. K. s. dot com for r._s._s. Feeds downloads mobile apps comments mints and access to the full archives going back to show number one reported in september two thousand and to make sure you check out our sponsors. They keep us in business now. Go write some code see next time band aw.

blazers steve sanderson microsoft Sean carl franklin dot net foundation developer carl franklin richard campbell Navy reagan mccain twitter richard campbell asia facebook Sean walker carlin
Empathy vs Sympathy in Software with Lily Dart

.NET Rocks!

53:40 min | 2 years ago

Empathy vs Sympathy in Software with Lily Dart

"Welcome back dot net rocks. This is Carl Franklin Richard Campbell and we're recording today from the OH. No I have to reinstall windows this department here story. They're just a little story. I'll make it short. I was I had a hard drive crash on a few months ago. Oh and had to reinstall windows and I hadn't been using windows at the studio podcast recording all that much except you only it was using it for was recording bands and stuff right so I have a band recording and it's one of those things where it's like all day you just keep it rolling and hard work yeah yeah after several hours four five hours. I noticed the recording software starting to like freeze up and I'm losing stuff. Go and you know zoom zoom in and it's like not being responsive some like man. I'm sorry guys. I don't know what's going on here and then I realized that it's thirty two bit windows ten. Oh no how did you do. I don't know I'm surprised that even exists anymore. Yeah no kidding right. That's this so now. Now I've got you know I got to remove takes that we didn't use and try to find stuff and the band sitting around like what's the matter Franklin in you know anyway. They're waiting for you know it's never good yeah so. I had to go ahead and upgrade reinstall essentially windows to sixty four and so this is the first podcast recording with after going to sixty four awesome all right well. I hope it works works. We already had a couple of mess ups all right but so there's the drama well speaking of drama. I have something dramatic slightly dramatic matic. Maybe melodramatic for better no framework so roll the crazy music Microsoft the musical yeah. I love this yeah over one hundred it employs of Microsoft got together mostly insurance. I think it was a group of interns at drove this that's right yeah a lot of it was in the latest round of interns in terms like this year yeah and so they did this kind of you know show tunes thing about. Bill Gates and they did pick on Vista and windows phone but things like Zun weren't mentioned. I guess that's like Old Guy Gaffe not millennial gaff but it's actually really positive message. I mean yeah interesting. This is like a recruiting video for interns by interns right right. That's pretty funny it. It is funny and you know. Go ahead and check it out will leave the link up there it sixteen fifty three dot propped up me awesome. WHO's talking to us today? Richard grabbed common for show twelve fifty-six which you've done with one lily dart back in February of two thousand sixteen that was a show recorded at NBC News while ago and it was about user research now and and lots of comments on the show actually but one of them is from Paul Michael's who says during the show a brief discussion popped up about color blindness particularly Red Green colorblind Yep. I'm sure there is a huge spectrum this field but my own experience of color blindness as a red green colorblind person is not with starkly contrast in colors such as traffic lights lights but more on a snooker table because you think a sticker tables green right and you've got a bunch of red balls and then you've got a a variety of other colored balls right and he goes on to say where the light is poor and the shades of color similar. That's when red and green and Brown can all look very similar similar good example of one time that I played laser quest. You know the game where you where little chess piece and you have a quote unquote laser gun. You're Oh yeah people. He's is with lights dimmed. I couldn't tell the difference between the two. Sano common theme here is like how much light did he have of like. How clear could he get actually see right. those things so you know. I almost wonder if red-green blindness is a misnomer. It's just a reduce use ability to see it and and discriminate with it but it you know seeing colors and interesting thing yeah it is Paul goes on to say I also wanted to comment on the aspect of focus groups one thing that's always concerned about this kind of usability testing and I'm not by any means involved this to my day to day job. Is that people tell you what you want to hear. When you ask or simply lie yeah. I try to take them. A positive spin on folks say they're just trying to please after all you bought them lunch right but yeah either way I ah sort of colors the the material every time and so he says I was pleased to hear lily almost dismiss the the subject comments like yeah. No it's true true. You put people in that situation. They're going affects the outcome so dramatically. It's better and that's what I love about. The show that we did with low he was where he was watching Ching. People use the APP. It wasn't actually using the APP. It was watching their patients expressions right so the real behavior rather than the sort of focus group and that to me super compelling for the first time. I don't know if I mentioned this in the show. I can't remember but the first time I heard about the Red Green Common crossover think think is I had I used to belong to this community chorus and we had a choir director who is would rehearse he'd play the piano and he came in one day with one red sock and one green sock and and and a friend of mine who is clearly a lot smarter and older than me said that's really funny again. I said why he said because red and green is very common color set colorblind people tend to mix up and now I'm wondering if the guy was colorblind or if he did that on purpose right because Christmas thing red and green or did he did they were blackhawks. That's a good question. I don't know I can't remember. I was eight or nine right Davigo Davigo and there are you know there's three different color receptors in the eye but there's also adds the occasional rare genetic mutants that has four a different color receptors even could see more colors. They can discriminate the differences between colors even close that is so cool sounds like Geico it gets it gets weirder. Wait till we start talking about the Mantis shrimp and it's got even more all I know about the Mantis shrimp yeah that's that would go so Paul. Thank you so much for your comment. A copy of Mexico buys on its way to you and if you'd like a copy go by right at comment on the website at dot net dot com or on face but we publish every show there and and if you were to write a comment there and I read it on the show. You'll get a copy music of and definitely follow us on twitter. He's at rich Campbell. I'm Carl Franklin. Send us a tweet and just stop singing. Please song wasn't so bad dancing. It was pretty good. The whole thing was pretty good. It was amazing. Yes I did WII. It's ten minutes long yeah right and so as soon as as soon as I found it I started was nowhere making my way through but I watched the whole thing. That surprised me you. You know that you not that easy to get my ten for ten minutes. Well all right well. You know we're we're waiting patiently for somebody to do dot net rocks the musical but until then that's it's not going to be me. Let's say that let's bring on Lily. Lily Dart is head of designed systems for Lloyds Banking Group before Lloyd's she was working to transform government as the design director for the Department of International Trade. lillies worked as a front front end developer designer researcher in product lead over the course of her career. She combines technical knowledge with user focused design and research methodologies to help organizations commiserations solve difficult problems and deliver more for their users. Welcome back to the show Lilly. Thank you very much for having me back. I don't believe twenty sixteen gene that was I don't remember what tiny sixteen looked like it was February. I think we recorded in January so the three and a half years. It sounds like you've done a bunch of things in that. I've done things I went to the top of international trade and I was just at the beginning of Brexit. I didn't mean to be there in a government department at the beginning of Brexit doing but yes I managed it saw how so I did to us about that was pretty intense and now I'm. I'm doing design systems interior design systems the biggest can ABC say it's been quite different to the last time I spoke to you and I believe is still freelancing and kind of wondering around during my show contracts freelancing the government work. I don't think there's a big contrast yeah right much while I was freelancing in government say their name I kind of I'd done a lot of government before a- actually it's more of a it's more unusual that I've actually gone into banking because for a long time. I said it was so so I'm GonNa tend to actually everyone's very nice. You were surprised you're well paid job. Why thank you yeah right right a well paid job with Nice people. What more could anyone hope for is awesome. Well this topic sympathy versus empathy. I'm really curious as to what is going on here so I guess we'll just going to let you introduced the topic. Show this came about when I it was speaking to someone from an organization that shall not be named and they were telling me in very excited times about how they had embassy pot pot lab and what that meant to them was that they were GonNa do a little royd shy around different business with some stuff that might help people able to be more empathetic so they might have goals that would help you to on what might be like to have cataracts over gloves that restrict your range of movement and so you might then what feel flight to have some kind of physical disability and a series of tools like we've been using. I'm to help people to understand what different disabilities might main in reality for years now that they've been around for a while but this concept onset of empathy labs is newel and the thing that really captured me about this. I know that they've been doing it because I think it's an important piece of inside anyone who is designing developing but the when I asked him about the diversity in that teams in terms of actually representing some of these lived experiences aloe absolutely because to me. It's much more important piece of the puzzle there also was You know what we're going to think about like two out of sight out of mind out mind really and genuinely. They felt that by running these empathy labs is unsee POPs the they would in fact able to in some meaningful way replace diversity in that's not the first time the I've I've heard this and and it drives me a little bit loopy and that's where I think for me. It comes into these three categories which are embassy lost everything into empathy assay but actually an empathy lab doesn't really create empathy. I think it great sympathy lived with disability. Then putting on a pair goals for twenty minutes is not going to help you understand what it is like to exist with. The disability is going to give someone situation right and it's going to give you sympathy. It's GonNa make you go. Oh Wow that's actually not hotter I again. It's gotta be the actually spending a day you know waking up seeing that way and trying to make a meal seeing that way twenty minutes in a lab is not going to walk you through all those challenges ages and and just that sense of this is every day absolutely and I think if you have a disability then than dwelled the systematically against you right. It's not designed for an even the idea the u being able to take the gold goes on and off for most people with disabilities is not something that I can do and it's not the you'll suddenly looking at a computer screen a guy who are in the clearing Larry. It's actually the everything looks like that. All the time I am near. It's not an abnormal for you and all of these things off things here. That really understood them. When you understood something related to you would be talking about embassy but actually in Mesa these. Which is sympathy a an actor? It was kind of three grades of this sympathy on this empathy. Another is actually lived experience and that's where the best in teams comforting pool. The kids ended on the scale of sympathy experience lived experience. Is the stuff that really gives you. The insights into people may be experiencing things so it's an interesting thing that I keep on seeing people confused because they talk about empathy sympathy sympathy I kind of miss out the about lived experience right where actually that's a really critical thing. We need to be baking into teams to make sure they understand the ranger. The we all do different things so do you I dunno make them use your software with you know as has it is to to get a sense of how bad it so that they feel bad for you know the people that are using it. I mean how does it manifest itself usually yeah so. I think there's nothing wrong with sympathy. I think it's really important if you are in a privileged I wide passing who has lived with disability. It's important that we expect to you if you were driving. Zinar develop heart's on the way experience youtube today's kinds of experiences to to help you to say that actually the experience for you created is hideous and maybe should think better rewarded table and nearby equally. We need to be thinking about will how will we representing these these three groups of things in all teams because some sympathy that's great. We've got to work to make sure everyone at all in all team is sympathetic to different situations we see and hear empathy is recreated wine nine. You have lived experience but not directly related to the sing that you're talking about so for example. I have lived experience prince from being an ambulatory cheese. Say That means the when I was younger. We'll check for a while but I could stand on rounders can do that for very long. Distances instances so in between those bits and that means that I still can't really understand what it's like to be wheelchair ninety ninety five every day every day of the week every moment of the day right. I saw sunlight because I could stand up could will steps if I needed to write but but it also means there are lots of things inexperience which can be mu apathetic at towards people who do have have lived experience. I understand what it's like to have people. Look at you funny or not. Look at you address you. If you're in a wheelchair Graham I understand elements if experience ranked to through that I can't humby empathetic tools that situation because I I have something in my real life that I can relate to it and that is part of what we want to be. Building in. Our teams is right. We want to think about the diversity of their experience and how we they may be able to relate to relate to two uses that they are servicing mm-hmm and then really important actual people got lived experience. If everyone in our team is male white Middle Hall then actually the best we're ever. I'M GONNA get out of that. Team is sympathy Merill empathy and no real lift experience to be able to contribute into into the mix into the design. Mex- into the development mix into the mix and what I hear people talking about at my man is is when they call empathy which is actually sympathy and not very much thinking about. How do we really represent all uses and not just for the sake of diversity because there's a lot of people who know that they need to be. I've I've asked don't really understand why they know that they don't have enough women at conferences or they don't have enough women of color that conferences. It's all they don't have enough wear than tation in that. This is a problem but they didn't really understand why the answer is often because actually you don't have outlived experience in your in your immediate area and hence pronounce serving people in the way they should pay down and we need to make a clear definition of sympathy and empathy how people get confused between the two yeah. I Matt so that's a good question. I think that it is a bit of fuzzy line like I think I it's always gonna be can I claim empathy is the question. I think it's it's one as a designer at everyone wants to say that they all been most empathetic designer. They were what college to be on. It is a pride right to be able to say that you are an empathetic design and I think the positive what we need to do as designers. His people is also to be a little bit. 'em Humble about our experiences I I cannot possibly understand the experiences of a woman of color because I'm not a woman of Color Parade have my life that will relate to that the hair people being open and honest enough about that. I think defining empathy can be tricky in the sense because we want to say well. Of course we condemn size I of course we can't stand someone. Else's opinion experiences lived experiences but in reality I think often we dine have the framework for an often in western that we don't even have the framework to know that we have the we don't have a framework shop makes sense so so empathy obviously being all. I've had that experience I can relate in sympathy. Being Oh that sounds terrible. We should talk to you about your needs some more or forget about it. Now I say so sympathy. Yes absolutely that's a bad thing. I can see. Now that your experiences it must be really tough. I don't want to support you better not but I have a friend my understanding you so it sounds like that you've had some interactions in meetings this with with people not being heard because of their diversity perhaps yeah. I mean I think that is AH anyone who has a diverse background. He must pretty much that lived experience right. You know I think it is very very tricky to make sure that everyone has an equal voice in all conversations and it takes a lot of hard. I work from a organization. If you'll working it takes a lot of cultural commitment and I think that is why things like the the end and with the labs in places city in place of thinking about how you can make the most of the voices that you already have is consenting because it comes from a hey ahead space that we can just accept the people we already have in the industry the majority of white male groups that we already have industry and we can just like show them some stuff and make it asset fool them to design and deliver for a wide range of people so what's a better solution than empathy labs abs for bringing about empathy on behalf of the team. I think you can bring about sympathy on behalf of people. He didn't have a framework to experience those things but I don't you can bring a bow empathy. You have to make sure that you have more than one voice more than t voices it more than three voices contributing tool jeff sessions. I think a research is an excellent place to start. Obviously that's what we were talking. Rat Lost Lemon Twenty sixteen. How do we do the research so he needs to be able to really understand. Our customers isn't important thing but also it's difficult difficult to interpret that research in a way that is realistic if you are any from one background if you have one set of experiences you will miss things of the thanks say and if the was a post valley's recently there was an article saying that it is now believed that reason reason that nine eleven happened was because it was not enough diversity in the CIA teams who were looking after yeah they they saw this man they saw Osama bin Laden they saw him in a cave and they did not think that he was a threat could imagine that he was a threat white. But will I missed what what are the religious overtones to mason very powerful within his country and that was because they had primarily white male middle class. The people working for them is report now sentence so even happier surgeon even that they had the insight and five of them they actually couldn't interpreted in a way that was meaningful because they did not have the diversity of experience within that teams to be able to see so. I think that is the conversation we I need to to keep on having it's about do we have those aren't do we have if we have the voices already had and if we don't have the voices in our teams to provide kind of depth and bracy of experience than how do we get them that but again. I will say thank you is about being humble and knowledge in the actually we con-. We can't do it all right accountable then they experience of everyone and we need to go all the way to to seek to understand them America's on what about bringing people in from those communities to to talk to the team. Is that going to do anything. I think it depends on how your team approaches. It's it's a great question but I think it does depend on on Hal on our to preach I. I'm not obsessed I when I walk around saying things like you have a team full of white middle class men on that might be appropriate type acidy. The Ion risking asking about reaction often set in grapes will have about reaction to saying to me saying that maybe if you frame it in terms of bottom line you know that's something that everybody can understand and it really does affect your bottom line because you're you're software is going to suffer. Your usership is going. I'm to be subpar and that means that you know it ends with less dollars right right yeah absolutely absolutely and I think that is m a peaceful place. It bring it back to but there's also a lot of very entrenched feeling around this right. It's very emotional. Table is very emotional to head. That's a designer. They may not be able to be They may not be able to be representative united people face hoak wrist bands and and this is where concerned one. I don't see much. Sheila say in the industry uptick in design. I don't see many people having actually we call understand this without. What's this is scripted voices and and and I think we have to really lean into the the we have to go away way to find this is this yes we can bring people into and I think sometimes that will be received well and sometimes it will make a real difference. See Grapes sure sure why because sometimes people are really entrenched in these opinions you know. Maybe they feel it. They're being attacked for just being they are right and that's that's a common reaction when you talk about diversity and I think that's a pretty universal reaction as well right for minority groups are am feeling. I'm pretty attached and when we speak to majority graves about about you our experiences day today majority Greece phenotype to the it's very easy to to get into the standoff right in but we gotta keep on talking about eight and that's sure do yeah and there's nothing wrong with being a little little uncomfortable to places. He looks like is when you're not uncomfortable about anything. If you're trying to build a piece of software that is inherently uncomfortable process who is all sorted out it would already be done. It's not all sorted out right. I'm going to interrupt for one moment here for this very important message. Hey this is Carl Franklin Franklin and this is Richard Campbell and we're going to be hosting the Dot net developer days conference in Warsaw Poland October Twenty third through the twenty fifth developer. Days is one the largest events in central and eastern Europe dedicated to application development on the dot net platform. We'll be recording a number of shows from the conference and hanging out with you so go the developer days dot pl and get your tickets now emmer back it's done. Iraq's is Richard Campbell. There's Carl Franklin locking the Lily Dart about sympathy and empathy in software and I think you implied this in the first half Carl but let's say more explicitly about. Is it more important to build a diverse team in building your product or do you simply have to involve a diversity of people in the casting or utilization of the software. I think that's a great question for me. I think the single most important thing you can do is build. I've asked him because even in the best reality that we have were doing usability testing once a month maybe once every two weeks right in an agile environment that means you won't making design decisions development decisions every single day an hour on the plane them as well but you're actually happening in front of people maybe if you very lucky twice months and even an appropriate like five people say you're not really representing your audience. I mean that being said there's no perfectly diverse team. I can't imagine you still going to have gaps in your diversity in some running back. I think I think for me. That's having a having a good solid. Level of diversity is made the the difference between empathy and lived experience right because you're right. You're not going to be able to cover lift experiences in that team but if you have a team with a broad range of lift experience you more likely the in in a situation they will be able to have treated embassy that uses or customers my experiencing any given time in when you limit yourself to one or two groups of lived experience than your the likelihood that anyone in your team is going to be able to be treated apathetic to anything that will be is is pretty slim so I think it's really being a being. It's really about being able to say actually no we con one hundred percent citing. The Wall. Customs are experiencing cool secon but actually in on working with billy and he is a gay man and hence. Maybe he understands better. The experiences of the teenagers teenagers that we have on our website mayor maybe he's he's more likely to have experiences the closer to that enhance he can be more empathetic at whereas if I only have straight white men it's Kinda unhappy tricky add to get them ready on stand while they quick quick kids might be going through the with customers. It occurs to me is sometimes it comes down to not. Only you know a social group or a lifestyle or whatever the diversity is but also technology you know if you if you're talking about young kids you have to hit them where they live and you know. They don't live on facebook doc. another example that occurs to me about technology is the classic in the early days of Microsoft Chris soft you know testing everything on their local networks right and everything's fast and Zippy and then we get you know out in the wild back and I'm thinking back in the nineties when we had dial up and things are just completely slow in crawling or you know just making assumptions about the technological resources that your customers have is. It's the same thing right I mean. We don't do that now so it's just another barrier to a user using your software and it's just now gone into the realm of the the social group now. I think that's absolutely right now and it's one of the other things I I see quite a lot. Even from people who will meaning I mean I worked for Lloyds Banking Nikkei now and we do quite a lot of work on. How can we really understand how we can make our customers better off than take money from them helped me make sure would keep money in their pockets right and and when we talk about. Lemon Congress is one of the things things I hear most often. Is People going well. We really just need to stop them. From buying an extra coffee at starbucks and thirty said that out loud also people have sent that to me announce we will pathetically typically saw this at one point right but that that is bad real real way that they understand the the lived experiences. Oh low-income groups is the actually just out of control the money and if they were more in control it would be okay. There is around what actually happens if you're living in poverty not every day but if you're living in poverty you actually lose. I key points because it is so stressful right. You're asking people to worry about whether or not they getting an shit. Stop Cuffy the and they are able to about tomorrow yet because there are so many things on their mind great example. It's incredible because we don't have as banks we feed people come from lower income backgrounds and that's one of the things that I'm discussing team. That moment is is something that we can do to make show the way because many people intact you know. I I've got a couple of friends. CD confirmed quite low income backgrounds. They often feel out plates and I'm I'm John. How many Tripathi for for what I experience has been like I do want other people around me to be able to help inform or guide my hand. Even if I go to use your sach and I sit in front of someone who is low income listen tool. It's very easy for me to filter inflammation through my own experiences in my in prejudices an away to get around is by having someone named the is Paul. My team is actually a a dime being such an idiot. I think I think you're hitting two different pieces here. That are wildly important. One is that the empathy of your software design of have we looked at a diversity of people using it but the other is die. The diversity in your team keeps that diverse thinking king in your head that it's that's what's always there becomes part of your routine to think about diversity as long as you don't have it in your team. It's not pressing on you all the time. It's an external thing rather than a quote lived experience very peaceful eloquence taste of lime saying yes. That's my friend Richard but it. I think you're one part of me thinking well. How can I ever build this diversity diversity that can answer those questions like well. That's not the point. The fact is you build a verse teams that diversity simply a heartbeat inside of that team and then you can look at your software say. Where are we missing out on. Certain diverse viewpoints absolutely absolutely right absolutely right. I feel that sense of it. Being heartbeat is absolutely perfect. It's not again. We're talking earlier about what happens if you bring someone in and they start talking about their best deal this talking about looked experience with actually that sense that you might bring someone in and it might be an uncomfortable conversation that on about level of discomfort doesn't happen in teams teams that are already device because they're ready driving after they had they spent enough time and I think there's no way around this except time to the point where at Pat so-called uncomfortable conversation isn't uncomfortable anymore. Yeah absolutely or at least you embrace the discomfort right. I think maybe that's mainly the difference. I think a lot of people at an well-meaning guys tacky will come to me and go identity. I'm doing this. I want to be more. I'm tracy finally. Would it be more diverse but it's making uncomfortable and I think I've messed up near and actually I usually say well if it's not uncomfortable it's not working during abruptly right. It's gotTA perfect comfortable raising the differences. When you're more experienced kind of addressing these issues embrace the the discomfort you have that moment of going. I pointed at me. Huts If has that means that probably I do have prejudice over I have had that and if it has and it's working it means you're actually addressing some of the the prejudices programs that you have underlying your psyche. I I don't mean to equate this the same but I want to equate this to say it a- As a similar experience of tate a building a devops practice inside of an organization part of that is letting people publicly fail like like when things go wrong we talk about them and it's very uncomfortable process for some organizations but they keep doing it until he's never going to be fun but you're actually elite. Get good at it that and plus you create this safe place to have this conversation so I mean I think the part of building a device verse diverse team is sticking your foot in at once in awhile is saying the wrong thing but then a mechanism that repairs that where we do we do acknowledge when we you said things wrong or done things wrong and then apologize and get better at a we do this all the time in other mill news right in in work and in technology all the time this this is just the way it goes. You know you you make a mistake you fix it and you move on. I mean we're we're already used to doing this as developers. We're already used to feeling uncomfortable in fact like like you said. I put it another way. If I don't feel like I have no idea what I'm doing at least once a day. I'm not learning anything yeah. Absolutely absolutely I mean besides just recruiting to build a better team. What are the mechanisms you lead. This conversation off with empathy. Training is not a particularly fact. He can't stop there. I hope that empathy training start actually worthless. It's just like that's only the beginning of. How do you get better at this yeah. I think you're right after training is definitely not it's not wetness. It's important it's important wouldn't that people have access to undo understand more about the experience of people because understanding sympathy. It's still critical. I think the main thing we need to be gearing towards is Brady about all practices and some of that is about thinking Catholic about these sounds that we think we're hiring t the kids very often used standards is an excuse to not hire people who like us but but I think we'll stay when you have people in the team and we've talked a lot about creating safe spaces and safe spaces to be able to fail and actually very often the problem breath all safe spaces is that they all geared towards majority grapes they are geared towards what feels safe for majority grapes and actually when a minority group ground fails within that context they'll hit harder than than the the people who already in a safer position so I think the really hard when you have to do to make sure that would dime half more women people of color come into our industry and leave. Steve which happens on an exceedingly regular basis. Yes I'd have these people come through the pipeline. We do have nothing then we have some but they commonly the leave and I think the real hot weather that we need to be doing is about making sure the safe spaces that we create all safe for them not just safe ossis. Oh also white fakes at not decipher man not just say full strikes right like we need to be making space for disabled voices and Quick Boise's voices people color and and right now you are even when we talk about devops is a great news. A great for example is that when you have a coach out the accepts failure. It's always individuals right. It's always the decision of social group as to whether or not a failure failure is acceptable. It's kind of joint to Mesa. You will build together and when you only have a certain type of person listen building that mess than it's really easy for new someone who doesn't fit with that body type experience to to fall outside of that and to be punished unfairly and he's married seems to be a safe space so that to me is really about making sure you have people on our grounds with diverse lived experiences in leadership yeah. I is an easy thing to do when you're not worried about whether or not someone is specifically intact or whether or not someone specifically a designer we spend a lot of time looking bounce the idea that it's really hard to find senior women design. Anna's FA- leadership but actually if you had a senior at Passan who could be a woman and put that on your leadership team by already the voice of a different race in if you can can you give us some examples from your experience of problems that were were sort of blind we teams were blind to and when pointed out by you know or or diversity was embraced the they fix the problem. I think one of the one of my favorite ones to talk about was working for a housing association so everyone they had two bits of that business one of which was government funded housing a Momberg which was shed housing so excited slightly different. Williams says we working with the government funded housing portion and we were trying to work out. Why the was this bug there? There was a carrying where people can access their accounts. We built a system where they could log on access their accounts seeing what renders gave myself which was usually paid for by the government vigneault ways see if they had any charges on their account and songs. I also pretty critical pieces instructors will and we had this this one getting being reported in. We could not kate kidnapper hit. We could know what was happening and eventually I think we we actually went to someone's house to try and find out what was going on to to see if we could see the okay said and they accessing the Internet through the the browser on their xbox because that was the only browser that they had access de connection but it was not all knew they had very old fine fine so it was all through their exports and the reason we can replicate it was a case we have this new way to browse ad that was some version of Microsoft something or other only expo. We obviously when testing for me there was a whole set of things around. We Lance Am Meer. We ourselves to spending a lot more time. Actual people eat service in that instance the holiday thing around that we you were about how people accessing things you a a loss of advice fakes were any accessing stuff on my mind because they did not have access to desktop that the Internet was very unstable. There was a lot of day to day thinks it just would have never come to me and didn't academy and even near where the problems could comparably not they did not had to anyone on the team because we will rounds and a if I would if I was replicating project again. Actually I would've done it together if I did not have someone in my team and he was from allowing combined and could understand some of these experiences as I probably would ever Powell customers 'em to meet with US repeatedly and pay them for a time to be able to to help Alan some of these things and but more regularly than US research a more like actually you are now a subject matter expert and we're gonNA come on with US team as we sign these I am yeah which is is in a way that he can address some of these problems. It's really about dedicating that time in to make sure that it's not just a month yeah the challenge. There is actually figuring diversely enough to even know who to recruit. Oh I mean yeah I think I think that's a good point but I will say that this nope. I don't think it's not a big staff right if we look at my teams. It's not like they have it's like they're all at the the if we look at my steams it it's not like they already have a decent baseline of diversity in them right busted invested. The time is innocent in the last ten years in my career on a very frequent basis I have been the woman insane in a white woman granted. I'm unclear and disabled people at night when they hire me they find out ya I am. I am not actually the most diverse representation an and also not be anymore and so I think it's a big we're not talking about a big step for air with not to outgoing from you have a lament to suddenly so you have everyone it looks like about some odds we all saying actually got to go and actively go out of your comfort science to hire people that he probably it's going to take a few years visa. Get your team space. It should be if you're not doing it. Not a joke and I would say that you now don't think like you is really important and it it may it may have less to do with you know race creed Color Sexual Orientation Tation in May have to do with language it may have to do with technological disability that that kind of thing you know blind and even to the earlier point or income level are income level right yeah yeah. I I think things like income often ah necessarily to do things at rice but they are also often to do things I- rights and I think they all they all looked as as important pieces of the best in the social clause or founding the the weekend people have as Lipton as important and by will say just reading. I wouldn't underestimate the idea that actually trying to get your team looking like a pen. It's not it's not a bad idea. That's a good place to stop Yup. Yeah I see no downside to that actually write that a except that it takes longer to recruit like it is more effort to recruit a diverse team especially when your team's not very diverse like at the beginning of that is probably the hardest time absolutely I can good point in their battle is making sure you have people in leadership positions visible people from diverse backgrounds in one of the things that people from lowest backgrounds look for when they are looking to a new company is what does the leadership in like NFL is all in a single color the older single gender that is an indication to spikes that it's probably not safe ice debate right so it's people do their research and I think often underestimated companies. Come to me then why can't hire women might while it's because you're your old guys and it's a little guy sang things. Women are not sure what kind of armament and Wilkins say when on the Fast Jawf they don't necessarily I want to be the icebreaker the guests to experience all of 'em bring people up to speed with making a safe space sure spent a lot of my rating that people don't want to because it's not very safe place today. It's also not very productive. No you actually odds. Are you had other goals for your career her than educating a monoculture about some diversity and safe spaces. I actually want to work on something else. In Writing Cohen got a lot of us who are and women taking women Color de gap pigeonholes interface not dame public speaking. They get pigeonholed very quickly. Could you sell his all about the best thing and we've done enough. Women in tech shows that are really. I really don't even want to do another like I think. It's all been said now. Just go well. I think we've done white women in tech. Shays right there. It's interesting interesting point. I think you'll see this in the past and they still to this day. Aren't there was a lot of representation for women in Tech Pat mastel not enough for us to have fifty fifty and about seeing is appropriate but actually we still now women we often take the at take care of women of color could be saying Herbie authenticity much more interesting the way and say that there is a level of mindfulness. Oh for all of US involved here. Let's just call it the diversity in tech and leaving it that it's called. Yeah Lilly eighty resources you point people at that are that are struggling with this or want to be better at yeah good question. I think my my kind of standard guy to baby stab is. There is a gendered job. The Gender Language Checker full job ads. I'm written boy my friend. Capt who is if you search full agendas agenda at nine job ads. It'll come up in GAINESVILLE FEEL DOT COM the gender decoder for job ads so if you pay Joe Joe Biden style give you a sense of the kind of language that you're using as to whether or not being ended in what you say say. I love performing than actually am women are tend to find out the case they didn't want to be. I think competitive environments. Let's not old but some goods prompts that help you think about the the way of describing your environment and and and also just how other people might read the things you're saying. It's already starting point. I bet aren't you the exactly right right exactly right and I think in general my my biggest resource for this is the thing I recommend to everyone is that they gallons into and they follow bunch of people that violet light them and when they have urged to get angry at people for saying something that makes them uncomfortable show mouth on the listen McCarron listening an emmy or make a point to have as many different groups and voices on twitter as a candidate and it's still yes are women and I am quit on disabled awards but it still gets me sometimes at a woman of color will say something about why feminism and that will upset me because I am white and pushed her keep on trying to land from that rather than kind of sticky my origin and Craig problem as one of my biggest single ways ways to learn about other people outside of work and outside of China kind of creating a culture but it's a great space to just have people talk about what is upset. Remember people to relative experience so yeah. I think that's my that's my kind of big resource beyond I think the loss of three lots of stuff around about how'd you cry space and how do you make sure you are improving a pipeline in advice around this. I think the reason that it doesn't doesn't land with people often is because I really think other people's voices and twitches a great place to start with that today she said listen so maybe listen to that for a couple of months then going look going again and see whether or not he your opinion has changed on the way that you purchase different very good lily. What's next for you. What's in your inbox. Oh good question. I don't Nice I'm Dixon talks this year on design systems. I have been running a design system at Lloyds spanking great say this Hamis in the industry to everyone is talking about and I am now having spent a year kind of gang my my head into the problem and actually she building and relationship and in Lloyd's now open my had Al on starting to talk about my experience so you will see me around aren't officially at. Uc me around conferences in the U. K. Two experiences grapes and heedlessness. You uncommon great awesome to talk again lily all right. Thanks again and we'll we'll see you next time on dot net rocks dot net rocks is brought to you by Franklin's net and produced by pop studios a full service audio video video and post production facility located physically in new London Connecticut and of course the cloud online at P. W. O. P. Dot Com visit Dr Website at Dot Net KS dot com for RSS FEEDS DOWNLOADS MOBILE APPS comments and access to the full archives going back actress show number one reported in September two thousand to make sure you check out our sponsors. They keep us in business now. Go write some code cenex assigned and and uh-huh.

Microsoft Carl Franklin Franklin Paul Michael Carl Franklin Richard Campbell US twitter snooker Mesa Pat mastel Lloyd Bill Gates Franklin Brexit Brown Geico developer NBC News youtube
Machine Learning in 2020 with Zoiner Tejada

.NET Rocks!

1:00:13 hr | 11 months ago

Machine Learning in 2020 with Zoiner Tejada

"Welcome back to dot net rocks this Carl Franklin and this is Richard Campbell and Richard. Before we start today this is going to be a great show by the way I can tell already but before we before we start I wanted to formally apologize to all of the friends that received a personal email from me. That said something like hi, this is Carl from quaker hill. I'd like to refer customers to you on a line. -able. Please join. So I, call this the line -able invasion. Now I am ice align -able is a thing that's kind of like linked in right you go on it's for the purpose of sharing business contacts and trying to drum up new business with people that you might know you might not know you have a network that way right. But I had been getting these emails like my friends to Scott from me for months, and I've been ignoring them and. They started to become more frequent and the people that were sending them started to be a little higher to people you know on the list of people that I would like to actually do business with right. So I decided to take the plunge and when I went in a line of dot Com said to me. Well. Now that you're here you know would you like to invite your friends and I said, sure. So I think I gave it access to my contacts which I don't really remember it was all kind of a blur. Scotch involved I really don't know and maybe something stronger than say I really don't know. But anyway needless to say, I did authorize them to access my quote unquote contact list whatever that is and everybody that I've ever emailed ever tweeted ever facebook like got this message from me. I'd like to be able to refer clients to you or or whatever. And I got a lot of people coming back and say, Hey, Carl, this really you. And also responding to my emails as if like it was a personal email, they made it sound like I wrote it by hand. The number one hit on Google for a line of Eliza liable. The worst spam bought social platform of all mankind. Exactly I mean. I'm willing to give it a shot. You know the people that can actually go there and you know maybe we can help each other maybe we can't. But I, just need to personally apologize to anybody who's listening that got an email from me. I'm not going to be offended if you just completely ignore it. So that's my story I have no idea if the platform itself is any good I mean right apparently, it's good at getting my friends to think that I'm really more interested in them than I am. Seems very social engineering, but you know all any trying to launch a social media platform. At this point, you've got to get critical mass. So hijacking people's contact lists is kind of par for the course. Yeah, and I don't mind if they were clear about what they were doing and that there was going to be a personal message written by me at least I should have been able to review it. Edit it but so deceptive, not a good star. Yeah exactly. So anyway. I was talking designer before you got on and he got one of course he got one 'cause I had emailed him in the past yes. So Anyway I mean I might have one two. Maybe I'm sure he did Raphael Daily. Sorry. Entitled to respond to that. I'll have my talk to your I'm sure then. I'm sure and customers all the time. It just makes me want to write a website called misaligned able. Now you're go. All Right? How are you man house the dog house life units, Aspen feeling better he's moving around pretty good these days he won't go upstairs anymore. Still wants to hike, but he runs out of gas. So we got the backpack form so he travels in the backpack to, but he's still sweetie and he's just a little little faded. You know he likes kayaking I know that. I got him in the Kayak he I think he's gotten very far-sighted. He has a tough time seeing anything close to him. So it's just the eyes aren't working well now, but he he misses things right in front of him a little further off. So I don't know the actually enjoyed the kayaking so much as he tolerated. Yeah. But you know it worries me that he's willing to stay at home for a dog that normally it's like where we go, what are we doing? Why are we still here? Why are you such a slacker? Let's go right yeah. Yeah. Well. Anyway. Let's get started with better know framework. You know from the stupid CSS tricks department. Here comes bubbly what is bubbly bubbly is. Single page application that shows you how to do speech bubbles with CSS. You can customize them you can put make pointer triangle you can make. A whatever a half triangle. You can change the background color. You can increase the point size and then it gives you the little CSS classes copying near project. This is from firmly Veru. What's that? This is from leave rouge ghetto yet that's right. Had her on the show before cheese has the best CSS PEOPLE I've ever met well I'll tell you this is this is good stuff and I'll tell you how I used it. It's so simple but so easy and brilliant. so I think I mentioned blazered. modal did I not on better? No framework. This is Chris Saentis Modal Dialog Library for. Blazer. That's that's cool. Well, that'll be next week. Anyway modal dialogs and what's great about using these modal dialogs is the very customizable. They look like pop ups, but they're not actual new windows so you don't have to pop up blocker problem. but I needed something on us. You know blizzard. Modal in my applications, but I needed something that was a little more well, not window like right I wanted something that was just a call out bubble because I used it to do a sort of. A what do you call it like a walkthrough tutorial for new users of my application? You know like I put up a bubble and it's a little bit see through and I have some fake data and then I disabled all the buttons and then I, you know have a move next move previous stop the tutorial whatever, and it just moves points the different things in the application loads up different pages and then explain things so it's kind of cool in this fit the bill perfectly. And so that that's it. I. Thought it was great. I mean it's a great start. Your free to obviously take it and run with it and modify. To us but you know, yeah, I would defer to leave room any day of the week when it comes to dcss shift she says is the right way to do something believe it will it worked out really really well for me so I highly recommend. Bubbly. Awesome. WHO's talking to us? Richard grabbed a comment show sixteen, seventy, three, one we did with Danny Simmons and Gustavo Sorrows when we talked about the pros technology the programs, this is using examples such as integrated individual studio. It's part of their should have machine learning engine for taking intelligence to the next level. Nice. Can actually help you write stuff. There's a bunch of stuff on get help it was really conversation but you know every time you press against those sort of a topics we we ended up falling into. I don't know I would almost call it mythology. And I think I blame. Two thousand one space, Odyssey. Right. Nineteen, sixty eight it's the first time the where the rest of the world actually heard the phrase artificial intelligence. Yeah. Former pal immediately tried to kill everyone they were reading has off but certainly ill in the movies, it was our Clark who who authored partially Arthur descript yet. Right. He actually published a book after the movie. But. You know again. It's like the way the day I was introduced to the public sort of created this gestalt was that it was an enemy. And it was just a movie like radic rented an influential movie but still, and so rick has this comment from the show. He says, Karl please don't worry that Ai Code replace you automation is replaced people in our lives because it was automation only in the hands of huge companies. automations being put in the hands of the everyday professional as a one man shop as you call yourself recently it more competitive, not less. Michou narrating in artificial intelligence is not the enemy because it can be used by everyone. Yeah. The goal is to stay on top of it and learn with it like the computer itself. These are technologies that everyone needs to learn how to incorporate. Best Only General Motors has robots that everyone is out of work. I don't think that's true either. But when everyone has robots, we can all be at work because we can all use robots effectively very need that we have is automation for everyone and everyone needs to learn it. So long as we can afford the robots because we don't remember. The big. Win GM started doing manufacturing of cars using robots, which still involve people that yet but they weren't on line. The main thing to happen was the quality of cars went up and the cost of cars went down. Right you know that's why the a feature of automation is that perfect repeatability makes higher quality things right and. and. Makes it less expensive to manufacture over time? So is this always if you have now, that's not great for the guy who used to be working the line he ends up needing to retrain, but he can be retrained. Unlike a robot anyway I thought it might be it's a talking point for today for sure Yep. So thank you so much for your comment a coffee to Kobe's on its way to you, and if you'd like copies do Co. by a comment on the website, dot net rocks, dot com or on the facebooks because we publish every facebook and if you come in there and we read on the show, we'll said you copy music to by and definitely follow us on twitter I'm at Carl Franklin he's rich Campbell send us a tweet position. Absolute. CSS Joke for their CSS jokes I hear it. But I don't believe that the. Dot. Just a Mug with the text going out of the box, which is funny too. All right, let's bring joiners. Has More than twenty years of experience in the software industry has a software architects, CTO STARTUP CEO and venture investor with particular expertise in cloud computing big data analytics machine learning. His bio goes on and on from there but he. Say He's the manager, S- alliance, and so much more redes- bio it's to Hotta. Welcome joyner. Welcome back. Thanks guys. It's good to be back with you way too long friend and I got more than five years at least you. Re talking about back. Then it was probably Google analytics. Like Not Wrong The only bubbles we were talking about back then was the DOT com bubble? Won't tell me about that but that's The funny story is I, got my degree in my bachelor of Science Computer Science at Stanford. University. Throughout the bubble beginning middle and end I was there for the whole. Nice. Wow. For better or worse right yeah right. Both yes. Although other than other than the Silicon Valley burning down right now. It's it's still a crazy busy place. They're still tech giants like they've just changed names is another round of the that's right Yup then. Funny, what shifted you over to the machine learning side of things her like what? What was your moment they decided you needed to dive into this That's a great question. I'll start with the fact that I've always been a data. Guy Right. Sing, that got me into programming in the very first place was when I was in high school I had the privilege of interning out company with the promising name that digital sweatshop. Encouraging, really you would think maybe someone in the school system would have been worried about this internship but. Quite positive and they taught me how to do web development member coal fusion. Can I forget? which and what fascinated me most about building CFL was not so much. The Web APPs that I could build. But the way I could search through full text that I'm blowing interesting and so the data capabilities from the very beginning have been something that's always been interesting to me and as we've evolved in our capabilities, we've added more algorithms to the tool belt. We've enabled developers to use machine learning. And we've also come up with prepackaged solutions in Iras sort, of Ai. that. We can just grab and go. It's gotten to be a very interesting world. So several years ago I really. Evolved from my focus on big data into doing machine learning right? which is really a natural evolution of kind of the data science process right? What's fair the oil in the whole machine? It's the data, right? Yeah. Not going to do a lot of particularly interesting machine learning. Data to you see the machine learning side of things. It's just a straight extension of the big data movement in the first place I'd say, yes and they're very intertwined right? So I think you can't have one without the other right you need to have the data in place so that you can collect it. So you can refine it to can build pipelines that can continually feed your machine learning models when they're being trained and so that you can continue to retrain those models as life goes on in the world changes. Dramatically I mean march is example this year of patterns that are suddenly broke yeah. No kidding and. Anything that you've done in machine learning because change I, look at machine learning and. An AI. As a way to make sense out of data whereas there's a lot of companies that are data rich but insight poor if you know what I mean so so you take data all the data in the world is great but unless you know how to do something with it, it's worthless. That's fair. I would. Use a metaphor. You know what machine learning gives us in many respects is the ability to find the needle in the haystack with her decreasing sizes of needles. Wow. There was a time in the earlier days of like, Ole APPA data warehousing where we had this technology called data mining. Plying Different Algorithms data define exceptions at educations and like stuff that was essentially inge be interesting. It seems the same thing essentially as machine learning her how would you define a difference between the two? So the evolution you can look at it from this perspective. In the time data mining a lot of the insights that we were calling out of the data, we're rules based. There was some more human who is writing a four hundred line switch statement. What you mean, my whole career is that what you're talking about so Where we go with machine learning, is that especially when we get into the Other the deeper topics of deep learning You get into the ability for the algorithm to pick up these patterns, right so and doesn't have to teach the algorithm. What's interesting here right and what it should be taking away from this data. A human just basically has to say, here's the data. Here's what resulted. You figure it out and the algorithms learn to write those. Eight hundred lines which statements. Funny. I've heard it described that way that normally we have a pile of data we write a bunch of rules we get some results but machine learning is I have a pile of of data of inputs is set of results I'm looking for. Now go right the the they algorithm think he might have been at one of my presentations. Full. But, you may have borrowed that concept to. It's a very, very, well established way to explain I think it's a good one that we're now asking the machine to write the Algorithm essentially. That's right is the cloud and essential part of this equation because the other thing I think about what I think about the old old data mining days is we were very. A resource constraint and compared to today excellent question. So. Again with the with data being the oil of burning, right It's certainly one of those cases that who builds an oil says you know what? I'm going to stop at one well. Yeah, we have the same problem with machine learning. It's more. Data is generally better right and so more data means at some point we have to increase capacity and very quickly with the growth of data that we're dealing with. Extending from what we can run on premises to what requires cloud scale right, and the first thing that see in that shift is we stop using the standard databases that were used to write the whole APP databases, the relational databases and we go for simple we start exporting an all too flat files and we put it in this fancy hyper scalable storage in the cloud called data leak. And Rita Lake is basically. the place that we can collect all of this data that we can then decide how do we refine it and feed it into our machine learning models for training purposes. Cloud turns out just from the scale of the data that we want to be dealing with. Turns out to be pivotal to the whole process now. We've we've talked about data likes a couple of times here. How do you define it? What's different between a data lake and and I know blob storage or any other sort of storage mechanism? Sure. So I'll start with the data lake that I used was lower cased. It's The concept, right? Okay. The idea of daily concept is it's effectively a file system. You can start anything you want in there in any format. So, for instance, this is something that I think a lot of folks new to the date engineering and the data lake idea struggle with which is what what is the file format what can I can I join tables? Can I? Is there query? Do I write t sequel? So all of those sort of things are much simpler here. What we have in a data lake is byles. So these could be commissary value files they could be specialized formats that are more for querying Parque They could be images that could be bidzos it doesn't matter just. Right the difference is the underlying infrastructure is designed to be able to scale out to dramatic extent right effectively infantry. Right Right, the illusion of infinite scale ability is there and We're able to load it with whatever data and when we go to read that data, it has certain provision for us that enable us to read that data in parallel so that we can get through massive data sets quickly I that's the gist of the concept of the data lake. It's the centralized repository for all of the data and is there any structure to it at all? I mean since Ese or anything, but like does do stored in particular order does that any of that matters it just one big folder it does matter but you hit the nail on the head it's just a folder system. Effectively, how folders and files? Okay. So what are these folders like? Is there a hierarchy the vollers you can establish a hierarchy? This is one of those designed tenants that you kind of get into. Because if you look at a file system. As a database right and you want issue a query against the file what do you do? Well, you give path and it gives you back the file, right? That's basically the carrying that it can do so ineffective daily borrows from that same idea but it has some additional capabilities like I can say, here's all the files into that folder. So for instance, if I'm collecting data in the sense from across a period of time like my McCurry samples, the collecting thermos data that's streaming in from you know my nest device or whatever. If I WANNA get all the day I probably created a folder structure in my data lake. That is at the very top of the year than some folder the month than a sub folder the day, and then within that day I have a bunch of files where it's. A small set of telemetry in each file that's been collected within that time period in the day. So when is need to write very performing quarriers that say give me all the data for August twenty seventh right and without blinking detail engine can return all all of those files very quickly to me now is that because the folder structure means that all the all the data collect on August twenty seven years in the same folder. That's right. Okay. So it's just a time series it can be right but it depends on the problem domain I picked the time series problem with with the nest. Data. But right we're example if I was doing something with natural language processing, you totally different structure, right? So Well Karl we were talking about. My talking year bought. Let's Imagine I. wanted to build a Bot that automatically responded to the. emails. So I would be collecting those emails, shredding them into plain text and storing them in the data lake. Right could I put him by date could be you know I could store time series format but I might end up storing them differently by center right I might have a root folder that's Carl Franklin. I. Sorry might be under supporter of offenders but I'm not sure. And underneath that right, I have all of the just plain text files that have the tax extracted from the email. And so the folder structure could be completely different. Ryan if you imagine if I'm doing this at scale right I'm not just doing it for joyner but I'm doing it say as a service for the world I'm collecting all of these emails I have lots of requirements in terms of the throughput of the data on writing in. And the storage capacity right that I need to be able to have kind of needs to be less right I don't know how many emails align ables going to send on your behalf Carl. Sorry. Yeah. Well, we'll find out. I'm still finding out every day. So. In that case, you're sort of mailbox mailbox. Do you have all these structures in your data lake or did you pick out approach for any given data leak? So here's the thing that's mind blowing to most folks who are new to the data lake concept and that is that. You end up being okay with duplicating data, right? For second third normal form, mind blown were breaking all the rules. We're supposed to not have duplicate data in a database. This is an. Dr Cod, is rolling over exactly but the thing about it is we're now in a situation where what the data lake offers is very inexpensive. Storage storage is cheap, right? So what's expensive processing is expensive. So we end up doing is to reduce the cost of processing. The data in the way that benefits and reduces the processing time so Give. You an example. In the time series one if we had it sorted by year month day but it turns out we actually are more interested in aggregating the data by device like I wanna see all winners devices because. Wasting. ACL atrocity at home in San Diego California. The air conditioner running full blast We want to build a report that summarizes that. Well, you know going over all of those soldiers by not the most efficient way to do it. Right. You're going to read a lot of data that's not relevant. and. So we can flip dot right. We'll make a copy of the data will flip it so that owners. And then underneath that, maybe by day, we have his usage by you know month day and year hundred year month day underneath that. So when you were in guessing that data, would you simply just right? It's two location like your ingress mechanisms say needs to go into different folder structures. It's not common that you do that. You usually start by investing in one way, and then you nearing pipelines that take it from the raw form to the next sort of refined form right? So we often means duplicating the data. We often say that we have tears of refinement that sort of. Bronze silver and gold and sometimes people at Platinum for what right right. But they're just different levels of refinement of the data. What's the end goal that we're after here? The end goal is that we've refining restructured the data to optimize the type of queries. The way we're going to ask questions of the data downstream to improve the consulting time when you're doing that process, are you actually parsing data that point or you're looking at the folder structure to find this joiner indicator? Yes. Yes. Yes. Both you looking at the folder structure, the actual text in the past as as the contents of the files. We're parsing text files and calling it machine learning. I'd love this everything's great right I. mean there's there's some things here view like throw back to one thousand, nine, hundred, seventy s yeah. No I feel good. I wanted to thirty two point they'll be to fate right? That's. Good I know it's going. Stomach. Justice stop it. But I the fact that you would stage data like that is you're trying to, there's gotta be a constraint. That, that it makes sense to reorganize the data because there is a cost to not reorganized the data. And the cost can be it's just impossible for you to run that query literally like there's not enough cloud resources in the World Tan that question against your data sets volley where they intelligence, you have about the hierarchy of your data and some simple parsing so that you can cut down the volume of data I mean I would think when you sir talking impossible it's because you have exabytes of data. It can happen. With s fewest just several million files, right so one of the bugaboos of most. You. Mentioned blob storage but most blob storage solutions whether it's Azure or Amazon or others right is enumerating. Right there. To give you a file quickly. So you say I want that file, give it to me. When it comes time to say, here's a folder it has you know one hundred, million files in it give me the list you know it has to do past actually read all of the files through. Right their significant work involved in numerous hundred million files. So yeah, there's there's certainly problems that you can have that don't require massive scale just a lot of small files could do could do you in right just that that cycle time like you know numerous one, hundred million files to be awhile. Knowing the hierarchy to say, okay, we only only need to look at a millionaire and here's the hierarchy for the million we need. Exactly. Yeah. It's a huge impact. So then then might be helpful to understand. Well, okay. We're we're doing this dance right where we've moved away from a relational database but hadn't tie into machine learning what what's the value prop. Before we dive into that owner. Let's interrupt for this one very important message. have. You ever wondered if you could be offering a faster less buggy application experience for your customers with Reagan. Performance monitoring you've got all the information you need right at your fingertips to find and fix errors and performance problems across your tech stack down to the line of Code Reagan makes it easy to monitor the impact of your performance improvements quickly identify and resolve issues and see how your code performs in the hands of your customers saving you time money and sanity. Visit Reagan Dot com join thousands of customer centric software teams who use Raygun every day to deliver flawless experiences for their customers. That's Reagan Dot Com to get started on your free fourteen day trial. And we're back it's done. Iraq's I'm Richard Cavaliers my friend Carl Franklin talking to designer about machine learning and we haven't talked about machine learning at we talked about sorting file systems. Machine learning all of the file system. You know funny side story there, Richard. In the typical data science project where you're doing machine learning. The time is on the data engineering and not the model training right in, which is pretty much what we just did in this conversation here we spent the you've got to sort out the date. It's all about the data we haven't. We haven't talked about anything like cleaning validating either have we know we haven't, but we we should probably talk about the end goal because it straight more sense, right. So what are we doing with with machine learning where we're basically typically showing an algorithm, some historical data? And where either asking it to find patterns in that data that we don't know you don't see, but it's going to find them. Or we're giving it historical data and we said there are some patterns here they resulted in these outcomes. Can you figure out the relationship right? Right So you know simple example would be you know we? We seen in in social media. Sentiment is a is a favorite. Accent. Someone's typed is positive or negative sentiment, right? So. What we how we train such a model is kind of fascinating is we'll collect all of those tweets right as plain text. Then, a data scientist is gonNA probably have to do some data engineering to clean that data they're gonNA, they're going to standardize the format they're going to clean up the tax they're going to remove words that aren't helpful. Typically, they even do things like the lower case, all the text they expand acronyms. ETC Right. So there's a whole laundry list of. Steps, they take to clean up that data. And then. They feed it into a model where hopefully, they or someone has manually labeled each of those examples. Each of those tweets as this is a positive sentiment tweet this negative sentiment tweet. Right, and so then we show that list of tweets to the algorithm right and it starts to pick up every time I. See. Happy Joyous. Lovely exciting that positive every time I see hateful disgusting annoying boring. That's negative right and so it starts to understand a conceptual level like what are features the the aspects of this tax that were insightful in making that connection between the text and the sentiment, and the next layer that you have to understand is that well in data science and machine learning, we never work with texts we work with numbers. Always, work with numbers, these algorithms are almost purely mathematical. At their core, right so we take that text. And we converted into an array, a factor right you can think of it as coordinates in this and dimensional space. Think of the many parallel universes that we have. We've just identified this tweet lives over there right pick a place in your favorite universe. And that coordinate is something that we feed into the machine learning algorithm that aliens to say, Oh, well, it has sort of coordinates these tend to be the positive sentiment wants when it's over here this other quadrant, these tend to be negative sentiment ones right and so we're looking at really at the end of the day finding ways for the algorithm to sort of draw out dividing lines in dimensional space. Right simple example that that's specific type of problem in machine learning, we call classification problem because it's classified either as positive one or negative zero, it's classified as one of those labels but do you really get to the one zero is just a band of gray. That's a fantastic question. You're right. We work in tenuous number spectrum here. So we're dealing with decimals, Ri-. So right in its raw form, the machine learning algorithm will typically come back with seven point seven two and you're like. What does that mean? Well, you're you're you're the final step in your machine learning algorithm will probably be stuff does equivalent of rounding and says point seven to one? So. It's. Is it fair to say it's seventy two percent positive. That is a something depends on the algorithm turn to your interpretation, but right. Now, I'm trying to avoid lying to myself by putting too much weight on that because I think we perceive these percentages inaccurately that's true and that's often the case right and when people speak about their machine learning algorithms that that there's a lot of subtlety there. There's sort of a requisite understanding of probability which makes most people had been. Less and an. To even folks who are professional probability like they still have to sit down and. Your instincts trying so. Like point seven, two rounding to one. I don't have a whole lot of problem with where you get jumpy is when it's point four nine. Exactly. What's Right. What's what is your realm of neutral sentiment? Decide Hey, it's. It's a quarter quarter quarter something. Very simple Yeah. So the only round zero when it's below point two, five will around at one. It's above point seven, five union between we have this neutral zone. Exactly. But then we have to decide again it's all about getting results. We you know what? What does this mean like what how do we react to neutral versus positive or negative? That's right and that's part of what becomes kind of the business decision right This is not unlike in many ways, algorithms have an architecture not unlike the way you know solutions that we deploy in the cloud architecture or software that we design has an architecture. And the architects kind of reflects the business required. It's right. You went up time you deploy more than two servers. You want you want the sentiment to to to sort of have a particular direction a particular bias in one way or another because of the type of text that you're processing? Bill in the Algorithm. The Algorithm you do not want to have the same positive reaction to a point five one that you have to a point eight four. That's right but you know where it gets really fun. Double negatives. See you guys in about fifteen minutes. I'm just go for a walk. I. Knew this would happen. But You. Totally. And what you're really saying is miss classification right that that. When the limitations of the algorithms ability to identify things goes away because I would think sarcasm would actually weigh very heavily. One way or the other and to be completely wrong but you'd be completely right. Okay. So so and and I brought that up Carl because it's really akin to A. In your intro. The question on are we at the sort of state of? General. Intelligence right where it's like, okay the Algorithms are ruling the world and their overlords we'd just go I'll go home now. Right and you see it has these days issues with some things that are fundamentally very easy for humans to deal with a turn up very complicated problems with lots of trade offs for the Algorithms. And it's a point that I think is important to raise. Right There's there's several sophisticated tools in the artificial intelligence toolbox. That we can benefit from right and as developers we benefit from them in the simple way as they can just be API is that we use API that give us sentiment right have to any of the training process. We call API were done. But You know they're just tools in the toolbox that solve specific problems, but we also have to be clear on. What are the business goals in the problem and we want to be using the model? To the benefit of the business, like I also see the argument of Liar you building something that's already existing library right like e is you building your own sentiment analysis system, move the company closer to success or deploying the one that already exists. So it's a great question and I don't want to trivialize sentiment because the field of sentiment analysis is often viewed as as large as natural language processing. It's a very bust with lots of different nuance capabilities. Right? We don't just talk about sentiment in positive or negative. We talked about opinion mining. And we even get into argument mining right where it's like what's Was the chain of logic that this person follow to reach this conclusion I it's it's a robust area but in direct answer to your question Richard when we talk about why you might not use the off the shelf Ai Api, it's it's the data. Rights. Give those. API that you can get off the shelf had been trained against web data. So you know a lot of the Microsoft ones for instance, I've been trained using data from being. The sentiment it learns is based on the type of tax that would be prevalent in the web. Yep. Well or happens when you're in a business situation where the technical domain is not on the web medicine, it's manufacturing. It's. News media that's maybe not. So public, right I you anything government really languages. So deference clandestine. But I am thinking about it's funny. I was just reading a book a and talking about. How Efficiency reports in the military damn with faint praise. Like it's not that you told us said this person competent you would never say that it's always something so much more subtle than the to human who reading it in this military context says Oh this person's career is actually over but to two civilians like it sounds fine. And if you if you're analyzing if you'd build a sentiment analysis tool based on the outrage that is twitter, you couldn't read these things like you would not have been close. That's right. One hundred percent It's really this is a bias conversation. All of a sudden Yup that bias didn't come from the Algorithm Tobias came from the data. Okay now, we're back to the data. In the first half of the show, this is the whole problem. intermural. Yeah So don't count on. It's interesting before I used. This is something I've never had to do before. You Know How many times you looked at a chunk owed in get Hubbard said this seems to do what I need to do. But if you were looking at a sentiment analysts library that's been trained, you have to know the data it was trained on trying to really be able to assess it. That's an interesting problem. But it also means for me putting something like that out of the world. That's what you've got to lead West and that is the direction the industry's evolving to write. This is not just Oh, it's an annoying thing when sentiment analysis goes haywire, it becomes a problem with serious rule consequences as maybe the sentiment is used in, say evaluating someone's resume right All right. To hire no higher decision and the bias turned out to negatively affect candidates who otherwise have been. Fantastic. Right. So the data becomes a problem, and so the industry's going a direction of having these data cards that describe what was the source of data? What are system properties wears? It biased what's insightful to know about this right so that when you're evaluating the algorithm that and the model produced, you also know the data that produced it and you say, where is it biased as in? It's always going to be biased yes. There's always gonNA be some bias. The question is it a bias you can live with and certainly wanted you need to understand is is going to affect your data. Exactly or MAR partly factor results. Got Some things to think about here. It's really interesting at, but we're still you know. We've only talked a little bit of the machine learning that seems relatively simple. I mean, how do you know when you're doing a good job? Also good question. So the machine learning process itself is very right? So you train the model and then like a teacher in school evaluate the model how good is doing right? So you have. Your just like the teacher knows the answers to the test at a she delivers to her students right you as the trainer typically have the data that you know the answers to. Right. So you're evaluating how it performs against the known data set in some fashion right and you're giving it a score right? Did this this ninety percent in a or? Fifty. PERCENT NAFF. How good work where it's was its performance and their several different metrics that are used don't need to bore folks with but suffice it to say data scientists spends a lot of time looking at those metrics tweaking the models tweaking the data to get them to be good enough, and then that's what ships as the model. And so the machine learning model. and. So we talked about we train the MODEL, we value bottle, and then we deploy the Model I. We get to the model deployment. This is kind of where the lights up as dub task because we're taking this model, which is effectively a blackbox file. were. Typically doing one of two things. In the simplest case, we're just using that model in the same library that we trained in the same language like if it was a model that we trained python, we might load it back up in Python. You know from DC, realize it from disk and and use it directly in Python Code. But more commonly will end up doing is willing end packaging up that model as a web service right and become something that developers can easily use rice. We can when we're talking about adding learning. For example, we'll take the model will upload it into a repository that's managed by machine learning. And then we can deploy that model has a web service in to web services that are running in Azure container instances, Orca, Nettie Service of some. Really. High. Scale. Web. Surfing. Are the tools important here that we talked. You talked about daily theory generally but like this is your daily do something for you that makes more than just a foul store. And same for machine learning like were the word of the products planed this shoora. So you had the tools are are very important. If we're talking about is you're specifically your is your data lake is is the daily service, right? So it's conveniently named. So now we're talking about data lake with a Capital D. capital. And that does give us the capability to do. The the sort of scale out storage distributed processing. And they are adding additional. Capabilities for. Improving the query performance right of the data in the data lake signer. Have you heard of awesome gpt three Yup. And what are your thoughts about that? Awesome gpt three is isn't a great way to leverage the GP three model and what I'm most familiar with the GP three side of that. Because we do a lot of working natural language processing. So let's tell the folks what it is. We've tried to explain it ourselves last week but you could probably do a better job. Sure so I'll start with. GP Three is a model that you can think of trained on significant amount of all the world's web data. Right so think of all of the news that's out there all of the wiki media content. tweets, right anything that's public from the various social networks I collected into a model that has. A lot of KNOBS. It to put, it. Right we talk about having. When we talk about models in machine learning sometimes, we just talk about a simple line, right like the sentiments is really trying to divide. The data in two. Areas and maybe maybe we're so lucky that the data lands on two sides of a line. So under the covers, we have basically align member the equation for line weikles Amex plus be The ACSI is m is the weight right that we have to worry about we basically have. An offset. When we talk about deep three, we're looking at these models have. Hundreds of billions of parameters, right so they themselves are very complicated. And teepee three enables us to do things like. generate. Text Right. So given. Some seed text we can say. Carl Franklin is the best and then leave it and see what comes up with and it'll write a whole essay from that. It's Really Fun to do with GP three forever play with demos like with awesome here. is to see when it was last by throwing historical events at. Because it's learning from the news data right. So Do you put a question about current political event or? For instance. Or an election or something has a very clear timeline. You can see what it says. It'll come back with some pretty surprising responses, but you also see the limits of its knowledge I. It has encoded a certain amount of historical information is coded. Dot that. He was trained against in its parameters right? Even though it's not a database, it's not looking up data. It has learned these relationships right off as a continuous learning thing like shouldn't it just keep learning keep adding new data to its is algorithm or does it have to reprocess like he goes offline recreates itself with new data and starts again is yes and it has to be reprocessed and for things like dpt three with snacks that are these gigantic. Models right the processing time is non trivial superhuman. You I mean we're talking about serious hardware that's used to train these models That's why you'll remember maybe earlier we talked we might have heard of DP to when gpt was being released the group open ai that created it was releasing it in tears right? Because they were really worried that it would. Be, used to generate fake news. because. I generating taxed. And there are the rationale for that was the if we released the full power version of it with all the parameters, right then someone's GonNa Journey Fake News, but it's so hard to train this model it. So prohibitively expensive. It's probably only going to be the mega corpse and the nation state actors who could possibly do this. So you know, let's let's control the situation a little bit more so. Yes it takes a lot of reprocessing to create these models and yes we it collects new data it gets retrained against the new data. But it's not trivial, but it doesn't take a lot to operate a model. So there's sort of speaks to the advantage of cloud is you can harness a lot of compute. Free Training period and then shut it down. Yes. It depends on the model t three. Is Not super simple to run. It does take a little bit of processing capability. But you're right the amount of effort that goes into training versus the amount of effort that goes into operationalizing it or using it for predictions. is significantly less. You mentioned data scientists earlier. Are You these the implication here that you need to hire a data scientists to do this? The implication is you should have a data scientist on your team, right? Okay. A lot of this is is development. I I would say this. Most developers would be pretty comfortable doing the date engineering tasks right as we stop that's kind of eighty percent of the problem right where the data scientists particular skill comes in is looking at a model and asking the questions like how is this model biased? Is it really performing the way we're performing or is it just dumb luck that were happening to get good answers right now right that's kind of the skillset that the scientists specifically brings the sounds like I needed developer with some cynicism. Round. But also it seems to me the data scientists are incredibly hard to to hire these states that it makes more sense to grow that skill internally it does it makes a lot of sense to grow that skill internally in. To the industry's credit, there's a lot of resources out there. To help people get their hands on and start building that. Intuition and that understanding of what it means to data songs. Now I'm looking at this is a business owners perspective thinking. Do I encourage you? To take some classes because they've got strong data knowledge or do incur a and sort of move the towards data scientists versus. Taking having a developer move in that direction. So This joiner soapbox. To it man. Peers of responsibility for my statements. I would say. In this particular case data science has a lot more in common with development. I mean the amount of Python Code that you'RE GONNA sling is probably very similar Arca since that developers probably going to be more comfortable at least picking up the syntax and becoming familiar with the tools. Right. A D. will have a lot more of a learning curve to deal with because. It's more programming heavy than they probably were used to write managing one particular database or a couple of flavors of a database relic different forms of sequel but it does strike me that the personalities the most important thing is this is a real critical thinking stuff. Yes. Yes. Exactly. Right. It's it is critical thinking stuff and the thing about it is it's a blend of. Different skills, you ultimately evolve right? It's it's algorithm and algorithms analysis much like software developers are really good at. It. Had to do a lot of it exactly, and it's a competency with. A fluency with data, but depending on the specialization, the type of model that you're doing it's also you know the understanding of the statistics or the particular domain. That help you build that model that works right like I'll give you an example right when we talk about. Data Science in our perspective on a general right we have sort of like, do you remember Simon the Game Simon that you press the button trying to match they patterned adds one more for each round. Yeah and it just looks like a circle with four quadrants and there's sort of a circle in the middle right and. In the way we look at today, we have at the center of it, all these tools machine learning deep learning reinforcement learning, but the applications of those tools could be natural language processing. That's the sentiment could be computer vision like the what we need for self-driving cars or face recognition. It could be decision making like we're building recommended what product you might like also like to buy, but it could also be analytics right? We're we're predicting. A particular value in the future like what's what's the temperature wins this thing turn on or when we're classifying things right. So there's these four big buckets right and each of those are kind of their own subject matter I, you you develop a data scientist, a particular expertise in one or more of those areas, but rarely are you an expert in? All right. So certainly, not evenly definitely, not even have the same way that you know folks develop clients in browsers or develop them via windfarms forms WPF they're all client development but very different from each other. That's a great example Okay a jab when she died in one would argue you can't keep them all in your head at the same time like the enough differences between them that when you try and do more than one, you keep fumbling over yourself your knowledge of one in pairs the other. Yes and just like with software, right the pace of evolution has as fast all those. guys are keeping on top every on every show that are. Coming, out of seemingly out of nowhere same is true in in the SECO system. Well, I do feel like machine learning has matured in the past couple of years. We've had these conversations a few times. This cheer approach is very orderly that that and the tooling clearly seems to have. Gotten. More serious here that we have a lot of stuff that's already in existence you can take off the shelf if you understand, it's biases mostly about organizing data so that you can take advantage of any of this A lot of it has matured. The tooling is in place. They're still certain modicum of skill, and that's where you need to pull the data scientists in. Right. But like you said, big part of it is development right and I think you can argue you can help the DA's get into being date engineers because of their data fluency right the who they will get too comfortable pretty quickly once they get past the shock of. De Normalizing. Trying to break up the the knowledge they've already gained of the scar tissue they have. Yeah it's. It's unlearn some things right and after that, the software engineers probably can pick up a goodwill of the way of the data science learning to use the algorithms that are out there integrating them right the the code itself is Never Super Complicated, right? It's it's the implications of the code where the complexity UH surfaces right and I also see the this got to be a role for someone hears constantly bouncing against business. He's you're going to imply a lot of business decisions along the way here like just that simple conversation about sentiment analysis where where's the neutral zone? That's really a business decision is exactly right, and this is the role that we were talking about a software solution. We probably be bringing an architect right and so we do similar things Sometimes that role is fulfilled by the data scientist he's the one bridging the gap between the technical and the business domain. Other Times you really do tend to have folks who are like the architects right there once who are responsible for translating both ways. Yeah. I. Could see that maybe even call them a project managers just because they are liaison ing back and forth and they're in their often involved very early on. You know. What I would out of an architect is they built a few things like this already, and so they know where the pitfalls are Oh. Yes. They know where the bodies. Yeah where the PM Mindset is I understand that my company really well, and who are sort of gatekeepers of key knowledge and resources so that I can make sure we're making the right thing and no recognize when business needs me made it know who to take to get it may yes. Yes. But the skillset that we're talking about here is someone who knows how to ask the right questions. Framing the problem is probably the biggest core skill. Yeah. This strikes me is the kind of project that people get started on halfway through. Start over. Like suddenly realize we're asking the wrong question. Yes, and that's why it's right. No no no good data science project came out swinging in the first nation. Is that just because we'd misunderstanding the problem where we learn more from the data? What's the thing that makes us gear so hard each time yes. All those things. So I if I'm completely baffled by this conversation and I, just want to you know it's peaked my interest and I WANNA get my hands on something some demo some code something that illustrates the power of what we're talking about here. Do you have like the resource to go to? The resources a difficult one there's there's several resources. We we had some great success. We had an introduction to machine learning course that went live on Utah City we ought lights. Salutes. And we built that in in partnership with Microsoft. So dot was very well received so that that's one such resource, but there's a lot of resources out there that you know the key thing is. Get into the code don't get lost on the math. Yeah. Start running through the models right and in and in some ways you know if you're treat the you're learning like you're reading a book, Re set the priority to reading the book cover to cover and not so much getting stuck on anyone page because in the beginning, you just have to wrap your mind around the whole process. And start to fill in the box and how you do the the gap filling right is take the code samples that are out there and run them. There's no books that you can just run the co and step through it and debugged right as. I came out like a developer, right so the first thing I do is I grabbed the code and I go line by line stepping through the code and inspect the state of things right? And that is going to be infinitely helpful in your understanding. In many cases, what you'll find is while the math is useful to have a description south you really come back to it much later in the beginning, you don't need it so much to start building. Very good. So under thanks a lot. I was not participating as much just because I'm trying to hang on. You know it's complex stuff but I thank you for. Sharing this hour with us and I'm sure a lot of our listeners really. Really helpful. Truly my pleasure to be here. Thank you for having me on your show Great Talk Brad. All right. We'll see you next time on dot net rocks. Dot Net rocks is brought to you by Franklin's net and produced by PLOP studios a full service audio video post production facility located physically in new London Connecticut, and of course, the cloud. Online at P. W. O. P. DOT COM. visit our website is dot. Any T. R. O. C. K. S. DOT COM for RSS FEEDS DOWNLOADS, mobile APPs comments, and access to the full archives. Going back to show number one point recorded in September two, thousand two. And make sure you check out our sponsors they keep us in business. Now go write some code. CNN time. Yesterday.

Carl Franklin developer Dot Richard cloud scientist facebook Karl joyner Google Raphael Daily Scott Aspen
SEO for Developers with Chris Love

.NET Rocks!

00:00 sec | 2 years ago

SEO for Developers with Chris Love

"Welcome back to dot net. Rocks. This is Carl Franklin and Richard Campbell. And what can we say? We're about to go to London here pretty soon. Uh-huh. Yeah. Conference season begins again, and it's called. Well, it's cold for you. It's pretty nice over here in the west coast. Balmy forty degrees and balmy forty. Four celsius, right? It's five degrees here. So I don't wanna hear at gold. That's yeah. Anything below the freezing point of water cold? I, you know, I have something that probably both you and Chris would be interested in for better. No framework. So roll the music awesome. Aren't you got every key dot com? Okay. So you know, you have this USB key Richard that you use to log I've been using Ubayubay keys. Yeah. But you said it didn't quite go. All the way to logging you into different things. Or may. Maybe a you in Aspen windows, right or the other way around the new build of windows ten now you can directly log in. It's complicated. All right. So this is so this is McAfee who's behind this guy. And it's basically a little bluetooth chip that logs into windows. Your phone MAC, all your websites, your car and your house. Cool just by being in the presence of it. And if you lose it, you can remotely turn it off make it turn it into garbage yet take the code away, take the code away. But he showed a demo demos online at every dot com of just having it near your phone. Your phone just comes on. And you're in same with windows. It's not like there's a log in process. You just put it near windows and you're locked in. Right. Yeah. And it looks like it's the same for for websites and apps and things like that sounds like it's promising everything. So always the devil's in the details. Well, you can buy them. And I think they're under hundred bucks. Yeah. Yeah. So I'm going to check them out. Our report back to you love it. That's all I got goal. Who's talking to us today? Mr. Campbell grabbed comment off show fifteen own on January twenty eighteen over year ago. One Chris love we're talking about PWA's progressive web apps. Yeah. And a great conversation is usually come to expect. From Chris nothing less and Geoff Hurst said guys this episode was Purba. I got interested in PWA's having heard all throat bang on about them for weeks on windows weekly. However, this particular one cracked me up was with the mention of TSR that terminate and stay resident banging against trivia. At that moment, you realized three old guys talk about software. Right. And this. Suddenly I was transported back to be eighteen years old and working on data ease debase Lotus one two three. Yeah. Of the good old days. And I even laughed out loud on the train, which is not a thing. You wanna do if you don't want everyone looking at you like you just grew three heads. Yeah. Good old interrupt twenty one eight that was a great show. Thanks a lot. Yeah. Yeah. TSR's one of those moments. You realize lots of our listeners are as old as we are. It's funny that DLL's dynamic link libraries are actually dynamic because they can be shared in memory. Yes. Like TSR? So that was the evolution the windows version of TSR, essentially, well, certainly a sort of the the that idea. Yeah. The when we had to conserve memory, right? When that most important thing that was the whole thing about windows. What got me going over to windows. Okay. One driver. So you don't have to get a driver for each app for that printer scanner any of those things that they windows owns a driver, and then when memory became insignificant, right? We just had more memory than we knew what to do with now. Now, the problem with security and safety because you can't have all these apps sharing one common Deol that that's otherwise one can bring down the other. And that's guess what? That's what happened. That's the -bility. That's what deal L hells about or depending on one versions of the defendant other version version, which is working properly. But now everybody gets since then t everybody gets their own process you load up your own deals, and you're the only one that can use. Thank you. And aren't we on the way to literally you get your own virtual machine, and you get your. You'll get your your flowing. My mind. Oh my God. So Jeff, thanks comet a copy of music code buys on its way to you. If you'd like a copy music, go by Radikal on the website at Iraq's dot com aren't Facebook be published every show there. And if you comment there, and we read it on the show, we'll send you a copy music. Oh, and definitely follow us on Twitter. I'm at Carl Franklin. He's at rich Campbell. Send us a tweet. They open automatically nice coming up on my twenty thousand follower like next few days. I'm up there too. Crazy and is not. All right. Let's bring on Chris love. Again. Chris loves a front end developer for people in companies who are lost in the sea of modern, web and user experience standards. He has a quarter century of web development experience and has built a wide variety of websites and apps in those years in recent years immersed himself with responsive web design single page web applications web performance optimization. And now he's really into SEO which we're gonna talk to him about. And you could read more about Chris at Don Iraq's dot com. Welcome back. Chris Hayes good to be back us. Okay. Well, let's just jump into it man SEO for enterprise developers. Something that you've been working on their difference between us the oh for non enterprise, developers will know really think just kind of looking over things a lot. Because last year I've spent since we especially since we talked a whole lot just. Really diving deep into the realm. And as I go through it. I there's a lot of things that I think enterprise helpers can learn and take away from good search engine optimization principles, especially around the technical SEO side of things. Yeah. So, you know, whether you build a lot of business application or you're trying to build something that you want to rank saying Google and be a marketing machine, everything we build a software developers has to appeal to a customer of some sort are another. So that means we have to really pinch into what works, basically. And you know what? You know what? Frustrated me in the enterprise is that there's not what I would say a whole lot of good research data around how to build good enterprise applications, and it could be, you know, whether internal on his -application or a software service application, but I know one thing that we're definitely seeing is that a lot of the successful software as a service type applications are looking more more like the native mobile, applications, just good user experience. Right. Same time. They're still they're still a lot of things that are lacking. In that scope, I think think that's because that the search engine optimization techniques change, so fast is is that why we don't have like a standards a lack of standards, or do we have standards that that persistent now people just don't know them. Well, I think the search engine optimization crowd marketing on marketing crowd. Probably does a lot better job. Of keeping up with trends and jumping on them and testing things and are more willing to try test and throw out and replace things really quickly. And I don't get too attached to a lot of things. And also a lot of ways in our software world, we get that way too. But I mean, you look at what's I mean, what what is it angular eight right now too much or nine and by the end of the ten, you know, he's, but we get we get basically we're constantly evolving to make supposedly software developer development easier better more robust whatnot. But same thing happens in SEO world. The thing about the SEO world is it's all about connecting with that end user, and for the most part the enterprise developer is a back end developer. They're not really a front end developer. And so I think a lot of a lot of thing. Let things get miss in the enterprise, I see this all the time. Just I was poor. Designed user interfaces user experiences. The really like not a first class citizen. If you will it's more about that back in coating in developers tend to sit and they tend to forget about. Where where's it really important? It's it's all about that front. Experience type of thing. I think you know. You know as I looked over. You know, what what have I really kinda clung to so one of the things that I come on here and talk about in. You know, get a lot of people start up about is, you know, my stance against frameworks and being a walk for making really super fast websites and stuff like that. And also a lot of the influence that came to me on that is really from fallen the stuff the guidance from Google whether it's from the chrome team or the search engine optimization teams are the search teams like they don't call them search engine optimization. But what are they telling me? And the reason why pay attention they got tons of data that they're analyzing. They know what's working what's not working when you say, you know, search engine optimization, rules and standards, essentially change. I don't know that they've changed so much is is it's Google collecting more and more data in analyzing what are people really trying to solve ultimately trying to find the best solutions for people's questions. When you really boil it down and. Yeah. And so what what they ultimately bubble up to the top is what gives not only the best content, but also has the best user experience. So if resist look at the performance thing right now, the average webpage takes twenty seconds or more to load in. That's that's Barrasso. Yeah. And I you know, I can't tell you. How many times at enterprise developer tells me that they're pages load in two seconds or less, and then I run them through test in its, you know, twenty five thirty thirty five or forty seconds because they they don't even they don't necessarily understand how performance measured. What Google looking is that time to first interaction when is the page actually rendered and somebody can let's say type something or scroll something, and that's what they're looking at in what typically developers looking at that time to I bite, right, which while important to tend not to be where the bulk of the rendering process, actually is sure. Well, an. Most techniques today do so much back in loading. Anyway, that you're trying to first bite is always super short. It's just not usable. And how many times have we had a half render page, and you tried to click on something, and it just sends you sideways. Go to click on something in time. It takes the stroke. It moves down because we're still doing CSS render. You click on the wrong thing. That is the most annoying thing about using the web. I've just go to click on something and it moves and you end up clicking on an ad or something. Yeah. New sites of the worst about this, aren't they? Yeah. Yeah. Especially when you got the the hero banners pop in that aren't like precise defectively. And so you're like, I'm actually reading it or something I hate is. I have to pinch into actually read the fonts the fonts tend to be too small. I mean, I'm getting old now and. AARP is sending me more and more male. And I'm not sure I like that. But yes, offense you into read stuff in Italy soon as in zoom in it renders. It goes bright back to where it was before. And I'm like a so frustrating, but yet, but Google's measuring those type of things they're looking for things like that. When they're rendering pages. Is there a lot of jank is there latency to time to I interaction time, I content content full all these key performance indicators that don't think a lot of developers really aware of I I'm over the last year. I know that the search marketing crowd has become more Cutie aware of them. And if you look back at their journal messing around things from two thousand fifteen to two thousand seventeen a lot of it was, you know, make sure your your server stashed. Make sure you optimize images. Baba the past year. It's gotten to eliminate Java script and eliminate unused CSS and stuff that I've been trying to say a lot. So there. Right. Really starting to learn that to heavy degree right now. That's just because Google is messaging that to them and they're paying attention to it quite a bit. Yeah. H S is our requirement to right there. If it's not a secured page, they lower. It's searching. Yeah. Absolutely. And that's you know, that's that's that's a simple one. Right. There's you if you're not using ATS right now, you've pretty much just got a site that people don't want to. I mean, krone Crumlin particular is has migrated through a series of things around HTTPS is far as their visualizing it and today if you load a site that she's HTTP it's going to say not secure in the address bar. That's scaring the person. Sure. And now there are now, you know, I'm constantly monitoring keywords in. What's ranking key words and stuff generally, you never see site this HTTP now there are few sites that still use HP occasionally, I'll? Run across that are in the top ten, but that's very very rare these days, and to me, that's a clear indicator that you know, that's something. You definitely have to do. The good news is like by now, I think about eighty five percent of actual websites are using ATS. But another thing that when I do run across a public site that she's HTTP what that clearly indicates to me. It's basically abandoned at that point because no one's maintained. Right. And usually when I look at the content, I can tell you know, the last update was twenty fifteen or twenty sixteen or something like that. And the page the page of may be a top ten is probably been there for a long time. And it's just it's a matter of Google has so many different ranking factors in some are a little bit nebulous, the this whole causation correlation which ones, you know, actually, right? Kind of thing. I think there's actually trust factor that goes into Google's like, okay, tr- the site's been there for ten years. It kinda kinda trusted almost going to slowly move it out of the top ten as other pages tend to attend to feel like I can trust better kind of thing. So that's why I think I still see some pages using T P. But like I said most sites I go to on their like while like two thousand two thousand one ear layouts and content is really out of date and man necessarily be accurate anymore, especially when it comes to Belmont. So geo cities calls wanted page layout back. I say this all the time. I'm constantly come across websites that are information right article about technology or something and there's no date. Yeah. It's just frustrating because you can't use it. You can't you don't know. Yeah. I'm a little conflicted about whether a publish the date on my articles or not and right now don't put the date on them. But maybe changing that soon the problem. The problem. Tell you what I do in this gets into the technical side of stuff. A lot of like what the Google spiders, actually, consuming is meta. Right. And that's actually in the form of structure data these days. So you'll see 'em I- articles. You'll see a section of script. Mark Jason L D. And that's when you get into schema markup to structure data kind of stuff in its go, schema dot or scheme, schema dot org. It it gets really they don't think it's really well documented so that it's easy to understand. But it's still all this kind of nested structure of how you can essentially embed metadata about a document or page in the page. It's not rendered but something that the spider will consume. Now Google's were when not using that directly for rankings. What they're saying. Is we use it to learn what the intent and content of the page is more about rather than just reading the actual content on the page. It's kind of gives them a little bit of guidance. But also to get into like local searches and. Or things let's say products like recipes, there's actually structured data targeting those particular types of data. And if you got that there, then you can service up and things like featured snippets and the rich results and stuff like that. That are not the traditional ten listings that she's there. So right. Yeah. And that's that's that's another thing. A lot of a lot of the search. Those original ten really pushing further and further down to the competitions more more towards these things like featured snippets, and that comes from having a better page, and and structuring content. So that you you can they can surface a concise answer to the right format for what the person's use a seeking so to Google and being in all the other search engines of which I know of none. But there are others. Obviously. Right. Did they agree on these data? Formats is it that much of a standard? Or do. We have to have like if I'm doing a recipe blog. Do I have to you know, put it in two different formats just to support. I. I noticed this in other pieces of data meta data that goes in the header that, you know, this search engine wants this particular, tag, and this one wants another tag. So the subscriber dot org is its own like a standard, and it's not like a standard like team Mel or Josh protest standardisation bodies. It's I'm not even sure who technically owns the standard or spec around it. But it is something that is not as generic it doesn't matter if it's Google or being or duck duck. Oh, or by do and I'm not even sure if duck. Oh, I have not. But yeah, what I have heard of duck duck. Go. That's supposedly an anonymous search engine, right, right? Honestly, I I don't pay much attention to it even though it is based here in Philadelphia. But yeah, yeah. So the thing is the general rules around search engine optimization pretty much work across the board. With all the search engines, they all have their own, you know. You know, subtle tweaks to the ranking algorithms, but for the most part, if you're making the top ten GU you're probably gonna be at least in the top twenty being vice versa that kind of thing. So, but yeah, the as far as the structure data, that's that's gonna be very common cause that's defined outside. The search engines themselves what what is different is not necessarily about that. But social networks like Facebook and Twitter have their own meta data structure, and they Facebook uses open graph Twitter uses Twitter cards, and so if you look at my my head markup, you'll see that those are present on my public pages as well. Now, those aren't really important for enterprise developers. If you're doing line of business stuff or anything simply behind password. Let's say, but it's good to know that like when I think about the technical side of of what I'm doing. I need to think about the actual data that is going into whatever that user interfaces. And so to me I'm looking at what is the actual day? Model how gonna structure that? And how gonna make that consistent across all the usages of of that particular type of data, for example. And you know, a lot of thought to go into how structuring my layout. And and all that kind of stuff as well. But this behind the scene things, what occurs to me, Chris is that you've been traditionally all about speed, and therefore using less frameworks are no frameworks and doing everything vanilla Java script, but and but you're also focused on other techniques that that increase the speed or the perceived speed anyway of websites, and how does that intersect with search engine optimization does a faster page necessarily mean a better SEO ranking or conversely does a very slow page. Just not get listed at all. So the official word by Google is that slower pages are actually affected more. They're God lines are basically three to five seconds when they say that everything Google does is mobile. I in fact, over the past six months, they have they have flipped their primary index from a desktop index to mobile index so now and now in the spider comes through it actually uses a mobile device to or mobile emulated device. I'm not sure exactly the technical pieces of that ineffectively. They're using a nexus five class device and testing over like three or four g type of connection to to see what what is your user experience like in that's their primary interface to your website. Even if you're getting aid ninety percent of your traffic from desktop. You're still most likely going to be mobile first at this point because I think they've converted just about every site over to to that as their primary index now. So basically if you're not loading quickly in rendering nicely. On a mobile device. You're kinda not going to be able to Reich. Right. Yes. Oh, so you gotta you gotta you gotta make sure your fast on mobile, and that's the real trick. So if you're testing on your local, you know, I seven with sixteen gigs ram and all kinds of nice capacity and loading over over the actual bus on your computer, not the network. That's not going to get this just not doing right? So you look at the right thing. Anyway. Yeah. Yeah. Absolutely. Not you're you're not experience Google say in your end users are gonna experience it. So right. Lotta times. Even when I when I'm when I'm working on a lot of business of SAS type application for an enterprise type customer. I'm like you need to make it mobile. I know like, well, we control everything he's ever going to use this on. I'll look at them go. Yeah. At no, you don't and. Well, plus, they're they're arguing with Google. You're not going to win that argument. No, you're not. But but I go back to quote that Jason Greeks used the presentation. I think the smashing com probably five years ago, and I'll paraphrase it 'cause I'm gonna sit in front of me. But he said along the lines of. Yeah. Okay. The enterprise IT department thinks they can control. Let hardware what monitors of the end users actually going to use. But the reality is that's like putting a line in the sand. You know, the wind's gonna blow it away or the ties gonna come in very quickly and remove that line. And you're going to be totally an a totally different place. Right. And it's honestly with the mobile revolution. That's really where we're at any work. What ten plus years since the iphone was introduced at this point. Right. The reason the reason why Google has flipped to the mobile index is because I think it's almost eighty percent of the searches on Google are done from a mobile class device. These days. And that should tell you a lot right there. And you know, more more and more, especially when as phones are getting bigger, they're becoming the primary device interface for most people because they're just so much more convenient. And so if you had there the thing you have yes. So it's in your hand. Well, so if you're if you're designing your impress off way right now for that fix desktop in the chemical or even the open office, if you want you're you're essentially limiting your potential growth right there because you're please. Especially as millennials arising are not gonna wanna be chained to this desk. They wanna be very flexible, and they're going to they will find a way to use it on mobile. And if you're not usable in mobile, they won't be productive most likely probably won't stay in the company. I mean, that's just one of the frustrating factors of custom of employee retention. If you will, and if you're selling a SaaS type application, and you're not mobile, I you're probably not going to keep those customers or even be able to get those customers. I'll give you a good example of customer. I had this past year. They came to me like we need. We think we need to go to progressive web out because our competitions really starting to kick our, but because we don't work anywhere off off of a windows desktop machine. And it was a software as a service type thing, and they were right. I mean, the market is headed quickly rapidly going towards a mobile wireless device interface, and they could see it. Unfortunately, their code base was really not ready to go that direction. I also think that the soon as you have an identity barrier of some kind of log into the anything beyond that is not SEO available. Yeah. That's where people like associated helpers. I think say, okay, it's behind it's behind a password. So we can dictate everything and the reality is you really can't right? Yes. Not going to be something that you're going to have the search engine spiders index. Absolutely not. I mean, there's. There's nothing on Facebook. It's index. It's all behind a password. You know, but it's a centrally closed off, you know, community applications what it really is. And you know, industry analysis analyst Facebook app a browser. They actually classify that as a browser when they look at it, and it's just a closed off community of data effectively. But that date is not available to the search engines, it's not surfaced. If he searched for things at best, you might find, you know, the dot net rocks. You know business page on Facebook that kind of stuff you might be able to find those kind of things, but I find those are very hard to actually surface. Better luck finding Twitter pages on Facebook pages. Cer-? Jammies. Who so? Yeah, I know. Refit thinking in the context of if I am gonna take the SEO seriously for my SAS app. I have to think about what can be indexed outside of that that that identity barrier. Well in worry about what can be indexed. I'll I'm looking more at what what lessons can I learn from what works SEO to make my sass or line of business application better. What what kind of what kind of nuances can I make build into my application to make it a better user experience to make my coach structured better all those kind of things because those principles translate directly back to any software my opinion. It doesn't matter if it's something you want to rank in organic listings or something that is, you know, behind the password it still about connecting with the actual end user. And that's where there's so much data vailable on what what connects with people, and it's a lot of disservice. Three this SEO type world, right? Like, I said. There's three things go into goule rankings that we know of right now three top level things. I was like back. Links are still big that's essentially how the whole companies built. And then you got the on page of factors content technical stuff. But then you got the whole idea of rank brain. And I don't know if you've heard of rank brainer, not rank brain rank, brain rain, so serene green. So what Google does is they use machine learning to determine what are people searching for and what's going to best match up to. And we don't know exactly how this really plays into it. But we do know more and more like like Google has historically made these massive Indio algorithm ick index updates at different points her things like penguin and hummingbird and things like that alone alone the years lash it amid a lot of them like the big one was beginning August called medic. But there's there's like all these little things in the search engine optimization people. Monitor these things like hawk right? So really what's going on? I think is that the rank brain engine is making these automated tweaks to their search algorithm in rankings based on what it's learning based on user activity, as it grows and changes. Now one thing that they do say is that twenty percent of the searches each day in Google have never been entered in Google before. So Google doesn't have something prepared for it. So it falls back on this machine. Learning to offer up. Okay. Here's our best guess kind of thing. And it starts learning from what people do from there. But a lot of times that rank brain is going into is trying to evaluate what what what is making people click on things what is making people dwell on things. Not what they call pogo sticker bounce back to found the next thing. How this going on the page all kinds of like hidden little factors that go into. What makes the best result? What makes the best experience? And so that's. That's what I keep coming back to. That's what we want to understand so one Chris can I just ask you to pause for minute. While we take a moment for this. Very important message Scher. Hey, Carl here I just wanted to call out one of our patrons. Jonathan Gallaher for pledging one hundred dollars a month. Thanks Jonathan in. Thank you to all of our patrons who support this show every month. And if you'd like to have your name called out on dot net rocks. Become a patron at patriotair dot dot net. Rocks dot com and help us stay on the air. Thanks. All right. And we're back. It's dot net. Rocks Carl Franklin Richard Campbell? And that's Chris love talking SEO. It's it's not as easy thing. I'm just reading a little bit about rank bring it seems to me Google literally experimenting with different engines. And you don't necessarily know which one's going to be applied for your search. You. Yes. No. So there's there's a concept of what we call user intent and the SEO world, and I heard somebody mentioned that that the used to be a document that was floating around in it can't find anymore, but the Google dented five hundred twelve different user intents. So what does that really mean? Okay. What what Google is trying to do is like when you request something from Google type of search term in there or use boysearch boysearch is becoming huge right now. What what kind of information is going to satisfy that intent the best is is a top ten list. Is it a guide is a tutorial? Is it a recipe, for example? Is it a product all these different kind of user intents are are very different. And so the way I I think about that. When it comes to enterprise software is what do I need to understand about the actual end user. What are they trying to -ccomplish what problems of trying to solve? What were they having problems right now? How can I make that better more efficient and give them that experience? Right. And so the same thing when I'm when I'm working on what's going to make me rank better. I have to I'm looking at what are those factors? Go into it. Just because it's a basic table. Let's say for forms of data kind of stuff that may not be the right user experience for the type of intent that the person may have I need to understand what they're looking to actually accomplish that we can surface the data or the interface the experience in the action items and things like that correctly to make them fishing as possible, for example. That makes sense. There's got to be certain to PWA's or even spas the way that those pages render. I don't know how index -able that is like I'm wondering techniques could be using on our pages that are Louis impairing the ability for that, the rank engines even apply so Google got official statements around single page applications, and it's not good, basically, they're they're very diplomatic about it. And you know, me, I'm not. But to summarize what they say, well, I'll tell you they explained the process though, like when the spider kiss your page, and you're using a fast-food framework like angular react. We will just look at the markup. We won't execute. The Java script, they don't they? Right. I do it. They don't bother executing. Any Java script on your page? And what I'm seeing more and more with fast food frameworks is less and less actual content and giant sized Dundee's of everything. I am. I am. It's amazing over the past year. How many sites I've gone to have thirty to fifty megabyte files of Java script. Yeah. And a lot of job if you're and it used to be more of a problem than it is now, but it still is a problem if you're your band with the slow it has nothing to do with bandwidth. It's about how fast is that going to be processed. And this goes to the average page taking twenty to forty seconds to render. If you go to HTTPS archive all the date is publicly available and you can run queries using big query on that data. And if you dig through forums like I have someone's got a query Parcells out the different jobs could frameworks and how what's the average low time on these top five hundred thousand sites on sites that use them. And basically, it's twenty to twenty nine seconds is what you're looking at and those are the best sides, and a lot of the sites are kind of, you know, password protected, so like Facebook, for example, that's looking at logging pages is using in their sample data, for example. So that's not a good story right there. But like, Google Google is gonna come. They're going to render the page. They're just gonna look at the markup. And what they say is. Okay. If we see that you're using essentially, heavy Java script will put you into a queue, and we'll get back around to you. When we have time, and we'll try to render your page. No guarantees on window get back to you. Or if they when they do finally get your page rendered if they if and when that's actually going to rank, and I'll be honest as I go through evaluate rankings in what's ranking. I I almost never see pays. It's got any of those remarks on them. And I think a lot of it comes down to win it evaluates them. And it takes a long form to render. It says this is not going to be a good experience. Even if the contents. Good, it's not a good experience. So I'm not going to service this as a recommended result for to answer the question. There's look everyday there's there's like from a certain point of view. There's there's four and a half million blog post published that means there's a lot of competition. There's two billion websites out that means one website for every four people in the world. That's that's a lot of websites out there as it is. So it means the competitions heavy in here. Here's a here's a big. Here's a big stat on all that only six percent of the websites have content that is indexed in Google for a search result in the top one percent. Whoa. In the top one hundred results. There's only six percent or even present in the top one hundred for any of the results. Wow. That's yeah. That means most most pages mo- sites most content out there doesn't even come up Google for search, and no one ever sees it. Yeah. So that means getting top ten really in the top three is the goal. You want to be the best out there, and that that should be what about people that use good 'cause I should be the goal of everybody. When you're making software you want to make the software for whatever you're trying to do. So what if you're using a company like wicks WordPress there one of these, you know, website mills. Automatically optimized for SEO, or do you still have to do you still have to do manual work there? I will say no, I've had a few customers come to me and ask me why they're wicks squarespace side is so slow light won't rank and tried to help them, you know, biscuit, port him over to to me doing it. So that actually will have chant ranking now when evaluated wicks squarespace sites. They generally take about thirty to forty seconds to render in it's just it's not because they're using reactor anger or anything like that. It's just because they got so much Josh crypt on on. Because whether they look at it as they just throw all the Java script for every j Corey plug in could ever find onto every single page. Yeah. It's not really thought out very well, in my opinion. Now, I know squarespace, right? We'll squarespace is actually looking for web performance front end engineers right now, I saw that the other day. But generally, those those pages Wixom squarespace, you'd never see those in the search engine rankings, and the SEO crowd knows that they don't rank now most the web pages in the world like seventy percent or based on WordPress. Okay. Well, maybe that's the right pass to go. But here's the thing with WordPress. Wordpress out of the box another just had this big update with Gooden Bergen, everything off they haven't had a chance to look into it. Everything everything WordPress ecosystems based on their plug ins. And so there's a set of plug ins at most these guys tend to fall into the SEO plug in that kind of stuff and also the way I don't know a ton about WordPress at this point, basically to me what it is. It's basically kinda back in mandate a management system, and ultimately these plug ins to take over the process of to actually give you the admin interface and the rendering that needs to go on. And what what happens a lotta times is people plug in way too many plug ins, they don't know water plug into it. So you can as we got what twenty one to twenty five steps that the pipeline flows through once being very similar. It's very similar to like note express in the the module ecosystem there just steps through. And so you can have that low that that slow server side experience because of all the plug ins, but the other side. To plug ins ally towns will drop in excessive Java script to dry things as well. And they find all kinds like crypto Coling mining and stuff built-in to things like that as well. So so, yeah, we're press is really more about the plug in ecosystem to structure and things like Joost are built to kind of help these guys build a more search engine friendly from content perspective. Right. And they do help take care of some of the technical things. Yes. Well, yeah. I mean, I've had experience where press running the elder daughters web comic site in the literally there are web comic plug ins allow it's plug ins SEO, Honey, like, it's it's actually impressive ecosystem, you really know. How fact of it is a yeah, that's why we're press is built up so much. 'cause I mean, these people are are dictated to plug ins because insulates them from having to write any code. And that's what they're ultimately after his most develop resulted are after in away. Yeah. Unless he liked to write code are. You're addicted to writing code lots a lot of developers are dicta writing code. But ultimately, they're looking for things. So that they don't have to write code. But then they wind up writing more code to make those things work anyway. Right. It's a terrible cycle. But is trap of when you use these genera size tools because they have to account for all cases. There Neville bigger than anything. You could custom-tailored for yourself. Exactly, that's alternately. What like Wickson squarespace are really suffering from their designed. So that no matter what you want the it's gonna be there. And it's more they're selling more the ability to create content without having to see the code in their page builder. That's what they're really designed for. It's not really about what the actual in product result as long as the customer sees it. And they like what the way it looks than they think they've met their business goal and two degree. That's that's all it matters. Right. I mean, I've dealt with a lot of customers there. They're like L at my lips great than any like, you got these animated characters that come in after thirty seconds because it takes a long load home. Always always kinda crazy vanity kind of things that are holding them back in. But yeah, like like, I'll tell you one. That's really common right now is the the scroll is like the hero. Scholars Cohen the site has four five things that after about ten seconds the next one size in the next one sides in right? The research shows. No, no one ever sees the one past the first one, and it just keeps your patron letting faster so found a better way to surface information. That's hidden that no one will ever see, you know, but let that helps appeal to like the individual internal of fiefdoms where people are like I need my stuff featured at the top of the homepage kind of thing. And so that's what that's really appealing to. So, you know, it doesn't it doesn't matter that no one ever sees it just that person who has that business unit. Sees their stuff is featured in. The main scroll or piece, and somehow they think that's gonna make make things better for them. But honestly, no one ever sees it. So I'm always annoyed by pop-ups that want me to subscribe to their newsletter. This and that and I just got there. I haven't even taken a look I haven't done a thing. And now already presented with options to to do more, great example of something Google punish you for do that that will hurt your ability to make it absolutely does. And it's because it's a bad user experience. I got driven off a hotel site just recently for trip I have to do because it mmediately popped up when I got on the site. And as I started work up another thing popped up. And then I continued to searching a third thing on like, you really don't want me to buy room here. I'm gonna go somewhere else. Well that that's so true. And, but that's again, people are like, you know, the more things we have come up an interrupt, you the more likely Arctic conversion, but the smart ones actually, monitor what works and doesn't work, and they'll take those things on right? Just let the user read something for a minute or two, you know. And if they go away they weren't coming back. Just you know. Yeah. If they're engaged and interested, then you wanna present them with the option to subscribe to a newsletter, whatever, but you know, right off the bat, Google will notice those, and they will ding you along the way I mean rank raking in the top ten is not something that happens overnight, unless there's absolutely no competition. It's a new term on that kind of stuff it usually takes three to six months to really get traction in and the way I look at his Google's trying to learn to trust you and your content for that particular answer because you know, you could you could easily change the user experience and stuff like that. Like really quick like Elkem right now, I'm going to start inserting all these pop ups giggles. Like, I gotta learn to trust this guy. I before that coming, right? So using CDN I know that can help speed speed up the access to large downloads and things, but is that also good for. For SEO. Absolutely. It's good because it put your content closer to the end user. And here's the thing. I'll like about CDN's when you're when it comes to organic ranking really that content needs to be static. It doesn't need to be constantly rendered every time someone requested. So what I recommend people use to have their rendering engine had that push it out to somewhere where it's hosted statically. And then you put the CD in loading those static pages. Now that it gets a little more tricky when you're building like a software as a service kind of thing because it's still I mean, a lot of stuff is done, but that kind of goes down to API level. So what I use for my own stuff is a series of Amazon lamp as a workflow it rent out, the markup for different things. Put them puts it in three buckets. And I put the AWS cloud front is actually where you're retrieving the content from my side. So if you're in India it's coming from him by. If you're in the US, depend where you're at. It could be San Francisco could be Dulles or no somewhere else in like two or three data centers around Europe and other places. So that content is physically closer that that obviously helps that time too. I bite right? And so that that helps in general having the CD on totally advocate for having the CDN. The other thing about city that are really like is that traditional web service right now are harder to get SSL certificate steal us certificates installed. And and it's also not as easy to have a web host that will support tippy too. But, but basically every CD on a service out there will allow you to do free certificates and allow you toggle ACT on which you definitely want these cool. Yeah, this cool. So we can get on a whole 'nother rabbit hole about HD two election stuff. But if you're not using HD two. Well. Being part of strange, Luke. We were one of the earliest implementers of speedy these days, I think the way to get HEB to just host in the cloud or riots, I'm saying I mean, cloud front has to be to assure turn it on what about a year so ago, and they're claiming. Yeah. Like, they're pretty basically if a CD in service doesn't offer free SSL and ACT to the probably not a CD in you want to use to be honest Raza at the to me, that's like the Brown Eminem's of of a CD. Those things aren't easy to turn on the go somewhere else. There's too many other options out there were just, you know, easy to talk on. So so that like I said it also allows me to not use a traditional web hosting infrastructure. Right. So I don't need. I don't need a virtual private machine. I don't need a physical server anymore. I'm hosting everything in three buckets right now and get the same thing. You know, simply do they finally turned on a nice, a reasonably nice static website hosting infrastructure in the last in this past year, but having essentially will render that stuff out ahead of time is great. So you know, there's tools out there like varnish varnishes really popular in basically what that will do. When a page is updated in on your web server, it will execute render it out in copy it to wherever that static website is on. You know, you look like stack overflow uses this basic structure to how they do it. It's all built in ESP net. But they built like a customized varnish that sits between the net server and the actual place where the content is rendered and stored. So when you're loading page from there, it's actually been pre rendered using dot net. But you're not actually triggering the pipeline. Let's say so and this this can go back if you want to use react in anger than focus on making a server side, rendered thing, in my opinion. You wanna try to make sure much as possible as pre rendered at times that you're actually loading static content because at static configured servers super fast compared to one that's got a dot net or PHP place or or are some CMS engine that has to get executed every time someone request page. That's extra latency right there. While you think about like, Don Iraq's where put a two shows a week largely that does change. Right. Most of the time these pages could be served from cash. They exactly yeah. And even you know, I've been work. Working with some of the guys Orsi sharp corner. You know, you look at that and their content changes a lot during the day. It's not like constantly changing. And if we have a we have a five minute delay on the on the list of new articles show up on the homepage. Is that the end of the world, not really, you know, if we gotta find every five minutes that paid at home page updates and you'll even the comments on on those pages are being loaded a symmetric erasing Nestle after the after the actual article contents load. It's loaded later on with Java scrip-, so pretty much everything on the page. It can be pre-rendered. We don't have to use the engine to render the core content of the page. So let's not at demand time. Is there anything we haven't covered here? Chris is feel like you've got it to me. Whereas we just gotta think about it. This public facing in any way. How is coming up with us? You a have out is it worth getting consultant, the seems like a scummy business. You know, it is it's a it's a space kind of learning about in your right there are there are people out there that are just used car salesman. At this is the case with anything when it comes to the web. I see a lot of times. I can't tell you. How many crazy stories have heard about salesman? Tell him customers bad bed information to make a sale, but it can't be I'll, you know. I would focus on a couple of things if you if you got a marketing team find somebody who understands how to structure content for that. Now. I don't think that's that's important for the development side, you need to find somebody who understands technical SEO. That's about that on page stuff. The semantic stuff server configurations, those kind of things, but the one thing I did want to touch on before we leave is try to integrate automated testing for a lot of the SEO principles into your build process. And I think developers can rely. Late to that. Very well. And there's two tools and we put in webpage performance testing as well. So this is just another layer to that, basically. Yeah. Are this tools? We need to know about. Yeah. So there's two particular tools that I liked that. I like to tell people use and one is lighthouse which is a Google Chrome as tool and the other one is weapon, which is from the MAC shopped edge team now both of these tools are no base components. There are there are web interfaces to these. In fact, the Google search team has flipped their page. Speed insights tool over to us. Lighthouse and Google also released a web dot death at the the Google web developer conference. I think it's a web developer conference back in November. And that's also based on lighthouse. The lighthouse sounds like the tool that's what you should be using. Yeah. Well, okay. So anytime you get the tool from the company, it tends to be a little bit opinionated. So it's always good to second opinion you needed by the company. Any that runs? The search engine that everybody uses. Yeah. Basically, so. But this is why like the weapon using hint as well. I think I think wet hand gets a little more get your elbows deeper into the technical side of things than lighthouse will. And the reason why said both are test. Renters what had I think is a little more extensible with custom rules than lighthouses. But by the fault, it's doing a lot of things that lighthouse doesn't do that an odd. Because I think I've found more things I can fix my pages with web hint that I have lighthouse probably with with. Yeah. I it's it's hard to say. I mean, there's things some of some of the things I'd never even heard of it. I think it does a better job of Saint doing excess ability testing, for example, although lighthouses come a long way the past year. But I'm trying to get the name the other name of the tool. Right web hint. Yeah. It used to be called sonar wall. And you know, like everything Microsoft every year, it changes his name. So if you've got a web, hint dot IO that'll give you the impact of page for weapons web hint now lighthouses built into chrome. But it's also a note tool. So if you just want to run it locally on your on your pages, just hit up twelve go to the audits tab, turn them all on there's like five different categories. Turn them all on also make sure your test. Over on mobile device over three to four G and run it and see what comes up, and that's actually what Google is using to index. Your pages is that is that test right there. And it gives you all kinds of great inside stuff at tests. How will your howler applying the basic principles of progressive web apps, which are performances like and other technical things? There's some real high level SEO stuff that any most the SEO is kind of chuckle at like all that's yacht. Gotta have title tack in a so. Yeah, it's funny. How people miss that stuff though. Yeah. But these are also they also come with command line utilities over there note modules, so you can integrate these into your built process, that's where I think I really like it and the data's exported as Jason, but you can also say dump it out his ex think too. And maybe CFC that what you can you can make a consumer consumable by your reporting system. So you could. Make the stuff visible in a lot of ways, and you can track your progress over time as well. And kind of see how well you're doing and Bill that into your your build reporting system and stuff like that as well. So these are these are kind of tools in the great thing about him is the running automated test over your system. Now, I would say there's limitations you can't you can't automate how people actually really react in real life to your stuff that that still comes down to you. You really need to have some something built into your testing cycle where you sit there and watch people who are supposed to be your consumers your product use your product and figure out where they struggling hackley make better of thing. Always always wanna do that. That's usually the last thing. Anybody lets me do fortunately. But, but yeah, that those two tools will will get you a lot of the technical stuff that you need to have in place. So that if you are targeting organic search results, you can at least cover all the technical stuff. But the technical stuff a matters to Eddie kind of application, and it'll help surface a lot of stuff that may or may not be right about your application and off the first time ran web head. If freaked me out how much it said I had wrong. And I'm like how how dare it say I have this much rat. But you gotta you gotta take it. Just like you do like your teacher grade, your paper, it's editorial process, right? Yeah. No. It's really trying to help you. Yeah. It's just try to help you and piece by piece you're gonna be able to fix things and every little thing at cumulatively adds up over time. It just gets better and better and over time to you'll find these task runners will increase the amount of tests that they have available in the pool and you can also extend as well. Which is pretty cool. So nice, Chris this is all good stuff. Man. Every time we talked. You learned something new face. It was an hour of new good. Yeah. I know the things not something a lot impress developers pale attention to. And that's why I think is something that can really benefit them a lot and make him better. Yep. We'll chris. And we'll talk to you next time on dot net. Rocks. Dot net. Rocks is brought to you by Franklin's net and produced by pop studios, a full service audio video and post production facility, located physically in new London, Connecticut. And of course, the cloud online at P W O P dot com. Visit our website at DOT any T R O C K 's dot com for RSS feeds downloads mobile, apps, comments and access to the full archives. Going back to show number one reported in September two thousand to make sure you check out our sponsors. They keep us in business now, go rights and code CNN time. And.

Google Chris Facebook developer Twitter Carl Franklin TSR PWA London McAfee Chris love
Performance is a Feature with JD Trask

.NET Rocks!

55:38 min | 2 years ago

Performance is a Feature with JD Trask

"Hey this is carl franklin and this is richard campbell and we're going to be hosting the dot net developer days conference in warsaw poland october twenty third through the twenty fifth breath developer days is one of the largest events in central and eastern europe dedicated to application development on the dot net platform and we'll be recording a number of shows from the conference and hanging out with you and early bird pricing ends august thirty first so go to develop days dot pl and get your tickets now <music> welcome back to dot net rocks. This is carl franklin and this is richard capital and <hes> we're here zooming and skyping and microphoning and doing that podcast odd cast thing that we've done for sixteen hundred fifty one shows yeah well. I've only done fifteen hundred fifty one or so the new guy i'm a little surrounded by dogs today actually yo the old the old man zack is sleeping on one side but i have a loner dog friends are out of town so i have robbie as well so might have some barks dog sitting yeah. Da you know old enough now that i can go upstairs gonna come back down. He doesn't move with robbie follows. Does me up and follows me back to dog we. She's nine not that young. I think the question is zack actually smart enough now that he knows not to bother moving here is just so old that he slept through the whole thing. Hey i got something for a better no framework that probably a lot of you guys know about but i'm you know in the dark but <hes> we'll see pro the music all right. It's did you ever heard of plex tv been using it for years and years yeah see. This is what i figured. Everybody's been using these cool will things but me so plex. Dot tv is a it's a it's an app. It's a website. It's a service it allows you to do just about everything thing with all of your media anywhere on any device <hes> so it <hes> not only does it. Aggregate live tv over the air t._v. t._v. Web content t._v. Shows like from amazon <hes> that kind of thing but you can connect it to to your media and then access your media whatever that is movies videos photos music from anywhere on any device and it's all free you know i got. I came over to this when <hes> windows media server died. Yeah yeah remember witness. Remember back in the old days where we're <hes> when replaytv and tivo and all that stuff was brand new and it wasn't only somewhere in the u._s. So i had a lennox incident that would spoof the that replaytv to think it was communicating with their service but instead was feeding canadian data into it's always recording t._v. Shows off my cable with it then. I was able to pull those into media. Services is a great u._i. For talked about that on your first appearance on dot net rocks my friend possibly out a long time ago and so but when it when it died when it went away i i switched to plex plex with the early days was rough but <hes> it's a much more refined product today and it but it came from tv they moved into movies and music and podcasts but it's an when the mobile wave came at its claim to fame was that you could stream your servers stuff into your phone. I just it's one of these things you know. I'm not a very. I don't spend a lot of time. Watching videos does <hes> yeah you know i play music but <hes> it tends to be limited like i don't just like say i. I'm going to go listen to something new today. Do you know so i'm not. I'm not always in a media server like i'm not always watching stuff so i just totally missed missed out on that whole thing but it's pretty cool. It is definitely of all of the different there was tawny products in this space and there's probably still are sure we'll hear people going. I can't believe you using that when you could be using right but he has come to dominate and it really. He is pretty big cool well. I learned something today so who's talking to us today. Richard grabbed a comment offer show. Eleven fifty five live which is from june of two thousand fifteen <hes> talk about performance tuning in ayrshire with christopher. We're going to talk a little performance tuning today. It's inevitable edible and this particular comment comes from persad who said one thing i've observed is that people take underperforming code and put it on azure add more more instance of compute and expected to perform better yeah as your does scale but it can only scale underperforming code that is deployed on it. It's a little unfair to expect azure to compensate sake for underperforming code. I've seen well written apps catering to five hundred transactions perspective with a single instance. I think people should tune their code and then leverage auchere to to tune further and auto scale yeah which is fair you know i think you should probably go into the cloud in the first place is because there's a whole lot of problems ago away when you don't don't have to own them machine in the class right but beyond that you know scaling is a tricky thing but being a cloud doesn't automatically guarantee. You're going to scale certainly not certainly not and it doesn't zo substitution for good instrumentation actually understand what's going on so persad. Thank you so much for your comet. I want a copy of us to co buy is on its way to you. If you'd like a copy music. Oh by read a comment on the website dot net rocks dot com or on facebook we publish every show there and if you the hamad there and i read it on the show we'll copy musical by and definitely follow us on twitter. I'm at carl franklin. He's at rich campbell. Send us a tweet. I just found out about twitter last week. Hey one more thing on that particular comment that particular show yeah there was another comment there actually referenced zealand feeling but that's not important but then there was another comment related to that comment at talked about a problem in brazil there was a data center brazil and they're having performance problems and so forth and i ended up the guy the fellow involves name was natan vivo and we ended up going back and forth on it a bit and i ultimately would he was describing in the thing different things we did did it sounded like a real problem ultimately escalated to scott guthrie really and they found a flaw in the configuration of <unk> azure in brazil whole networking figuration was incorrect and it was natan who who who really started the path to finding it see we we do. We do provide a service richard. Well and it's funny. You know you don't just casually escalate to mr guthrie. I've worked with him for a while. We were trying the different things and like you know this seems wrong and i finally went over to his ping scott about it and he's like seventy content. If i want to talk about this and he jumped in and handed off the network guys went goo shows up. We need to look at this like everybody dropped everything but it was it was a miskin vigorous action like it was a real thing well well done flashbacks two years ago <hes> well. Let's bring on j._d. John daniel trask is the co founder and c._e._o. Of mindscape creators of the popular ray gun. I o error tracking software. J._d.'s microsoft ask peanut m._v._p. He's been writing software for more than twenty years. He lives in new zealand. Where richard was born and also like richard and myself enjoys defined whiskey. <hes> thanks for having me back guys. Actually the company is now called reagan as well okay. We we really changed the name because there was so many people using that companies with sunday to the point where they get their their current bills me like who the hell is this mindscape. We don't even know what that is. We knew about reagan. The the product got so popular that ended up dwarfing the company name so he changed it over so hold on now so it actually became the company. Are you guys in auckland or is there's elsewhere new zealand to be yeah. We're based out of wellington. Both both wellington's lincoln's the second largest city in the capital of the country and it's also got quite a ticket up here so certainly has a big tick seen as well but i i find that wellington feels quite tick entrepreneurial <hes> down down this way a little bit more my experience down there. Is this kind of the worst weather. I've seen in new zealand. Yeah you know what's great about bent is coating. You don't go outside. You don't wanna go outside because it's crappy <music> out or sunny north end. It's like why are we inside. What is the finest whisky. You have tasted lately. Ooh recently. I had a a belt beanie stink. I'm pronouncing that right. <hes> it might have been a twenty one year. <hes> and i'm trying to remember much like usually when i'm when i'm drinking have hazy memories off to it's quite like anything from a belvin anyway i did have something amazing <hes> recently as well but i forget the name of it i could recognize it and it was it was one of these as sort of very rare suicide brains from from one of the major labels. It's quite difficult to get most delicious. If i remember the name i'll send you the link excellent well. I don't get richard on the whiskey topic or will never talk about performance this show which will also consume <hes> richards turds <hes> attention so let's just jump right in performance tuning performance as a feature. Nobody's is debating absolutely not figure w talk about whisky. I'll tell you what i see. Debate a little bit it around it and it. It's not uncommon for me to see other folks that are maybe running software companies that don't necessarily come from an engineering background the fully appreciate the impact of poor performing software right and you see the engineers they might be sitting there getting frustrated but i often find that they struggle to maybe pitch the broader business on why they should embrace that way and why admits but i often also sit there looking the data and i i do have a page up here from from google you know citing statistics like b._b._c. found that they lost timpson abuses for every extra sick in the site takes to load or pinterest got fifteen percent more traffic <hes> by reducing the load deceived load time by forty percent. These are the sorts of things things that frankly votes. Directors should be going how how trying to grow faster and throw it a lot of money that sort of problem yeah but there's some sort of divide divide right that often exists where we all use software and most of it is pretty slow and you sit there. Wondering why and that's what consider like a bug. It's it puts people off using the software strawberry fair and i'm of two minds of this is to y business owners resist is this one is that devs like performance tuning certain personality really enjoys squeezing the miniscule bits out of it yeah and that makes them nervous because it doesn't look like a feature just looks like tinkering and often you can do you can do performance tuning and beat yourself golf up optimize code that does not have a meaningful net benefit to the business like i think that that mindset of how are we how how are we going to show to nontechnical people how making the site faster orb improving performance on axs actually benefit the company leg it starts with measuring measuring in the first place to know how well you're doing before you started tuning absolutely and you know frankly i put that a little bit on on india's like ourselves that if the tolling and support around that is not telling the story so for example the data the guy that google will put out there. You know that these comes from from teams of <hes> b._i. Professionals and data analysts pinterest wyking was probably similar type people over gle to to put this together not everybody's ace googling pinterest right. They don't hear armies of data folks that are building these stories and so the tools often aren't actually being articulating. The value in terms of business is when you know you got more customers because of this. You saved this much money. They kind of just <hes> well. Let's so what unlike house which doesn't help your it doesn't narrative absolutely so that that's that's on on everybody and these the spaces absolutely and you know just as a as has a note coming back. You were talking about the deploying onto azur people expecting that to just fix performance. We're seeing that a lot as well from a bunch of folks that put particular azure websites the scale out more of a pez sort of offering and almost everybody we talked to seems seems to be using the smallest possible instances. They're kind of like match. The kids really nicely and not actually doing anything else also say actually the problem is is that that leaves you know he'd rooms you know time for things change in a lot of them are struggling with that but they really do not want to move off that bottom tier <hes> <hes> because it's meant to just expand right it's part of the bottleneck right but it does come down to if you don't have instrumentation and you can just find any of this and more relevantly soon as you do have good instrumentation. All of this becomes easier. Oh absolutely i mean the the the story you you won't believe this but when we we launched our product late last year and believe it or not. This was a software project that wasn't delivered on time time but ara. I can't imagine such a thing never heard of that before. So the is crazy. It was part of the reason it took us a. I think we're about six months over but <hes> the reason it tightly took so long as the team ability and then within we have a favorite of instrumentation putting it into our software monitoring net to eat our food and it was oh man this this some really poor in plus. I'll just go and fix that for a second and then i'll get back to work in on what i meant to be doing this sort of highlighting all these things and it it really <hes> <hes> it did just highlight that if you can't see almost all of the state of the system wallets motion it's very difficult to figure out outwear some of the <hes> the performance bottlenecks. Are you know it's very easy to to do things like you know. Don't use link inside of a tight loop. That's running a million times a second then but when you're talking about a distributed services all these different things it gets very very hard and partly because it's almost impossible to replicate the load profile on your machine looking like in production so you've got to kind of do a quote unquote taste and production action right now. You're you're conflicted here because you are both an owner slash e._e._o. And a death so yes described your your your developer employees do something that i would have fought against as a manager which was in line optimization during development on much more of a building. Get it running. Pugh prove the feature set now figure out what you need to optimize to get it to to the performance level d d. Do you think that way or we're where do you fall on that position. I take things with a little bit of a i guess the more pragmatic about it you know if if somebody's spots an issue and it's affecting say three hundred customers would have a bitter experience in it's going to take you know coupla hours to fix it. That's a big a win in my mind <hes> than say managing to deploy a product dealer sure so what about chip code impacting customers and i'm with you especially we can box so neatly as a couple of hours but i thought when you were first describing this as as they were doing the build and seeing like seven plus one type problems that you know are going to have big performance issues as they grow they would fix that then whether or not they knew would have an impact on customers. They are no night under this case. They're doing it with with the diner about customer. Impact in this scenario scenario that i was using was an example of beta testing or alpha testing in this case the a._p._m. Product on the reagan dot com application. You know <hes> ah we've gone so it's entirely internal but the head the data to back it up. I'm personally more of the view that it's spit to try and optimize earlier rather than later and fisting the dead. I have to qualify it slightly by the nature of al product so reagan today processes can can be as high as five hundred million requests and our through the platform so something taking a little bit longer can have significant costs to us. That's that's not a normal software project right. It's not a logging for film would also think that urine instrumentation tool and nobody's willing to give you any cycles goals to do your instrumentation right under that scenario. We see that a little bit as well we from from customers you mean cycles in terms of development time or compute cycles as want no every well also resources consumed right like nobody thinks about the overhead of the the the instrumentation itself no they don't and in fact you know name names but when we were analyzing some of the stuff <hes> when we were hoping to build we have one vendor. That literally tries to subtract what they think they're over. Here is how nice and therefore if you actually married up server logs to what their product was saying. Is that the wildly different numbers. We don't believe a nap elite. We sort of have to explain to folks say it. You know it's not a sales pitch but we're in three product categories of crush reporting from a._p._m. Net crash reportings not really much overheated because because it only does something if something blows up right you're already in a shitty experience. It's not much to wherever you performance at this point doesn't matter we've already failed absolutely absolutely real. He's a monetary sitting from the usery because you're measuring user experience right so that's kind of the overhead of say google analytics being on a page right right. It's kind of a bit of databank but it can be inconsistent. It's not a big deal a._p._m. That we are running either agents or extensions whatever on a machine and it's effectively running a profile profile or an analyzing everything they can have quite significant over. It's you know when we started out to easily be say one hundred percent over here. Okay well obviously obviously no one's going to install that yeah and that's when we went out and started benchmarking across different different players and we were like okay well who's who's based in in class and how do we beat that number and typically what we're seeing in that sort of a._p._m. Spaces you can't expect about eighteen percent of a heated for for trying to capture the level of information that that an a._p. Impract- would so it does come at a cost of production a._p._m. I think that's a great number. I've seen far worse. Keep them on basic classes. I've seen a lot list to it's kind of like you know if you if you install a profiler let's take the chip brains ones in my tool of choice but i know folks that redgate redgate net build them as well <hes> everybody's done it seeking still let on a prod server at some point and try it out now. That's not optimized for trying to capture every requests questionable and you see that over here is really sky high trying to catch those choices at that point but you know something that's always on has to be history quite yeah or it's going to be turned off. I improve the performance of the app by taking away the performance monitor events exactly what we we hear occasionally for people as they will not not about afro marvin saying hey. That's the answer that's huge problem. I got that pesky reporting out not on the flip side at least toes again coming back to the original point they are trying to arm the engineers engineers the the devops people or whatever you wanna call him with the data to hopefully present a bit of a business case about things even if it's not about hey the load time impacts in pick these people. You might simply be like hey we could stop using you know teen. Ix recieve is here. What's that gonna cost us yeah especially when we get into cloud over billed by computer to be able to dial it back absolutely absolutely that super bowl. I'm going to presume your a._p._m. Product which i haven't used similar to other a._p._m. Products which have avenue which is that use that combination of frequently called and consuming significant resources that you sort of bobble up but those those particular methods or this particular calls to have that combination of we do this a lot and we it takes a while yes we do is leader that absolutely something. We do that a little bit different and this might. There's always the joke that <hes> what is it that the best developers are the laziest developed purpose because everything away and in a way. That's that's that's kinda. True here in one of the things we've done is put it in say well rather than just just saying hey the chart moved in a direction <hes> why and then have to sift through a mountain of data we kinda do what effectively like almost imagine a static analysis assist but at run time and that the performance prices come through and that's where we can do automatic detection of things like in plus one <hes> slowest in life cycles and things like that to just say. Here's a list of issues. These are the performance problems that we have found it in your code while it's running in production going fix these things this the impact the other thing we've tried to do in this is more of a move with technology is captured the mythical. I'm personally don't and find particularly useful tools that say your session took three minutes. It was five queries in here. They took a few seconds each and you pertain eighteen light. The code had no actual over here. Even though it was the bulk of the time it's not very useful and so we actually give full flame shot of here's every method how that's executing and you can very quickly identify issues in your in your code base there like illogical ways of calling things that just lead to ah giant explosion and compute time that being said is usually the queries fault. That's why we d- bs. Did i say that out loud. That's not right well. As a slight wall street we fixed a query the other day <hes> ourselves where we had one customer and a lot of data and it was taking twenty three sick can stakes hewitt the database query and then we found that <hes> if we if we did the order function in code it made the query the drop to about eight hundred milliseconds and the overall time was billy molten and for whatever reason putting the order by into the extra database lead the optimized to do something really cookie in the blue our response yeah well and it's interesting just how much quarrying these days is generated by various or data obstruction tools and so tools like this that lead us to the queries that are causing pain is like well nobody wrote this query query was written by a tool and i may we know his name and it's so now this should be stored procedure around this and allow the debate to optimize it better and then change our code reflect that like i think that's a super healthy conversation sation when you know when i have a good tool like this where we can both on the same sides of things you're not blaming the database versus blaming the code absolutely and i mean i can uniquely speak into this is the first product that company built wasn't no r._a._m. Code light spade that was quite popular in particular and compete against e. if because generated substantially more efficient queries and these days <hes> with with the reagan product i've kind of fallen beg slightly that i think l. arms have are fantastic productivity tools but i still haven't kind of come up with what is the ideal pet and for a blended system that says you oh yeah but there's all these points where you need escape pitches or you do wanna be out a finely tuned in you know all arms often will have that ability to wrap is stored pro something and work in that way that still feels like an unnatural sort of merging of two approaches. I haven't seen a particularly clean solution for wind performance minister. This is kind of irrelevant. I think it's an exception case and it should be an exception case and it's worth and if you don't have that exception than you really going absolutely absolutely we talk a lot about that when the building dave toes of what is the escape hatch. It's great to take people down the path but you know couple of scene at the time you don't you don't wanna go down that path. Flu often very good reasons. So how do i get out of that yeah now. It's an interesting problem and i do appreciate the tooling helps us. <hes> be on on the same side of the problem rather than blame each other for the problem like kind of like what you're doing here with sort of. Here's the things i think you should work on because then you look at then you present that list to everybody that's involved in performance tuning which is going to be some ops guys. It's going to be some d._b.'s and so forth and you argue about the list rather argue whose fault it is oh oh absolutely and inevitably what i find with performance issues and south this is this is the same as bugs is nobody sitting out to write a book. No one sitting out to the dog slow right. It's usually is a case of well built on my machine. I'm running on a bay middle locally with one user attach with some small amount of data and then we put it in production with thousands of users and customers with millions and millions of data points and guess what it's not quite as good as it was on my machine so that's that's often a challenge too so i find like i don't know why it is that bugs feel like something you would blame more the performance issues but they both actually i'm from the lice. Well and bugs are blamed on death's absolute right because it's a they that's where the names associated with it so they when recognize it. Everybody's attached performance that everybody cares about reforms that all of us are metrics on performance than it's much more inclusive thing. It's kind of like a <hes>. It's a virtuous cycle there as well. You're making stuff stuff. Bidder wasn't that it was necessarily early broken. It just got nicer so when i made my living doing helping companies do performance tuning. I always open with congratulations. You had to have a good problem problem. If nobody was using your app it would work great. That's absolutely that's absolutely correct that very similar to the line i bust out when whenever graham having sales calls and whatever the communication technology doesn't work and i say you know if it wasn't for software faults. We wouldn't even have business so in the tightly trick we do. We battle a little bit internally about some of this stuff as well like for example okay. We got all these bugs that integrates source control house system. We can absolutely do it. Get blame on the lines of code. We can figure out exactly who should probably auto assignment to and we do have some folks that say to us well. I'd really like to be out in and bill reports from on my team and i'm like i can kind. I absolutely can understand why management might wanna do that. I'm not i'm not entirely sure that that positively to put on it yeah and i've been thinking could it be more that you do things like leaderboards on who's fixing things things or who's actually you know to positive behavior exhibiting positive behaviors and try and track on that otherwise would sell that product anyway because it goes through dave's and if it was to have the features that said by the way it's going to basically hang you. There's an issue here's fly. Use your bonus this quarter well. I talk talk about this a little bit when we do have sales conversations with folks that are in management in particular the c. suite and usually around the crash reporting is to say firstly. You'll probably never get to zero. You know that's not that's not a way you're going to get to here bugs perfect life and so there's an education pot we have to take take on to ensure that they aren't expecting perfection from the teams in much the way teams cannock speak for fiction for management yeah yeah. It's only fair right. They works works both ways and i'm going to interrupt for just this one moment for this very important message. Hey carl here richard and i are asking for your support in two ways first. We'd like each and every one of you to share your love of dot net rocks with your friends ends on social media. The more people listen to our show. The more likely we are to stay on the air. Secondly please become a patron by signing up at patriae on the dot net rocks dot com. We don't care if it's only five bucks a month. Help us pay the bills so we can keep coming back week after week with more great content and we'd like to get back to two shows per week but it's just not in the cards yet so help us get there back. It's richard gamble and carl franklin. I'm still here it networks. He's still here and we're talking to j._d. Trask about performance tuning. Which should i mean for better or worse. I mean i built to start up company and sold it around performance tuning websites. I have strong opinions in this area and you know our ability to sell the product radically transformed when we stopped selling it to i._t. Endeavor folks and we started selling it to <hes> v._p. Of sales yup because that basic message faster website sell more stuff that that worked for a v._p._n. Sales and it didn't work near as well for anybody else so back to your original message here j._d. Is this reality see. That performance in product makes money absolutely and frankly. I know that you know google is a little bit of the privacy boogeyman in a way not quite as bad as facebook but the the best thing for everybody that uses the web has been not you know google search was was obviously i big when was when they came out and said we are going to stop including your performance as a ranking factor right and that has driven so much interest in products like we sell our any performance stuff because suddenly like marketing teams saying well hang on a minute. This is titled title. He's screwing us. Sites are all slow. Suddenly the the businesses are starting to to really care about that because obviously you could keep shoveling money. They took google for ed's but even then if you side slow going to start charging more for the ads when people clicked through because they're going to bounce because it's shitty shitty experience right so the costs go up across the board so that's been a huge win an effective as i kissed the evolution of exactly what your experience was us. Was there richard now. It's it's it's all the same thing and i include a link to to google y performance matters doc just because it is that kind of analysis that it can equate to money and it's i think it's how technical reference material for how technical people can pitch performance although it seems like it's getting easier because of things like s._e._o. Where you are seeing marketing and sales care about performance and one i want to get more of it and and certainly provide resources to make it true one of the things we've started to run into a little bit as well in this particular around the the rump products of measuring customer performances we give folks asking if they can manipulate the definition of poor good great and what we we we say a piece of software is operating like ryan and i ended up having these these great debates with folks that say well we building peace system so you know thirty seconds ends is totally acceptable for our customers and i was like no no no no no and it's like wait. You know the you see. People are the people that didn't go to work then suddenly decide thirty second load times or a great experience and it's like no but a lot of data and it's pretty sure google searching boatload of data as well you know that's coming back and three hundred milliseconds stop making excuses via shitty software. Nobody relax doesn't this tooling just as easily define the fact that you're you're under provisioning and app as much as the code is struggling to do things are were fetching more data than we require yes. That's where you sort of just effectively triangulate between things like <hes> c._p._u. And memory in an area that we are starting to to see him. We've been affected by the selves elves that's not reported on so well is usually network bandwidth. Yeah i think that's to me. That's the only real constrained resource these these days. The wire is still the weak point absolutely as well as with a lot of the cloud vendors. If you not using particular instances is you may find that it's bristol so you deploy something you know you're purchasing a lot of data looks great and then twenty minutes later it hits the bricks and you're like what the hell just what happened in here and i don't personally find that <hes> any of the cloud providers actually uptick usually upfront about the limitations of behaviors resolve the network adapters and how that going to change over time they just kind of say this is right into one gig and it's like you but for how long how sustained and all of that stuff and the other thing is i can. I actually pump a gig through that twenty four hours a day because i'm betting no absolutely and then i don't know the the sort of changes with time as technology improves but the element that i find confusing sometimes with a network limiting issues is that i think it's particularly particularly tied to visualized environments which obviously the the cloud is. <hes> is that often. You'll see it manifest more in high c._p._u. Utilization as well as is it's trying to i'm assuming you know marshall managed you know some sort of buffet and various things and that can be confusing because then you're thinking well isn't my code. That's just slow us going up and you forget to kinda cheek the network itself so i find having to triangulate light server monitoring and cone own monitoring is how you figure out what is actually lie yeah. It's not like the code certainly shows up as being that we're constrained like assigned doesn't pop out to say that's the taste hit this wall and you're winning where you're not going any faster and he can spend a lot of time tinkering with code. That doesn't do a thing for you now. This is something that folks so probably say this is. I'm trudy just haven't been paying attention which is probably true life but it's kind of like these as if i'm on windows let's say just consume machine and i'm i'm looking in task manager and it's quite cool these days vis in the past where <hes> with all of the tubo boosting and speeds dipping and goodness knows what that they'll actually you can see that number changing around what kind of the c._p._u. could be operating it but you don't really see that happening on. I haven't seen it happening when you're talking about networks and things like that because you don't really get the state of that updating all the time which when you do have this best of all next and things can make it very confusing for sure yeah i think nick constrained is just not not as not as visible problem and throwing more cloud at so. Are you seeing you get different nick depending on what instances in place like azure and a._w._s. Give you yes so you yeah so usually starting to change changed this some of them now making the network adapter configure bill option kind of like the disk and that seems to be where the where it's going but more historically was that you'd say hey the funding to buy say a medium instance at this level. That's gonna come with a tin. One hundred kind of knit were caught and then the knicks gig it but that's where it might only be for particular throughput loads and things like that for for a period of time because it's best of all those peaks and then you actually have to go up but now the legal to make it a sustained signed a liberal in there so it's just it. It's all improving. It's just a little confusing yeah and they're all virtual knicks anyway so you know figuring out which actually have an actual performances is still an interesting in question do i i mean it was a few years ago now but i do really enjoy reading a lot of those sort of windows and lennox internal type blog post. I we people dive into. I think there was one for windows server awhile ago about how hey will now that we're starting to drive safe forty gigabit position network throughput put you know how do we i think it was around moving the network handling out of the out of kernel mode or something like that to try and improve throughput and hearing about the stuff off that these these giant cloud providers having to drive these behaviors to improve all the networking <hes> you know for the data centers. That stuff really gets my rocks off. Can you also make a case with tooling like this to to go to cd ends to try and localize resources like this. Can you make that show well. We can do a little bit around that by giving you down to sort of the city little geo data to see where this issues and you you can kind of see it if it wasn't for the if it wasn't for china really almost see a a perfect bullseye like heat map around the world if you're in one data center right to say getting progressively slower and that's kind of hint at that but it's not so pointed as to say hey get a c._d. In i mean the nice thing now with the cloud is that it's not that difficult to say okay. I'm gonna incorporate. Let's put a c._d. On in in for a week and compare the two performance sets for certain customers but i'm totally with you that median load times don't help you when you're trying to figure out what what customers are having good experiences burns's versus bad experiences by geography. That's also where it's important and again. We're we're building on. The shoulders of giants who built great great right products say a decade ago in these spaces and there's just an improvement in resources that are allowing us to the next level and so a good example of that is <hes> you takeaway page. You don't wanna just know the median load time the p ninety nine things like that because you say okay well. It's the p. nine nine right now. Show me what actually what made up that request and response the response has to include all the service so an example that we have with our own and system was started out we use gravitas for putting advertising when people signed up pretty stock standard thing but by not seeing that actually gravitas towers a horribly slow civis sydney you an image you have to go below with the top line request information actually see that those were the assets these were the request the sub requests quist that we're actually slowing down those pages from low loading so you've got a geology that knicks liberal of data to really be able to figure out what actually impacted us us third party libraries in the web world right tack on google can burn them. Oh absolutely partly it. You know i i remember back in the day was at the google search salt or something would give you these recommendations would straight up tell you you know it google analytics descriptive slur tag minutes slow. You like this guy is like fixed it. That's always blowing my mind. You're you're also getting dangerously close to talking about frontier development which is another area. That's driving a whole lot of adoption around real user monitoring. Is that <hes> yeah. You know. It's easy to write <hes> slow stuff on the server but what we're seeing more and more and more is that for most people the sieves responding fine. It's the you know eight megabytes of javascript that takes twelve seconds to composite the webpage and be honest scares the but jesus outta me when i hear things like we should stop using c._s._s. Files and stopped using it through java script and you're like why why this this is just paint sizing your customer like the amount of time lost on the on the client side rain to these days absolutely dwarfs. Most requests is on the service side <hes> for overhead well. That's part of our original conversation back. In the day about web. Performance tuning was let's look at latency before we start talking about server side optimization because you're making a hundred and fifty round trips and a yeah. One of them was only one hundred milliseconds milliseconds but it's one hundred fifty of them yup yup absolutely not to mention if i ever find the person who did the first loading spinner for fishing pitching javascript assets to use an app. I'm gonna stop feeling a little stabby. At that point well yeah i <unk> i've you guys got into instrument and stuff like blazer and the other web assembly tact because i think they're going to have challenges to yeah <hes> honestly no not it <hes> but i've been keeping an eye on the stuff. That's coming along with blazer because it looks like a very very coach technology kind of baked to your question earlier if you know the c._e._o. Now who can code which is both a blessing and a curse. Oh yeah you're <hes>. You're deeply conflict. I spend my weekends playing playing around with with with new things like i am a technologist at hot and then i go to work and i'm like no the last thing you should be doing j._d. Is writing any code or the kind of is is is that technical data raygun is just anonymous with c o coach kaz and you have to resist that impulse talk about what you played with this weekend because you come with the c._e._o. Weight and it's like so we're using that now. I'm actually horribly old school on a lot of thanks. This comes back to the pragmatism side again. I'll probably have a lot of people shaking their heads as listening to this but i honest to god believe that one of the raisins we've managed to execute so fast on delivering three really great products is because we've just kinda gone. We don't need to learn cuban eighties. We don't need the stuff we can just basically basically put stuff out there onto these instances sit up things like auto scaling not have to retrain the entire team not waste all the time i i've lost count out of how many people want to put that stuff in place and then just having to spend many many many months of of people time just trying to manage that stuff doesn't yeah. I'll wait till it's boring and alden. It's kind of light year. You can run to commands and it's pretty much rock solid and i know that's where it's getting to with things like the manage services from the cloud providers but in a way. We've been a little bit of a lot on that front while we have. I've been very aggressive at adopting things like donnie core because that gives us some wonderful performance wins you know being able to use the lennox machines and things and we do have a case study with microsoft software. We we converted off a no j. a._p._i. Layer onto at nicole one point one at the time where we've got about a two thousand awesome percent throughput improvement thri p._i. So we looked at those sorts of things will try and be cutting edge on but otherwise it's pretty pretty bland and reliable stuff in yeah absolutely well and it's the thing is like y- you don't want to innovate on these things you want. The the the easy wins and only changed these changing. I would only worry about these new tax when you're not being able to deliver on the goals you wanna get to absolutely or are always ask the question. Does the customer care. No i yeah well accustomed to be able to tell if we implemented container strategy but that that that's right we there's there's there's very good reasons for when you need it but you know i'm not particularly choosing various websites that i use because of how they manage their the compute butte clusters yeah yeah plumbing. It's all internal if it did show. There's something wrong. It's right you might have a slight security vulnerability in that code base of it's visible every service or operating which i find interesting. There's some new stuff coming section not not that new but nobody really supports it around sieve timings being streamed down to the browser and so this is you may be aware of like the film performance tapio speak and that's where you get things like how long was spent on d._n._s. It's so hen chant blatancy whatnot breaks down on that super helpful but there's a new civic timings <hes> specification where you can send down which would include things like how long was spent during in the data featuring how much was on code execution and you can you can choose what you put into these and i've always thought that that was super interesting because on the one hand to a developer. It'd be really handy. Andy and my dave toast browser tiptoes to be out to just sorta go. We'll wait at the time go in there <hes> kind of mildly sceptical of leaking that information off to anybody that hits the website odd in core server tiny's has been in the w._3._c. spec for a while yeah yeah but i know talking to security over the run as side there were a group of of a grey hats that were using detect passwords at succeeded in failed old because the timings were different right yeah inside that classic classic wanna do wouldn't somebody tries to log in as well l. M. and you aren't necessarily want to disclose that the email address match but the possible didn't right and that could have a very obvious e._s. Timing difference out because the record comes back for the email address and then you're you're doing the the follow on authentication chicks that could be noticeable yeah so any tool you'll you can use to help discriminate those detail times represents. A potential security risk is very interesting to think those ways all those security eighty people. They think terrible ways the problems that they worry about the way they think about. It's like guys. I just wanted to know how long the d._n._s. Took to do the look up when you turn it into this horrible thing and famous i think when when you review code it's it's a little unfair just too too placid on the security people. I think davis are also pretty good at coming over some crazy crazy things <hes> that the that they do and in fact sometimes i feel like some of the ideas i have about business. Come from the fact that as an engineer you kind of sit there and go okay. My goal is to get from here to there. What are the possible ways. I could do this and yeah. Some of them are remarkably stupid and but yet they can they can be very you know maybe illegal yeah breath. I'm still a big fan of web page test. You know just in pretty good. It's hurting into the into the continuous deployment line where soon as you push it up you run run a bunch of pages and and you've got some metrics to work against thank d do you see the combination of tools that way yeah i do so i would put that onto the the head of synthetic tasting so that's you know we're an amazing tool. We use fees ourselves. <hes> the the risk with not risk because that that just different things right the the real in real user monitoring is to say well iran iran this taste and you can try and adjust things like network connectivity and you could sit some different locations but that's different to you know this person was at harm that using this crappy router i've got this internet connection in this place and if you know the now to date computer or something like that and this was their the real uses low time and often. There's a feeling big discrepancy between what a synthetic chick sam vis. What are what he uses actually experiencing it. They both have place though because obviously a web page runner synthetic test run gives you a good baseline so that you say in the environment is bitter eight or wis than what it came back with last time a._b. Testing absolutely so they have a place but equally i wouldn't solely and i'll be in biased on this but i wouldn't solely rely on on a synthetic telling me how might use finding things yeah. It's better to actually measure the users funny. The the other one that i see is changing a in the entire monitoring space. There are some really giant plays out there that it's still more or less just give you averages right and debts that so misleading it's ridiculous. I always used the analogy you know. Bill gates wanders into a starbucks to grab a coffee on average. Everybody at starbucks is a billionaire way to look at it right. It's is true so yeah. It's true but that's why you actually need well then you can also say well. Let's say let's say it was a series with one hundred billion today. Save one hundred people in there and they averaged one billion. You literally may not have anybody that actually exhibits the average so it's not only that it's misleading but it can be an atta lie then that you think somebody experiences that you know that scenario it is an underlying because this one guy who has much rush from one in that and everybody else has much less absolutely absolutely so that's where i'm excited seeing across the board more of these so saying hey hey look the histogram here is the media's he is the p ninety nine some things like that to to really help people understand what is the distribution in there to to make beat a more informed decisions the challenge of course with that as at scale things like medians okay well. You have to order everything and find the midpoint point and there's a bunch of research going on in particular around history grams and being able to find those percentiles fast. You know kinda like close approximation bloomfield things like that same sort of theory of how do we do fast approximated history grams to not make this almost punitive to to try and calculate oculus for people but it gives you much bitter bitter onces so that's a great thing to see what's next for you j._d. Where are you going with this well so we've got these products and they continue to grow in. That's that's awesome. We've we continue to improve that. The products themselves to provide fide more really al goal is just to try and make everybody else's software run bidder. You know how do we. How do we make it so that it's a great experience. You touched on it earlier richard about without this the sorts of people just wanna make everything efficient and they'll sit down fiddle. I'm that guy richard. I'm that guy for this therapy. Actually put a book a little while ago. Mpm anybody's interested in it was my way brushes his graphics programming black book special edition from the mid nineteenth and it starts out talking about how in in today's world of high i four eight six thousand pentiums. Is there really a need to think about performance anymore seven more than twenty years old yeah yes if anybody is interested in that so the stuff i highly recommend trying to find that book on online will be sick and hand. There is actually a free digital vision as you know but now in p._d._f. Form it's a great so you're like me. You like efficient stuff. Check it out j. d. richard. Thanks very much for being <hes> uh-huh. I learned so much just listening to you guys but i really didn't feel qualified to jump in but geek in about tuning totally cool cool. Thank you so much j._d. That's always a pleasure. Thank you very much for having me. You bet we'll see you next time on you know what dot net rocks <music> dot net rocks is brought to you by franklin's net and produced by plop studios a full service audio video and post production facility acidity located physically in new london connecticut and of course the cloud online at p. w. o. p. dot com visit our website at d._o._t. Any any t. r. o. c. k. s. dot com for r._s._s. Feeds downloads mobile apps comments and access to the full archives going back to show number one reported in september two thousand to make sure you check out our sponsors. They keep us in business now. Go write some code next time yesterday mr <music>.

Richard google carl franklin reagan developer engineer facebook microsoft replaytv John daniel trask dave zack Dot tv l. M. robbie
Messaging Pitfalls with Jimmy Bogard

.NET Rocks!

00:00 sec | 2 years ago

Messaging Pitfalls with Jimmy Bogard

"Hey, this is Carl Franklin and this is Richard Campbell. And we're excited to be hosting the dot net developer days conference in Warsaw Poland October twenty third through the twenty fifth dot net. Developer days is one of the largest events in central and eastern Europe dedicated to application development on the platform. We'll be recording a number of dot net. Rocks episodes from the conference. Plus, we'll be hanging out with you so registered today at net dot developer days dot PL. And we'll see you there. Welcome back to dot net rocks. This is Carl Franklin. And this is Richard cattle and man. It's just getting warm over here in Connecticut. Now, just getting warm. I don't understand. That's leeann a late spring for you. Yeah. It's been a late spring. That happens. How's the how's the coastal Vancouver, clearing doesn't suck? My friend didn't have sitting on the ocean every day writing has been very enjoyable. Of course conferences in his upon us. So this is gonna stop for a while. But so my doctor convinced my wife to eat the first she's ever eaten yesterday now take some convincing the first person ever, you'd always taken a flier right now. This is she's fifty one years old. I'm sorry, Kelly, but, you know. Never lived grew up in mystic. Connecticut, like, you know seafood countries Donington seafood country, like this is where all the stuff comes from. And, you know, we're sitting out in by the water, beautiful restaurant and Westbrook, Connecticut. And, and, and she's like, oh, that's disgusting. He says, how much would I have to pay you for you to eat annoys it? She says ten thousand dollars. He says, how about fifty bucks? She says, okay. We have video of her choking, down annoys took her three times three tries, but. I was like, damn, I mean, all I gotta do is offer fifty bucks for, you know stuff. She doesn't want to do, and that's it. And you got magic magic mad skills. Anyway, so I got something very cool and very appropriate for today show for better no framework, Sorolla crazy music awesome. Art did man that music really is crazy. Isn't it? It is great. But if we ever changed we'd get crucified, no people love it. And, and I know I know in some ways it annoys you that some of the silliest things you've ever done while, you know. Yeah, you're worms are ear worms where you're gonna do. Okay. What are you gonna do? So. This is an article that came out in may like may fifth of this year. So must be a pretty new feature. Aunt. Yeah, but I don't know exactly when it was introduced. So this is immutable storage for Azure blob storage. Wow. Right. So with blob storage, you know, you can write two blobs. And if you write a blog that are exists over rights, the existing blob so you can update it and you can delete them and all that stuff. So with this policy in place, and you just do it in the portal. It's very simple. Or of course, you know, in the, in the manager, you just basically can write and read, but you can't modify or delete interesting. And so that's really cool. Because, you know, if you have like financial institutions that are medical records, things that can only be appended, you know, that sort of data source. Idea. Yeah. Then then you can do it and it's pretty easy. I, I set it up. I set the policy and there's two ways that you can do it. You can use a time based retention policy support, so you can store data for a specified interval. So it's essentially right, only for that particular time period, and after the retention, period is expired, blobs can be deleted. But they can't be overwritten so, and then you have this legal hold policy support. So that's kind of, like, if you don't have a interval that, you know, it's not known you can manage it yourself by sending a legal hold to set that immutability until the hold is cleared. And when it set blobs can be created in red, but not modified deleted, and you can use tags to, to set those things. So it's pretty cool, and it's very easy. And I just did a, a sample demo to, to. You know, prove that it works as advertised and it works great. And he basically tried to update a blob or delete a blob, and it says, no that would violate a policy sorry exception, and the I love the idea that even after the Paul the hold is done. You can never modify it. You can only delete it right so against days because why would you ever modify it? It's, it's some source of truth, whatever that may be. That's right. You can't modify it. You just add another one, you say this update that one, you know, that's the insert only the journaling method. Yep. Cool. Cool. Nice one. Yep. So that's what I got who's talking to us today. Richard grabbed comment offer show twelve of forty one which we did with one Jimmy Bogart back in January of two thousand sixteen are we're talking about mature open source projects, because let's face it, Jimmy is a mature open source. He's probably the most mature. And this is three years ago. So the common is also three years. Goes through Brendan Parker who says as you guys discussed, I think the best contributor to an open source project is someone who is actively using the project might typical pattern when needing a new feature from an open source project, typically wanted to get hub, he's check other people's forks out there. This even anyone else's added. A similar feature. I've knows such code exists. I'll fork the project admi- feature, and then at a pull request of the main repo in my code reference. My fork. This allows me to go about my business of leveraging the original source with my added feature. I don't have to put my project on hold while I sit around and wait for the maintainers to even acknowledge my Bullard west or go back and forth, reviewing, code, and making adjustments to meet the maintainers requirements which I'm not against. It's just I wanna go fast in the end, it makes no difference to me, if the pull requests denied or rejected if it is sensible and desirable feature in the maintainers can add it and I can remove my reference to the four. Point back to the main repo over the maintainers doesn't want it. Others are free to use by four which this is an interesting conversation around the culture of open source where you can go in different directions. And to my only concern with Brennan's approach here is what happens if the version. That's Dopp did that goes into the PR, the main branch isn't quite the same as zone that you're gonna see stuck on his own four could lose out on all the all the other contributions. The as you're gonna make the adaptation to go back to that primary version, my at it is interesting just to think, in terms of leaving forks out there, because people may value those variations, and he goes on to say finally, another thought that came to mind were listen to this documentation is often source controlled either two separate repo, or right in the main repo and a good way to contribute to projects where you might not be technically up to speed yet, is to contribute to the documentation. Right. Absolutely. Which, and I think the most powerful force on this one is at that. That moment while you're learning a project before you fully understand it. You arguably can write the best documentation, because you still remember not understanding it. So your method of learning it in explaining it if you can capture that you can write docks that people who know the project can't right. 'cause they forget what they don't know. So I think it's a really powerful contribution and also a great way to learn a project. Yep. Great superindent. Thank you so much for your comment at copies Toco buys on its way to you. And if you'd like copies to co by write a comment on the website at dot net. Rockstar com or via social media. We publish every show to Facebook and he comment there and we read it on the show will set you copies to go by and definitely follow us on Twitter. I'm at Carl Franklin. He's at rich Campbell. Send us a tweet because, you know, tweets are forever. Was forever. Diamonds, were originally forever, and get up is forever and sewer tweets actually. Yeah, you can delete him. But you can't modify. It's right. You can delete tweets. I never do that. I think that's kind of, like you know, Oops, I didn't mean. St. has been deleted. Yeah. Right. Come on. Really? All right. So let's bring back Jimmy Bogart. He is the chief architect at head spring, a software consultancy based out of Austin, Texas, where he tries not to melt eight months out of the year. He is an author blogger speaker and creator of several open source, libraries, including auto map, and mediator. That's MED A T are welcome back. Jimmy. Thanks for having me. Yeah. Thanks for being here. I am. I got to talking to you on the last place, we were in this world. And in Minnesota, I think it was and. And talking about messaging and sort of pitfalls and things, and I thought it would make a great show, especially because I'm up to my eyeballs and messaging right now. So I have a personal vested interest in sort of picking your brain and trying to figure out what a what the messaging pitfalls are. We, we did this epic show with Clements fasters on sort of breaking down all the Azure products that have to do with messaging or a long long. It was a long episode, but it was so necessary because, you know, the hear about these things, and they all sound the same event, hub event, grid service, boss. You know, nobody really knows I appreciate the history of that is that they didn't set out to make all these products is like I made this one and then solved this problem, but it caused that problem. So they made another one in it fix that problem. But it causes new problem like the it just felt like the, the mortality of software right that we, we just keep on building solutions, and are presented with new classes. The problem each time, right? I basically that that was our assumption going in that these were all sort of different teams overlapping, you know, work, and which one, do you pick, you know, it's kind of like a try, but that's not the case he laid out, you know, the specific uses for why these are the reasons for why these things came into existence. So, so I appreciate that. And if we would encourage everybody before you listen to this show to go back and listen to Clemens show, and we will put the link in the show notes for that. But where do we start with messaging pitfalls may guess, I, I have to ask, do you need it? Do you need a, a messaging layer in between your front end in your back end or your multiple micro services? For a lot of systems be work with now because you think the, the normal traditional applications, as just your I've got a web app and a database. So, you know, I just hit the button, it updates something. The database me. Call today. It's my first real interaction with messaging was. When I had a system that there was no user interface. It was just like file processing all over the place. We were getting files from the front end system files from the back end mainframe system. And we were sort of the intermediary between those two with all the all the brains of being able to do something. And this was, this is a loyalty reward system. So think things like that spy rewards are things like that. You know you give me your Email address your address in exchange for points. They the know all the history of everything you've ever bought, but of a trade off, right. So you have these long running services that, you know, things are gonna take awhile. We need the things to queue up. And then we'll let you know when things are done that kind of stuff. Yeah. And the system started off not doing any kind of messaging whatsoever. Although I you, I guess, kind of think of those fought files kind of message. But it started off as just a ton of batch jobs. Kranji jobs using windows task azar to wake up. See if there were any files to process, process them, and then go back to sleep. And we saw this in, we're looking at getting close to a hundred different Krahn jobs. They're all waking up at various times of the day and trying to figure this. It's gotta be a better way for us to, to this, because managing the schedule of all these things and trying to scale them out, especially was really, really difficult. Instead, that was really my first really big Faure into building a messaging messaging base back in. So we were trying to eventually get to one that was a lot more reactive to notifications in things that were coming into our system, and also being able to separate, the, the sort of parsing of file versus the work of the file because we'd have things like one hundred thousand. File drop on us. And you know, the, the dumbest thing they capacity work, a for loop for each line, do the work, right. But if I get to line nine hundred ninety nine thousand it's something fails we'd have to process, the entire file all over again. If little things like that. Like, how can we improve the overall throughput and the overall reliability the system that was my really first big introduction everything up until that point was ROY just in a web apps with the database? I guess that's a really good use case for the, the idea that sometimes a Q just isn't enough. Right. You need to be able to manage things in and out of that queue. Right. I mean messaging is basically, you know, queuing is basically messaging when do you need all the extra features that, you know, the service bus has and all that other stuff that acu- just doesn't, yeah. So the, the first thing that we hit was, I want to try to break up the work into individuals for discrete units of work. So looking at a file, it say, well instead of just processing the whole file every single time you're on the job. And I break that up and say each, you know, each set of work to do is, is that one message to say, let's go send us off to some kind of processor to actually take take that set of work in the do something with it. Right. So that you really separated the, the like the munching defile with a rope business logic happen dealing with that file. Okay, great. Let's do that thing. And the very next thing you rented to okay so where do we put the work? How do we know if the work is done or not, how do we manage? Each individual set of work, how to scale that out. So the simplest thing that could possibly work is to use my favorite old friend, a sequel book poppy, which is an amazing tool. I don't know if you've ever used assurance of for sure, yes, is far the file into the database Ospel, one hundred thousand lines might take two seconds, just ridiculous. And on top of that. We'd have that elastic column in that table with all the stuff we pushed it within with a flag, that just says, is processed, right? So our, our database became our very first Q term. It turns out, they debases make really lousy dudes. It strikes me that what you were describing of that file was it, it was a kind of q to it had a bunch of things that needed to be done in it, and you just pick it up and put it in, in the database, so that you can process, a little better. Yeah. Exactly. We, we, we saw that as in our case it was flat files just delimited files, but it could have been x amount while, you know, we have an array of XML elements and we, we deal with that. But it was it was a list of messages delivered to us in. Zip file that we pulled off an FTP server that was secured about sides. I just which is really lousy cute. And then we stuck it on the database, which also turns out to be pretty lousy for queuing. If you just like we we'd have some other job, there was just looping over every five seconds. Right. King table at the do I have any records with is processed is false. And I go do something with them, right? Not the best now. Nothing. That's it were you recreating your own Q solution, yet that lasted about two weeks, I can? Okay. Now, you know, we just want reasons that you know what this is. This is much better for queuing system. This is about ten years ago. So she was like, as your service about stint exists, or anything like that, in Ayrshire, even things like rabbit him Q weren't really FANG actually, don't know if that's true or not. But it wasn't a thing for us at that time. So said, what is the thing that leads us to deal with each of these sets of work one piece of individual work at a time? And then us being on windows. We saw that MSN Q the Bilton queuing system. For windows was the was that very natural fit to say, let's break these pieces into bits of work, send that message onto the Q in it have something on the other side receiver that message and doing the discrete set of work. And then we try to use the API for Mexico and it's just a just pretty awful. It exists in as thing in dot net. But it's a wrapper on top of I, I don't even know underneath the covers, so that's really I can roll out a little history for you. If you like. Yeah. You know, I would love the. Mike Microsoft's MSM Q is implementation of IBM's m q series series right from like the eighties. Yeah. And it was built directly against windows, so the dot the dot net. Wrapper is a rapper over com. Calls down to the wind thirty two man like it's exactly the ugly a PI. You think it is that hurts my ears out? Thank the pants out a lot actually. Well, I'll include a link to the docks about message queuing, but even the docs, say, don't do this. Oh, they, they stopped talking about it around twenty twelve art to for reason, like they're gonna they're not gonna break anybody. But you know, you know, a products old when it has a separate section on com. Support. Right, right. Yep. Yep. Registry cleaning. And so, do you think I, I kind of get the feeling that these messaging systems like service bus or whatever, are meant to sort of alleviate? The bottlenecks that can occur. When you have a really, really high use system, you know, millions of users, lots and lots of transactions and messages flying around, and you need to be able to manage those and scale them is that is that pretty much. Do you think why most people would look towards a service bus? I, I know that your use cases a little bit different than that. But yeah, I mean I it was for the I guess the other times that I've, I've used something similar is are those cases where we insert a row today, debates in have that is process. Like so in this case, we move very quickly to Emmerson q, but then I looked back, and so the other systems built if you. We, we actually did have Acuna systems. It was just a poorly implemented one on top of database. We have this flagged said, whether processed or not, in fact, I mean, most of the most of the e commerce systems it used today have some kind of system so that when you place an order, it's not it's not literally processing order, when he picked the button, there, some kind of signal to a back in processing system that takes that in runs from there. So one of my first jobs was on a cart. Checkout order processing team, where at the time we we weren't using Cuba, we were kind of a poor man's cue which was injured around to the database with in this process. Lag in a back window service that just polled every second. The see were their orders. The didn't it be processed in the take them in pushing through the order processing system, and then where you pulling in Java script to see, when, you know, the user can get the. Hey, congratulations message. Everything's good. Or did you send him an Email or what did you do? So in that case, we, we did something. Well, there's a specific Naper this pattern. So just independence called the claim check pattern and the general idea is that, you know, you you're going to go to like a doctor's office or filling out some insurance information you go to the front window and heavy philadel- form. So you fill out the form, and then hand the form to the person, and they do a quick check to make sure that you filled out all the fields and in the hand you a ticket gate now. Please sit down so in our e commerce website. That's what we did you hit submit. We're just checking to make sure that you filled out the fields. Right. But I don't really care if you know, if there's a cat's walking on your lap in your keyboard or not. That's doesn't matter. Just the have you filled out the fields and then I give you a little token back that says, great, I receive your order. Here is a number. There's a here's a ticket to say, this is how you get back my order. So you get redirected to a page. It says, thank you for your order your order status. Is ending and that was right. You just how that everything else from there on out. Just email. Right. Or like are they're kind of a synchronous notifications. It says, when we see this in modern e e commerce systems now to k, thanks for your order. This is what we saw that you ordered. Yeah. They have done anything yet. And then you get another Email with it's been processed than another Email when they've been able to do the payment, and when they actually ship it and I love that. Yeah. I did you feel like you're working through q. Now there's a that works really. Well, if you don't have to inform the news or get user feedback right immediately in case something goes wrong. So for something like I was working for. Computer manufacturer here. And if they ran out of computers, they would just make more of them, and send them along, but that's not always the case, that's a whole other section of their website, which is for refurbish computers. And so you could have the problem that two people at the very same time, click the button to add that thing to the cards, and go to check out and try to purchase the same physical item. So we could have this problem where we couldn't just make another computers, like, no, this is a real physical, good that they can't, you can't sell to people, right? And so you see the other you X patterns start to show up so things like ticket reservation systems. So when I'm buying a movie ticket, there's that little timer countdown at the most stressful part of any website is like you have two minutes to fill us. All right now, fell the sin, and it's doing it is doing these kinds of polling or ping, the back that, you know when. I don't want to sell this the seat in theater to someone who's credit card is working. Right. So I really need or it's been flagged for Fatah whatever. So when I sell it, I actually do need to have it back in system that is doing the stuff and have some way of, of notifying the front end that this overall workflow process is complete or not. Right. So that gets into a whole bunch of you X patterns to be able to do so like. One one you mentioned was being able to, to ping from the front end. But now you've technologies like web sockets signal are so you can write directly from the back end notify the front. And if you're if you're trying to scale up to begin with, you know, that has challenges of its own, right? Oh, exactly. So I think if things like turbo tax tax, at least in the states is the thing we have to do to fill out our taxes every year, and you're going through all your formation and then you get the very end. It's like okay, go ahead and submit my might tax form and they put this really pretty animated gif, that's like checking for deductions seen. If you're gonna get audited doing this address verification checking this checking that. And if you right click that it's just a static if it's not actually doing any of these things that's terrible. You checked. He looked dotes. Oh, how do they feel the system like you know, I finally? Sister giant live. It's all a lie. I was like, the, you know, the, the old story of people complaining about the elevating slow, and so they just gonna mirror and no more complaints. Right. Favorite variation on this. I can't remember but it'd be Cleveland airport where people were complaining that bags took too long to come off and the answer was to make the cord or to the baggage claim longer longer. Yup. As long as you're still walking. You don't care, right? And so, making the corridor long enough that by the time you get there, the bags forty come off. That's fine. Didn't actually speed baggage handling just kept people walking. Yeah. Right. So actually, it does that does bring up the first really big pitfall that I see folks run into that. If I have a synchronous action, we've been reaction with the end user. But that's going to generate some kind of as synchronous action in the back end via messaging is not lied to the user about this thing that's happening. So something like Amazon. When you click place order, it's very explicit that this orders, pending, or if you go to airline reservation you click order you click purchase ticket. You don't say your tickets. It doesn't say your ticket is issued. It says tickets. Brendan doing very explicit that this is a small synchronous interaction. That's kicking up a larger back in Iraq Shen. But we've given you is a little bread crumbs to say how can check the status of my order. So as long as you're very explicit about signing that interacted Bradsher. But I also think these are I like these are business conversation to of how we communicate with our customer. I'll absolute sense of. Yeah. Airline, tickets every time you check a flight. They're not actually seeing if there's tickets free or not. Right. They're just giving you the flights because it's too slow to actually check for the tickets. It's only what you because most people look, they don't buy. Oh, yes. It's mainframes all the way down. So only when you actually buy that they go check to see if you got a ticket, so you have to, to deal this messing. But I think it's cheaper to disappoint a few people once in a while with the story, we don't have that ticket than it is to, to check every time. So then it becomes a business discussion about. Yeah. We can't do everything the context of a single button, click. So how do we do with the message of the real world? And the answer is usually mile. There's some kind of business rule and policy in place. Yeah. Here's a fifty dollar gift voucher, something like that, since sorry, something didn't work. At least a story, right? Like I think about your scenario with two guys trying to buy the same computer and one of them's gonna get the messages. I'm sorry, the computer's gone. So it all has to come back to the to that user experience to make sure that we are being honest with the end user about what's going on. And then taking the appropriate pattern based on based on that is so in the case of a finite thing, then that's why these places now have a little countdown timer saying what we're doing is we're reserving this for you, but you only have x amount of time to be able to actually purchase it because we had this whole back system that nasty process it or if it's an infinite resource than we'll just make more of the thing, that's really the back end system. That's doing the order processing, but you can submit orders all that long. Yeah, it's just livery date. Might be different than you hoped because you're further down the pipeline and you. Yes. Right. Hey guys, hold that thought for just a minute. While we take a moment for this very important message this episode of dot net. Rocks is sponsored by data dog, a real time monitoring platform that unifies, metrics logs and distributed request traces from your cloud, containers, and orchestration software tracked the health and performance of your dynamic containers apps and services with rich visualizations, and machine learning driven alerts to start monitoring your container clusters sign up for a free trial today, and data dog will send you a free t shirt, visit d dot dot net. Rocks dot com to get started. And we're back. It's dot net rocks. I'm Carl Franklin. That's rich Campbell. Nets Jimmy Bogarde. We're talking about messaging pitfalls and use cases and Wendy's. What and why in this is all fascinating stuff? I'm I'm thinking about service bus in particular. I imagine, I know you have experience with that, right? Oh, yeah. Demystify dead letter queue for us. What's people misuse that for an I said that specifically misuse? Yes. So the dead letter queue is a place where messages that can't be delivered a process. Go to be held until someone can make a decision about them usually administrators something like that. So if you imagined I've, I've, I've moved all my work offline and all my work is not represented represented with individual messages, what happens when something goes wrong with one of those messages. Let's say there's some air processing. There is a bug in the code or there's something something arrived at caused us to not be able to process. It message message camping out of order. You were expecting this one before that one. And you got that one before this one. Exactly. Win wrong. And now you have to make a decision. Now, the great thing, is it because the work you're trying to do is now written down in a message. Then I can then have some kind of policy that says, what to do when those things go wrong. Right. Which is different than like a web outright. If you click the similar button in a web app, and you get that as peanut yellow screen death. That's it you probably not feeling good about things, right? That's you're done. Yeah, I just give you my credit card. I'm gonna go now. Call my Bank to make sure you didn't screw me over here. But now if if that worked to be done is in a message now, it's, it's written down. It's terrible in a queue, then I can decide what to do from there. But what happens when things go wrong? Well, it's written down. So you could just say, let's, let's try to do that work again. I'm so a lot of systems had this kind of Bilton retry ability, Najer service about says this as well is if something goes wrong. Go ahead, keep trying to deliver this thing, but we can't do that forever. If you do that forever that my processing would be stuck on this one poison message that prevents any other messages from getting run, and there really isn't any kind of retry stuff. Like poly has just goes boom, boom, boom, boom, boom, in retry, the number of times, right? It's got some basic stuff Filton, but it is extended either response is extensive all that. You can you can have a, a very complex where you try if you wanna have exponential back off with random jitter Bilton to make sure that if I have contention of a resource that there are some, some spacing, it could be extended, however you want. But it is something you have to decide like, right? It's like when you create these, these cues you have to decide what how many times should actually retry this? Sometimes the answer may be don't retry it. I'm so that is one of the other pitfalls that we haven't, you know, once everything's able to be written down in a message, then everything can be retried. So we should make sure that the work being done. Can't actually be retried. So if my life. That might Q is connected to stripe to payment. Sesing probably make sure that I don't charge the customer twice here that, that would be bad, but sometimes stripe is down. I mean, there's a reason to retry. Exactly. So in those cases, we want to be able to be retried, but we don't want to retry forever. And so that's really what the dead letter queue comes into play because this work is written down in a message. I can now say okay now that we've tried this X many times, let's give up. And then now move that over to a dead letter queue, but you definitely want that exponential effect. I've seen someone say will retry five times. It's like will you treat? Tried five times twenty milliseconds feel better now, right? Yeah. Thanks financial back off as much, you know, with, with total number, and then. Yeah, circuit breaker kicks in or something. Actually all of those things, and we, we for some of them are complex systems. We wind up tuning that kind of configuration on a message by message basis. Wow. That is if, if, if my message coming in is to interact with some awful integration API, that when it's down, it's, it's down this down hard, maybe for a day, while that we say, well, what we'll say something goes wrong, try five times, and then wait a day. So have have some means, like, just pushed aside, and try again tomorrow because it's not coming back anytime soon. Yeah. That makes sense. And that is all configured in Azure. You don't have to write that code yourself. Oh, that's gonna be that's gonna be code that you while in your consumption code. That's writing. What I did is what I did was. I use. I created a consumer for the dead letter queue itself. And so, anytime something came into the dead letter queue. I got it and then just implemented. You know the exponential back off in there. So is that what you mean by extensible, or is there, something that you can do without having to write that code? Will you do threat that code it somewhere? There is a way to configure the retrial policy inside of the adversaries. Let's client. So the peace that's actually consuming depending on what your client is on koso- if you're using something like Azure functions, they don't oppose that to you, because it's just really meant to be a. Here's the blocker code. That's consuming a message and get out. You don't wanna get too much too much complicated after that. So you, can you can then go up more complex falsies than do exactly what you're talking about, which is your goal is to not touch the system. Right. Because if you have to go poke around Q's to see what's going on. That's just not a good spot to be in your digging around an avid sites. Like what happened here? She's not a fun spot. That's why they existed ameliorate that stuff. But you're you're sorta hit it as Carl. I think it's really interesting. It's like, does it make more sense to retry multiple times on the primary Q or if fails once throat to the dead letter and we have a separate service, just picks up the? Letters in works with them as the retry mechanism. That's what I do. And it can get complicated cases were what we'll do is them. We get a message and we'll have a policy of doing an exponential back off. But sometimes it went away, just like just, just wait an hour because it's this, this, this consumer is picking API. So we'll do is start to incorporate message headers. So we can just like I look at it, it's like, you know, a someone just mailed me something and something went wrong. So I just write a little note on top of the envelope, but says try again tomorrow and put it at school. So. Got to do that, just says, okay. When we wake it up are dead letter queue processing will just put that message back on the Hugh itself to let it go through the regular processing again. And then the error checking will then be looking at those headers to say how many times have tried this thing. I would spend five times in the last five days, that's too many times. So let's, let's go to our permanent failure Q, right? We went up happening kind of levels of those. The temporary letter where it's retry mode, and then the permanent where which is a I've given up just to look at those manual intervention. Yep. Yeah, it's interesting to think about those two stages are gonna kinda like getting out of the main pipeline if it fails I time especially if you've got like ninety nine percent success. So, you know, not having anything hanging around the queue because it's grumpy just let the, the, the working stuff, work, and handle the, the occasionally, failing stuff separately. But then you end up with two tiers stuff, you're still trying to make work and stuff. You have come to inclusion isn't gonna work. One of the things we had a hard time really conceptualizing was, we went to we're building web apps. We I don't think a lot about the, the way I s managed all the worker, threads and requests coming in. And I owe it just you know, they just did it stuff in manage, the manage, the, the work between passing requests, individual threads and actually getting the request developing in something like a core. I'm not really thinking about multiple requests, coming at the same time when I go to a Q, we'll all the work stocked up. Right, physically Q. It's not really. Think about okay if it's something like order processing. There's an SLA the user expects my orderly process, within usually twenty four hours. In fact, some of them actually stay on their website. It will be processed within twenty four hours one hour. What whenever my babe? So now now that I've got all those work sitting in a backlog, I really think about how am able to process, the sets work in things like Ariza going on, that's preventing to successes from happening. So then get how do I break this work apart? So that the good work goes through. And the bad work is off to the side. Yeah. The troubled work stays isolated from the non troubled work. Yep. But I mean this is another aspect of queuing it of like law. And even before the cloud, we were doing this with cues where you could see if, if the cues the correct number of items in Q is always zero. And as soon as the numbers larger than that you're thinking, do I have enough processing resources available? So we started playing with automated. Elasticity by monitoring the size of cues. And if you saw cute continuing to grow, you word keeping up with it, that it made sense to light up another instance of a processor to help, drain, the q. If you can actually see this at in real life, too. So one of the great things about messaging systems. There's, there's so many real world metaphors, if you've ever gone to a department store that has a single cue for all the registers, right? When that cubits gets back up. You hear someone over little megaphone meeting another, you know, Tanya, come to, I'll four for to open up a new register, so the opened up a new processor to get people through that line. Yeah, the drain it, it is literally, the physical benef- station of q. I liked doing these drawings for business people too, because you could talk through the different steps of an order and talk about the business rules for each one of them of what do we do about this? What do we do about this? What are the what are the policy decisions of each one of these things? Sure. So one of my other first big mistakes, I did was when I worked through that set of stuff is a developer didn't. I really want to have to deal with a lot of cues. So the I the stupidest thing that could possibly work, which is you should actually check to see how stupid, it is sometimes, but I put every message in a single q. No, no. I know like obviously, that's dumb. But you know what I'm developing? Luckily, everything the few was always empty because I was still sitting at five, and it went through fast. But then when we dumped, you know, files with a hundred thousand messages, then things backed up a little bit. Right. I want all the message just from all files into one queue, then it exceeded the twenty four hour period for tomorrow's fouls came in. That was that was a fun, little on my heart is. Willin in these, it's not like cues really cost anything per se. Right. I mean they really are logical constructs now the queues aren't. But the code or the construct, I right to consume the cures, right? Were case too. I wouldn't have to develop another window service to able to pull things off. Another Q can I just didn't want to do that? Remind us on the thing, deploy and maintain manage gonna just have one thing that comes in, and that's the traffic manager of always different processing around the do everything service. So don't do that. No. Well, this is a granularity game to write that I can launch more machines, more VM's or whatever. The packaging solution is so that I could spread the workload. This is how you scale. Right. Is that granularity? And then you start to have different cues for different SLA's that you expect. Because really, it's the worker. It is your, your lever say, I can have more consumers of this message on Q, but I can't really look at the message is on the queue and say, oh, you're a special netted may go fuck you out because you're special, I think, in this file out, and that's exactly what airlines design, you have different things for different priorities. We don't stick everybody when Q and say, oh, you're a triple platinum number, let me go get you out of the middle of that queue and you got front, 'cause everyone gives you dirty looks things like that instead of have, you know, here's replying, here's group to his three or four has their own different cues to be able to. To say, you know, which priority set of folks gets to be born I right? And you have enough education strategy to make sure the right message is in the right q. When the case of the states, I pay fifty dollars and get to the head of the line, through the TSA pre check. I guess there's not really an intellectual regular messaging, but you have different cues for different SLA's. Right. And really you're, you're, you're cute assign is really about the work really understood it work to be done. And the SLA is associated with that. Have you noticed that the TSA pre line sometimes is longer now than the regular line? Absolutely. Because everybody's gonna make a choice like premium passenger line or pre checked line. Do I wanna take up my I wanna take off shoes? That's it. Speed through the line, like which went actually goes faster. Now, the real problem here is that don't have a test for pre check. Because if you there's an awful lot of incumbency happening in pre checked. That's what slows it down. Have you been to this line before sir a your practice line? They say you don't have to take off your shoes and everything, but people leave their belts on. And they're, you know, the things that set the metal detector off. And then they gotta go back through. It's like no, you do actually have to take off your belt. Yeah. Yeah. We, we were talking about Azure service bus did you mention end service buses. I know you use that as well as sort of a modern dot net service bus. Yeah. So this is a nomenclature I'd say problem with this is your things like Azra services if interest, but you also other enterprise service buses on the market ESP's, so there, all share that same term. Now in service bus definitely a reaction to the ESP's of the world because tried to promote this concept of smart in points dumb pipes. I did that. I wanna put my business logic in my queuing system. I really want my business logic in the things consuming the messages so that I have the most flexibility in control over how actually processes methods and not have that code inside of there. So at this point, I don't know. I they're, they're really bleeds. The lines are blurs the lines. Yes, Flers lines between these different kinds of tools, but something like in-service bus now we've used that for I've, I've used for ten years. Or so now because the very next thing I had to do when building a message consumer, which was okay? How do I pull this thing off the Q, and how do I process it? And the most the messaging libraries out there that is the, the raw libraries to communicate with the transports this like, when you want to say poll accu-, and pull the message off and do something the really low level. So the thing you get off Q is just some kind of object it contains the headers and contains the body and the body is just a binary. That's it right in southern you have to decide. Okay. Now I got a DC realize this into something and hopefully DC realizes correctly. And then you have to pass that to some kind of processing logic to process, it opened have to worry about something going wrong, so path, some kind of retry policy, so for us, we using service bus because it implements all the main messaging patterns for. That is all the kind of communication counters, you'd expect in any kind of messaging system, and encapsulate them in such a way, so that we just deal with those higher level primitives, and it's encapsulated all the inner workings of the transports behind the scenes. Nice. So something like out out of service is really going is really starting from the, the raw and then moving up towards having a lot more useful client functionality. So you don't have to decide they don't have to manually do civilize, something from Jason, for example, without your service boats you can just say, Yep. I know this is this is one of these things they will do realize that from Jason into just some kind of D, t o or class for you behind the scenes it could do that for you automatically cool. I guess the other aspect is whether or not you're using cloud. Yes. So we being consulting. Ideal just a large array of clients who are just really ferried sages of, of cloud. Adopting see. So I've got some that are like can help us with our mainframe, because our workforce is retiring with the next two years. And you kind of need to do something about it all the way out to we're call native, you know, we don't have any servers whatsoever. This doing how VM's it's all native platform, as a service things we were building in top, Azure AWS. So having to deal with all those, we, we also use service, as a way to say, we want to have a common library in primitive that we work with. And in that tool can then work with the different transports available, whether it's Q, or rabbit him q, or as your service thoughts, or whatever the next one might be that we don't have to keep relearning all these different clients. This kind of just a common nomenclature interface that we can deal are you running into customers at want multiple cloud solutions? Likely don't trust as your we want Amazon as well. I talked to folks at want that every so often is another really spending the money. Oh, is a separate question. There's so many people that want it. Yeah. That's the, the resources to be able to actually support that everybody wanted a hundred percent up time until I gave him the Bill for it. That ninety is fine. Yeah, I used to run this with product companies, and say, we want to support sequel server in oracle any idea, how different those two. He just raised dramatic. Do you have that case? But for for us, we really try to leverage the platform components in the cloud services, we use yet because that's, that's really you're leveraging the cloud to its full potential. So for those, we tried to move them into if the well, first of all, just really understand. Can't use case is there really a business reason why you're trying to do this on the cloud solution. Yeah. Sometimes there is. Sometimes it's a they're selling. They're selling a product, and they want to breach, as many customers as possible in their out is their customers have policies that say, only Azure, or a only a VS. Right. So they have to kind of dumb it down a little bit, and go more for infrastructure solution. That is maybe VM's or maybe containers say, okay. We'll we won't be able to leverage the native thing, but we can kind of dumb it down a bit. Or it's more infrastructure, as a service, the EMS are container. And then we'll just deployed that way. Yeah. I think that's the only compelling argument. I can imagine really the I don't trust that cloud that cloud. I don't think it's a good enough answer that either one of those clouds is better than anything. You've ever run. Yeah. I don't think it's a good enough answer. But that hasn't stopped doesn't stop in the end if they're gonna pay for it. Exactly at it is interesting to think terms of that bus abstraction so that you can then just put a provider onto the issue services. But that speaks to this, what is the overhead of all of this, a synchronous queueing stuff like do you see an overall dig rotation in performance per transaction from this? That's why we're really. I'd say really specific about win. We want to put this kind of, but the kind of peace in place, because it has to be some kind of compelling business argument, because you are, then you're going for money, one system, where everything is in process. Now, there's, there's two systems and even worse. You don't have a UI into the system. It's just manages Q. Right. The there's a there's a dead letter queue. So I built systems assuming that any message I create can wind up in the letter q so you have to make sure that there's someone that is able to respond to something being in their espionage administrator available. And how does it affect the end user, we don't want to, we don't want to have them at an a screen where they're staring at that spinning gif forever? Right. Because they've never received that back notification. So you have to have to design for explicitly upfront and make sure that you have sown able to manage the back in components as well. And I appreciate your thinking that, that means that each time you create a new message you just created a to do item that is managed that message in the dead letter queue. There's an assumption when you're building web outs, right? Yeah. But something goes wrong. Kinda struggling soda. Well, sorry. Yeah. There's, there's a log message somewhere. Maybe there's an app incites entry, but don't anything about it. Sorry will monitor the urge somebody will look at six months. Right. I was messaging everything's written down to actually deal with the problem. So we've had cases where before he put this kind of letter Hugh policies in place that we had this third party. If you go down. And now we've got a hundreds and hundreds of thousands of messages scenario and we I hooked up notifications to our Email, and now we've filled up or Email inbox right? Yeah. You make that mistake. Exactly. Once you were thinking this was how often could this possibly happen, right? Let me tell you their minds me that story you told on dot net Rocco. Yeah. About the texts loop, we I got test messaging in the nineties, and we got an API so that could automate setting a text message and my first test, Royal, I set myself thirty two thousand seven hundred sixty seven text messages. And that was an old Nokia candy bar phone where you had to delete each text message, one of the time, just note in the river, just you've done, yet, twenty because that's the range of an unsigned integer. So you probably had a counter that. Yeah, overflowed it would've gone forever. But it hit the over the overflow, the fun part was calling tech support to try and fix it and nobody knew what I was talking about till I got to the tier three guy. And then I split. Oh, you. Yeah. You're that guy. I'm going to delete this for you. Don't do that again. Too funny. Yeah. Great. But, you know this all of these infrastructure all of these architectures they, they are amplifiers of RBIs stakes. Right. Like you just it's hard to think through all the possible revocations where we build this stuff. You cannot escape your bugs. They're sitting there in that deadly queue waiting for you to fix it. Yes, do you talk about this at conferences? You're going to be speaking about this stuff at anytime soon. I did one a while ago. I haven't done it in a while which covers his kind of concepts because a one, a lot of mistakes, people make is not having good metaphors in their head, as a moving to building, these kinds of systems. So I had to talk at NBC while ago that was around building up real world metaphors for these interactions. And these patterns so that if you do it on a whiteboard. Imagine people being the communicators of these messages back and forth. Could you step back and say is this makes sense or not with is actually working real world? And if it does, then you have a very strong likelihood of succeeding in the system to do Bill. But if you look at it, it's like there's no way that any business could ever run like this with this kind of communication, then it probably won't work for electric systems either. Yeah. I feel we're just scratching the surface to because there must be so many. Gotcha. 's that were not even beginning to talk about when you just talk about service bus and other over the next whiskey. We can talk about it does seem like most of the pitfalls are architects. Actual right? That if you, if you have somebody on the team that's been through this stuff before you can avoid you can design away these sorts of problems without having to fill up your deal q. It is one of those things that it just requires you to, to kind of go through it the first time to go through those, those battles because the war wins and understand his these kind of things that you have to put in place because there's nothing. That's just this rink wrapped solution is just at alma at insights, and you're good to go. Right. It's never. That's now you can add app insights, and they say, hey, we're getting a denial service attack. Oh, that was me. Sorry. Our own system is attacking us, right? Jimmy. Thanks a lot. It's been great talking to you. Thanks for having me catch up with you in Oslo. Right. That's right. I'll see. Oh, then. All right. Take care. And we'll see you next time on dot net rocks. Dot net. Rocks is brought to you by Franklin's net. And produced by plop studios, a full service audio video and post production facility, located physically in new London, Connecticut. And of course, in the cloud online at P W O, P dot com. Visit our website at DOT any T, R, O, C K 's dot com for RSS feeds downloads mobile apps, comments, and access to the full archives, going back to show, number one reported in September two thousand two and make sure you check out our sponsors. They keep us in business now, go write some code CNN time. And.

Carl Franklin developer Richard Campbell Connecticut dot Jimmy Amazon Hugh Europe Westbrook Warsaw SLA Sorolla TSA Vancouver Jimmy Bogart
The State of Security in the Octoverse with Maya Kaczorowski

.NET Rocks!

50:53 min | 7 months ago

The State of Security in the Octoverse with Maya Kaczorowski

"They call here with a very special offer for music to code by. You can now get the whole twenty track collection for nineteen ninety nine wile electrons last good my new store at pope dot e dash junkie dot com. That's p. wwlp. Dot e dash junkie dot com. And get it now before. I change my mind. Welcome back to dot net rocks. This is carl richard. Cavill been time. Isn't it although we can't be sure twenty. Twenty one came came without incident because this is december twenty first of this recording and so so. I'm tom. shipping is complicated. Yeah well you know if no stood dominance was right. We might not be here right. You might not be listening to this. I'm just saying. I think the only thing that was right was boil your water before you drank it that probably you can count on. Hey i got something to share with you. My phone over. Better noah framework. So we're all the music our man when he got. I gave myself an early. Christmas present. Richard did you. It's a samsung forty nine inch curb. Gaming monitor and the thing is huge. Yes it's so mean question number one. Does it fit on your desk. 'cause they're really that is very big. So here's what i have to do. I have my. I have my laptop right right and that's on my desk and i had to push this to the back of the desk. Put a stool behind it. And then i have a john bash. Mine new orleans book. That's high enough to just match the height of the desk so the back of the standard sitting on the front of the standard sitting on my desk. Wow yeah it's totally. Just the hacky janke wide like your scanning left or right like you was can't take the whole screening at once the twenty by nine right right. I haven't found anything square in big enough to put over both my desk. And that book so i could raise the height of it but i guess if i had a piece of wood. I could do that right now. It's like it perfect but my laptop is just a little bit too high to cut off the middle of the of what i can see and your laptop can drive this thing at full bore. Let me tell you something. I plug this thing in and just hit windows p. and it came up no problem and what is it fifty six hundred fourteen forty like it's it's yeah you're not a game or the are you coating on this thing. I'm doing everything on it. I'm doing adobe premiere video projects doing audio projects. I've got so. Let me just tell you that. The experience that i had first of all right now. It's about a thousand bucks. Eleven hundred six. When i got it the first time the first time it came broken ball. No yeah and there was a little crack in the screen. And i had to send it back so i bought another one in. Ask for a refund. Whatever setback so just immediately bought another one. And when i went to buy it was three hundred dollars less than it was. I ask okay. But it is a hundred twenty hertz. And they do offer a two hundred forty hertz version. I'm not sure my laptop will be able to our that. But i don't need two hundred now an attorney down anyway right like realistic. Yeah yeah now. I i do love it. That's awesome right now. I've got zen castor on the left. I've got adobe audition on the right. I've got my main screen. Which is my main browser. And then i've got the other things that we're looking at in the middle of the curves not too weird for coating or anything. I that's interesting i love. it's cool. It's just not say. Merry christmas to you man. What a great gadget. Yeah and write something. You'll use us almost every day so we spend money. I've already been a lot more productive just than having you know things off to the side. And i i find myself saving certain work until i can get back to my big screen. Yep like there's certain classes of work. It's more efficient to do it on the big screen definitely awesome. That's what i got. Who's talking to us. Comment office show sixteen twenty five the one we did back in march of two thousand nineteen with victoria Alma ova when we're lending we were talking about putting security in applications. We're going to talk about security day. And that was just a really fun conversation we had with her and derek smith brought up his point again from two years ago. She said since i'm in the middle of retrofitting an existing product or application. I find a lot of parallel with this discussion on security. My current work adding accessibility compliance to an existing application. These are both cross cutting concerns that tend to get overlooked in the initial build out for the same reason. It can slow down and complicate the develop processes idea of adding accessibility and security. After the fact are really hard but when you look at them in the beginning intimidated by them. And i appreciate the challenge of shifting left so getting those things involved earlier and bringing the discussion back to product. Management and road mapping so we can plan for compliance rather than kick the can down the road for some future team to deal with. And you can tell. Derek was the future team. It's like why am i doing this. And he finally says since you're in we're in london when you recorded this do all the websites say because of gdp are this site uses biscuits rather than cookies. No no they don't but that's funny and now that they're not in the eu anymore. They're going to stop complying with. Gdp are question. I don't know the answer to so. I've been binge watching gordon ramsay in and of itself but you do have to get used to a certain amount of personal insults. You know coming out of his mouth to people who are doing things the right way you know and he he likes to call people you donkey right the donkey comment. You don't another one. Another one says chef. Here's the basil. And he goes dammit. It's basil how many times do i have to tell you. Donkey looking for a fight now is about trying to get good radio. I guess he's not like that. It's clearly the shows was they make money off his his loud mouth. I liken it to being a like a drill sergeant like you know you put on that uniform. Your drill sergeant. That's your job is to freak people out in scare them into compliance. Someone's there's a message there for security as well. maybe. I don't know i just feel like taco. Thank you so much for your comment at copy. Music co buys on its way to you and if you'd like a copy music owned by right at comment on the website at don iraq dot com or on the facebook because we publish every show there and if you comment there we read it on. The show will send you a copy music. Oh by and definitely follow us on twitter. I'm at carl franklin. He's at rich campbell. Send us a tweet just because yeah we just. It's a new year. yeah well. Let's introduce our guest showing maya catts. Rousey is a product manager at geared hub in software supply chain security. She worries about the software. You depend on the you. Didn't write yourself the security of open source. Welcome maya thank you so much for having me really excited to talk to you about. Everything's gone on. It's been a tough security or twenty twenty ending with this crazy hack. Possibly by state actors. I think falls right in the area. You focus on protecting source code. Yeah solar winds and certainly been quite the news item. No kidding me just just thinking from the business perspective. Says it doesn't matter if you're a high security company if you have a high security customer you're at risk exactly and i think that the solar winds deputy looking at you know commercial third parties so how you how you manage your vendors in your third parties that you rely on. I think it's what i'm focused more on when i'm interested in as well as open source Dependencies that you have so you might also use a component of open source somewhere in your supply chain in your environment that That you don't exactly know how it's maintained that's what i that's what i worry my for myself about well. We we always presume this idea that since it's open source you couldn't hide a piece of malware in there. I think that's really true though you probably could not. Everyone's studies every line of code before the check. It in rain. I mean the idea with open source is that with all with more is all bugs are shallow right that if you have people looking at it more people looking at it than Fine security issues. The reality is not necessarily a lot of people are actually doing those security audits or going in looking at what they're using I think there is. There is a benefit to being to being opened in that. It's like you said it's harder harder to hide something. explicitly Yeah without a doubt end stuff is verifiable too. I also appreciated the get. Hub sends me security reports on a routine basis about out of date libraries and in those kinds of things like hair. Easy things you can do to improve security at any given time. I don't know if you're directly involved in that. Yeah i believe you're referring to dependable which is actually am one of the products in my in my area. Okay depend about. We'll send you a email or web notification or or known of notifications if you prefer But let's you know when you have a dependency that you're that you're relying on that has a known vulnerability and we'll send you a request. Update that dependency to a known good version for that. It's awesome please. Please merge the. Pr's that would make it. You actually have to accept them to. That's no fun so every year get help. Does this state of the octa verse at document. Which i think in the old days mostly look how many people are using data but clearly it's expanded over on the run as side. I had a conversation with nicole. Forest grin not long ago talking about the view of devops from the context of get hub. But i gotta think you have a security professional an amazing view of software security with all these projects flowing through gap may have some really good dan with nicole's research. You know some really good insights into what's going on. So what did you learn what Cookie learned from this report quite a few things. If i look at some of the top findings one of the ones that was most surprising to me is the the rate at which people fix. Vulnerabilities is not necessarily depending on the severity of that ability interests. No out so you would think that. If i have a dependency that has critical vulnerability. I'm going to fix it. Faster than independence a ability. And we're seeing is that. Yeah it's a little bit faster but you know just a little bit faster not much faster so. The severity of the vulnerability is not the the major decider. How quickly you can actually fix it. Which was interesting to me. Do we know what the major decider then is in my head offices. My hypothesis is having good automation and and Good working principles your team not being silent etc the whole devops mentality but we didn't explicitly explicitly look at that We did find though that automation does accelerate your ability to actually Fix issues in your environment so that we just talked about repositories that had dependent. Paul requests patch their software. Thirteen days sooner versus thirty three days. Plus thirteen banks one point times faster than those. That didn't roy so using automation helps helps. You shift left's helps you deal with issues much faster in your environment. View got an automated pipeline. You're less concerned about pushing those kinds of changes down. That's definitely true right. If you have good. Hopefully very very few security changes should freak you out because it should be relatively easy to make those changes in your environment. I say that relatively. I'm continuously shocked by the number of developers who choose to make changes their environments when they have no testing place. You're gonna test your disgusting in production. Yeah that's i mean. That's a very risky way of testing. Yeah for sure. That's one way of testing. Yeah well yeah. I mean i the account tell you. How many times in advising development group with ago we really don't have a lot of test is like i'm here. I'm here to tell you. That's very normal but fixable like you can get to work on that strip. It's yeah the i. I can't believe how often the main thing i say is old developer now is. Don't worry that's normal. Nobody has enough test. Everybody needs more tests. You definitely need more tests While that that's an interesting thing that criticality is not the real driver here that the ease of deployment it seems would be the the bigger one it. Can you even make an assessment of how vulnerable most software is. Is that a metric. No we can look at like for example. What percentage of software has known vulnerabilities. But then there's always unknown vulnerabilities right so so some of the interesting interesting data here that we came across the first one was. Just how reliant. Everyone is on open source which you know we all know. Seen a handful reports have said this. But you know pulling the data from get hub at that scale really brings a message home so something from sixty five percent to ninety four percent of active public repose us open source software which is huge variability is really based on ecosystems. So you seem java ecosystem needs a little bit less and things java. He's a lot more. Which if you're familiar with javascript. Polls independence for everything. That shouldn't be a surprise. When you're looking at that data from the context of someone participating in good how does that sort of bias towards open source because get yes and you can help have a lot of commercial enterprises commercial customers as well. We're not looking at. We're looking at active public repos. That's that's fair in the sense that if you're an enterprise you might have a lower use of open source but what's publican open source and people's no small projects tends to reflect. Developers are also doing at work okay. That's really interesting. And so there's always been a conversation on on this show especially is plenty of dot net developers a distill. Aren't that comfortable with open source. And so we've sort of had this belief that there's lots folks just aren't using open source at all in then you know but it's time you're seeing this huge amount of open source being. I would think of it slightly differently. You know how used to say like ten years ago. it's like oh i don't use the cloud. We don't use the cloud and it's like well if you're development credit card you're using the cloud it's like has a command line. You're using source like what to tell me you. He used dropbox. You're using the cloud rain just because he don't think of it as the cloud not think of it as open source doesn't mean it isn't either wonder how had projects that have opened source them that no one's really acknowledged that they do. I think people don't even really think about it But it's there anything is like it shouldn't scary right like you should keep using open source and supporting open source and developing open source. It just being aware what's in your environment and being aware of the security issues that those dependencies might have horrid Other elements from the city report. Where is the security port living. Now can we see it. Yeah it's an octa versus dot get hub dot com Love the clean. I think the other interesting findings. You're talking about you. Know how secure is open source overall right if i if i look back at at that. We said active reposted have that you don't endorse philippe to the active re bows at received depend about alerts so those are alerts that they have trouble dependency on average. The the the expected chance of getting a security alert in one year is fifty nine percent while so expect it to happen. Not a normal thing and then of course the question is response time like what would you do about this. How long before you get in there and serve fixing stuff yeah. Uranium me to the to the kind of other major finding which is the overall time to find remediate these issues so we also time to find. Because i'm getting up has a a tool called jewel which is sort of like a really powerful data analysis tool that. Lets you look for security vulnerabilities. Right you can say hey. I'm looking for a rollerblading that takes type of input inputs at this kind of output. In lemme query my code basically to find that thing we were looking at open source code in looking at how. How long took between when vulnerability was introduced to when it was actually disclosed In in that environment rame and looking that life cycle not just looking at the time to patch at the end of the time to detect plus the time to patch the to detect. We're talking more than four years to find a typical ability to end being being disclosed and from there the community will fix the vulnerability in open source in just over four weeks and then it takes Ten weeks to let us know that there's vulnerability in his about one week from a user knowing fix while while the four years one is the one that grabs me like ray holy men. That's a long time. So if i make a mistake in code essentially introduce vulnerability we're not gonna take it for so long. I haven't cracked anything. Like the life of the data rate for years is probably if i guess like actually the low ball estimate because long tail hasn't hasn't isn't long enough yet for Take there is if it takes so long to detect something like yes. We can speed up the time to. We can speed at the time to alert. We'd speed time to apply of patrick cetera. We really wanted us. Eliminate that thing altogether right so like if you scan your code before you attitude environment right. You have a lot of tools now again shifting lap to do something in ib in paul request that has a huge impact. I would actually ends up in your environment so question. Out of left field I see that you also categorize the the different languages that the repositories are are using in his way out front. Does the language used have any impact on security. So it's a little bit it's a little. Bit misleading kind of stewart. Some languages because we'll have more vulnerabilities that impact wider amount of packages. But that doesn't mean the that the language is less secure as much as the language has a lot of dependencies in that in that language. So again looking at something like java script rate it doesn't mean that javascript is less or more secure than languages but Seventy three percent of active repos would have received that were java script would have received a secure in the last year in freight exactly and that's also related to the job because you have a handful of direct dependencies and you have like hundreds of indirect dependencies and so one of those ability than chances. Are you have a vulnerability as well. Especially if you know. They're they're linked via the cloud right instead of you know packages put actually into the repos. They're linked now. You have a special problem. In fact was just a couple years ago. There was an issue with one of the Java scrip- methods that somebody was handling in some repo somewhere and everybody was linked the url to it in all these apps went down or any pulled the library. Yeah he pulled the library. This is a few years. Yeah that's it. Yeah yeah left. The developer wasn't getting Compensated for it. Had a if i recall. This is before before i worked on on. This topic had a copyright debate with mpm where there was a company that claim. The name left pad in said. Okay you you have this name you can have library left pad developer got upset and pulled. Sorry i'm sorry. I'm completely mustn't messing up the story. They were disagreeing over So i don't know if you've heard of k. K. i k. which is a canadian messaging service right and The the owner of love had also had lab call cake kick got pulled given to kick the canadian messaging company in protests. That don't full. All of his libraries including left had not realizing left pat had such an impact on the industry. While we all found out in a big old hurry chewed three hours. Later until until the guy reverted. But it's also it was also a good a warning you know a good What do we call it. A lesson learned not to by url. Think so but then we had like espn and a few other scenarios where it wasn't pulling a library and making it unavailable but it was certainly like very noticeably having an impact on the ecosystem going back to that four year number thinking when you check that code in was it known vulnerabilities an unknown bala like i'm thinking about the the noticed that open. Ssh problem that had been in there for years and years but nobody had noticed it now. It's a known vulnerability to get to work on it but it was always there was sort of unknown. I don't know that we actually build code with known vulnerabilities for sure we do. I don't know if we could break that number out. There's very few. So ideally someone's scanning vulnerabilities in their code before they committed they all find it said I think today a lot of security works as a gate at the end of development. So you checking your code and then you have some tool that runs and tells you all the potential cross site scripting errors that you have excetera. That's known as fast Static application security testing the problem. That a lot of those time a lot of the time that gives you the information after you've written the code is not when you're in. Id's not when you're checking in the code. You're getting it as a dualist. You know two weeks later. You have to go back into that that you know that function that you haven't talked to attention to the long time and figure out what's going on and try to fix it not that of stuff and it just makes it really hard to security right The other main issue that you have with that that type of twelve day Is that is a false positives. It's really frustrating for a developer. To get told fix these ten items two of them arreola native or not right gets spend the same amount of time tries to figure out. That's not real great. Exactly there there arguing tools indac- Zastava i asked in etc More grimm's that are helpful. I think the general tendency though is is to shift left rate. Make it in context for the user. 'cause he doesn't wanna fix it after the fact and i think that's a very reasonable request while the code is still in your head to be able to get hints that there are more secure ways to do. Things are at that same way that then telecom helps you write better code in other respects could totally visual studio bias here. Couldn't we get those same kinds of hints around security issues which are spending like. How often have you attempted like autocomplete name of function. And you like get have typo. But he tells you that you have taito right that in there while the big thing is with the typo. The code won't compile red squeak. I get a lotta red squiggly. The idea that i would get a security squiggle is really interesting to me that that that is much subtler concept frame to this is a secure thing to do. This is not a scary thing to do. But i mean going all the way back to the comment. We opened the show with derek way. Or was he was retrofitting security and an accessibility rather than bringing them in the beginning. That seems to be the norm. Unfortunately i just don't i just don't know if are we there for a better way like what are we gotta do to actually prove that. I'm not gonna put all of that debating in my own head it's like we. We need to be better here forgetting here. And there's more and more tools in this category challenge. Just like we worry about devops in combining development and operations and we always have this trend around the term dev ops in securities in there. Too roy security actually not that special rate. Ideally all of all of the tools that you wanna have in your development pipeline should be continuously integrated into pipeline right now. It might be security by Acceptability like you just said Idea building the pipeline in every bill is goes through those tests to hits inaugurated for those things as well you mentioned in the report and we opening also with this around the the solar wind attack this is. Are we getting to a more dangerous time. Do you think in software that there's more intentional back doors and malware attacks into source code so we did look at The type of vulnerabilities whether they were they were on purpose or whether they were accidents right and we found that me. Seventeen percent vulnerabilities. October seventeen percent of all new abilities that we looked at were explicitly militias but they impacted a very very small percentage of the overall High with only only a Impacting zero point two percent of the alerts for vulnerable dependencies. Okay so most of the issues. Eighty three percent of the issues are just errors are just developed developer heirs right so most of the time should be thinking in terms of errors but yeah there other is such thing as intentional. Maliciousness here certainly. It's all over the news at this particular moment still recording this in december for publication in january. And we're in the middle of this. We still don't even fully understand the scope of the solar wind attack. You think there's a difference between You know someone trying to insert a back door or some some additional functionality your processes into a tool versus someone just straight a publishing malware rain a lot of the time we talk about supply chain attacks in the attack. Was i'm trying to typo squatting. Which is taking a common package name in changing a letter or changing and underscore to a high fin or that type of thing in publishing Aware at the at the alternative location right. That isn't attack pertain. It's weightless sophisticated than someone joining your project actively contributing to it etc right means similarly like it It'd be kind of like someone Solar winds distribute on a. Cd-rom right in my time back to the day. Somebody in the mail sending you a wrong sita. Rama helping ear that. You're going to plug it in. I actually going in and attacking solar winds. That's a much more sophisticated. Attach well the apocryphal story of the stuxnet attack against iranian uranium enrichment was that they left you. Esp keys in the parking lot. People stuck them in machines. Don't true in a apparently it worked. Clearly it did but this is a much more modern thing and using the internet. It's the way that we deploy software. Now it's taking advantage of the trust that solar wind customers had in solar winds that that's a very deep concept but you think granted solar is not an open source project. What they're trying to imagine being able to check in malware through a pull request and not being detected. I think it's possible. I've seen people accept pull request with cursory looks at somebody's just not paying attention debts. Which account i'm looking at your security report here and maybe you're already said this. Forgive me if you have. Seventeen percent of vulnerabilities are explicitly militias but trigger. Just point two percent of alert right. Yeah people are paying attention. The upside there is like we said they can the the very small amount relatively limited impact of that hat although when there is an impact boy it could be a walker. Insult someone interrupt. What moment for this very important message there. Tons of vpn providers out there. You've probably heard of a couple of them in some of you may even use a vpn. Before but i like to do research on my sponsors and i can only recommend brands to my listeners that i believe in and i can say with full confidence that express. Vpn is the best vpn on the market. Here's why express. Vpn doesn't log your data lots of really cheap free. Vpn's make money by selling your data to add companies vpn developed technology called trusted server. That makes it impossible for their servers to log. Any of your info second is speed. I've tried lots of vpn in the past many. Slow your connection down or make your device. Sluggish i've been using express. Vpn for two years now and my internet speeds are blazing fast. Even when i connect to service thousands of miles away. I can still stream. Hd quality videos zero lag. The last thing that really sets express. Vpn apart from others is how easy it is to use. Unlike other vpn's you don't have to input or program anything you just fire up the app and click one button to connect. It's so easy. Even mama franklin can use it and it's not just me saying this wired the verge c net and many other tech experts rate express. Vpn the number one vpn in the world. So protect yourself with vpn that i use entrust us my link express vpn dot com slash dot net. That's xpress vpn dot com slash dot net and get an extra three months free on a one year package again. That's xpress vpn dot com slash dot net. And we're back. It's donna rocks. I'm richard kabil. Let's carl franklin and we're talking to my now get your last name maya carrizo sqi catcher ski very close. Cats are ascii. I apologize From get hub talking about this amazing state of the diverse security report in and. I'm just grateful. You getting insight from all stay to help us be better because you of course are getting examples of very successful secure software flow through hub as well. I presume it's also just a beautiful example of communication with taxed and pictures and graphics like the design of this report is beautiful. It's really well done aniko horace grant. Who led the research didn't awesome job app. She's good about thinking about talk to to to death folks Around these things at work courses focused on open source Any of the quote unquote worst vulnerabilities. You wanna talk about in twenty twenty Things go down. We've talked With open source we. We did a case. Study here which i was kind of interesting On you know what was one of the worst films and wasn't necessarily because it was a particularly critical or were publicized von Look at one of the most impactful bombs this year it was soon be twenty twenty eighty two three it was in load ash and it's single handedly responsible for effecting over five million rios on get up whilst yeah. It's one of the most widely used. Npr packages your own ability and prototype of project pollution in that in that package and we send alerts to over five million reposted. Tell them the patch awhile because of course it was detected it was fixed but then everybody has to get that new version of low dash to really put that away right to what we were talking about earlier. Attempted to identify it. In the time to develop a fix in the timber media is really just like how how quickly can users go ahead and patches up. So did it take four years to pick up the prototype. Pollution and just looking listening took eight years so that vulnerability had been in code in the field in millions of projects for as much as eight years. Young yikes this is alabama's nothing like equifax and people make fun back. Facts if they want to or whatnot but like so many vulnerability so many dependencies. It's really hard to keep them straight well. And who has enough resources to have folks. Constantly monitoring at these comes in critical. Is them decide how important they are relatives here app and then get them fixed as quickly as possible. And now that. I'm going to. I am not going to defend equifax but I look at it as a without go is like we're all walking through the same forest here. It could happen to anyone really eight years. He's this is scary stuff. Of course it takes that long for that. Many people use the software right. Like that's sort of the side of the reason. It was such so impactful as it had been around long enough. It's almost inevitable. It seems that a successful peace offer widely spread in existing for some time is going to turn up a with a vulnerability at some. That's that's pretty resident. That scares me a little bit less because if it's really successful than you hopefully have a lot of people looking at it using riot. Maybe they have a more established security team etc. I'm a little bit more rate about the small to medium open source projects so in these situations where they've identified malicious injections of malware in software. Do the people that put those pull requests in. Are they trackable. Has anybody ever been prosecuted for doing anything like this. I don't know about the legal side of it but at least for some past incidents Espn's like we know what the name of the person was. Yeah about it. Though whether or not the prosecutor something entirely like but laws are funny give up has their gap has their credit card information because there or their bank account information. So it's possible. I suppose no not. Necessarily i suppose you're right. Yeah that's right just because you're contributing to a report doesn't mean you have a repo and you're paying for it Ouch yeah but you know the the legal prosecution That's ever going to stop anything. True the the the idea that we can detect and repair in short short amounts of time while we get back to this ability to eight remediate quickly and again with saw whole automation story. The you know there's a conversation about shifting left and we said it a few times there. But i mean what does that really mean. That is just folks getting together earlier in a project like. There's no nothing to do with an existing piece of software except refit. Yeah it's not about a particular tool or or anything like that. It's even a specific process. Say just the idea of rather than doing something later in your development process later in your domain pipeline just to do earlier. Like if you're gonna run. We talked earlier about scanning. If you're gonna run a scan for deployment anyways why not run it before built right. Were when before. Pull request in anything that you might wanna do right If you think about like the checklist of things we need to do before you actually pushing the into production just doing some of those sooner any move to the leftist kind of shifting. There's no there's no definition of what specifically as you know if you go from only scanning things in production to doing something at deployment time. That's already shifting labs. She brought limited time to bill. Time you've shifted more. You know if you go to pr if he would id some companies. You have these. These design reviews things like that. We actually talk about what you're gonna go build before you build it in that in that situation. Hard of shifting left might be like bringing. The team is part of that discussion to help. Challenge somebody assumptions. You're making a window as clued. The scanning tools in the pipeline. I certainly seen it where it's only when we were close to going to v one then started inserting those tools into the pipeline. And start doing those tests. Rather than from the first builds. On so yeah. That's certainly a shift left thing including your security people in the conversation early and you and your accessibility people for that. Most is a good idea to or at least putting that on the agenda because sometimes not a separate person. It's just have we thought about what is what is the security plan. What is the accessibility plan. I see as well right. Well i mean part of that. I have to wonder with everything that's happened in here are show twenty twenty one like when did these laws get expanded is it feels like there's a weight of you know beyond the gdp are in the eu to more of the world wanting to take privacy and security more seek seriously. What's a what's a bug door. Yeah a buck above door is. I'm not sure how we define anti octopus report off. The top of my head above door is when someone finds a bug and leaves it there with the intent of exploiting later. Oh so it's not necessarily maliciously planted like a back door would be but a bug but it's just a it's a passive aggressive backdoor. I guess that's what you're you know if you're thinking about commercial software when someone's selling you if i'm a national agency or dealer. Whatever whoever these people are. If i'm selling you a zero day which is a former ability that it doesn't have a patch on on day one so it's noble on on days. Zero is a. It's a bug door. it's something that is exploitable that is useful for me to to to know about but that is not currently patched in that environment not sanitizing inputs right Buffer overflow protection. You don't miss have specific exploited to poke at. It's like a by discovered in. You can't tell if it was an accident or intentional so like back to where might be someone. Purposefully put it there but above door might also be like i know somebody put it here on purpose or not. It's hard to trace back. Who put their tufted for to be provable. In any as a data seems to show is relatively few people intentionally building vulnerability in the software. It's unintentional vulnerabilities but in apathy in cleaning them up to yeah. I mean all of this. Data has the giant caveat. That like you must be you know. Here's the percentage of things that are vulnerable for the vulnerabilities that we know about rain. And here's a percentage of those willing to believe that religious for the ones that we know are malicious right like. It's it's really. It's really hard to categorize what someone was trying to do in if there were trying to evade detection factor. The criticality of the vulnerability doesn't seem to motivate begs the question. Why do we categorize. We also changed the scheme ryan. Cds has changed what five years ago and change the severity of a lot of bugs. On which i think arguably has a lot of confusion at least for for the security researchers and developers that i know who would like are like really low or is it a medium or is it. Yeah yeah it. Does that really mean anything. One way or the other freight. I'd certainly when it comes down to you you fix which you can fix. That doesn't seem to hazardous alot had the critical bubble up to the cto in there. Now pounding on your door's well. I don't know the answer to that. I think they're not that i'm suggesting or not. Still score them just. The scoring doesn't seem to really matter a whole lot of the really interesting one for me from this is a lot of companies will have a policy around Time to fix right. So the meantime to resolve must be you know less than thirty days for critical less than ninety days for i less than a hundred and eighty days etc etc in. It's like you look at the data and like it doesn't matter than like this. All kind of stupid works mustard rating these crazy policies. That don't do anything legit Because this is actually a more complicated matrix in this because it's also difficulty to fix. Franks yeah this is a low criticality but it's a trivial repair. Just put it in like. Why would i weighed one hundred eighty days to do that shouldn't yeah but i mean i think it's not the saying don't fix is four hundred eight days but it's like you're trying to prioritize and so you bump other stop the real question is how often does a vulnerability bump a feature in sprint and that is a tough night is a survey problems like have you done this. How often does it happen. Is i think it's relatively rare are hard to happen. It's just another item. But when i think of what. The biggest sort of impact on software like going all the way back to windows. Xp s p to right when bill gates put out the word about we need to make windows more secure and took a non trivial chunk of the windows team and had that mostly senior folks to to focus on reengineering security windows and it's a couple of years and impaired the development of windows like it's one of the things that leads to the visted debacle is x. Two because it was such a huge fix. It worked for better or worse. Well how often do a mid size teams know amid ban project mate that sorta come it to. We got a burn down the set of vulnerabilities. I really that's a tough question to answer. But folks listening have been there and sort of said. No we prioritize that. Like if i was a project lead looking at the vulnerability strain coming in and figuring out what i want to any given sprint. And when do i hit. Let the big red button. Stop everything you're doing. We gotta fix this. You'd be anything that's along these policies come out of a world where you were patching servers right where you actually have to take the off line and then do something with it and apply the patch and why in that does require time Schedule down time. Sunday at two. Am whatever happens to be today. That's not the reality that's not. You don't need that kind of time to fix Ability so and in the process is complete different right. You fix it in your the next version of whatever you're playing and then deployed you already have this sort of continuous deployment scheme going. Where new versions coming out you. Even daily are are more often than that. So it's just yeah you don't have to make that big commit but i think it's the flow of features versus the flow of fixes to be able to prioritize those things because in the end you didn't work on something else to work on repairing his father ability saw some features delayed. Because we we fix the things. I don't have a problem with the prioritization. Like that should go on. You would hope but to what degree you know. We're never bug free. I think we're never vulnerability for either. You're you are gonna have to triage some point. Yeah great It was very interesting to look at the package. Ecosystem data here to just see that. Is this the compared composer to maven n. p. m. two new. Get to pie pie to re gems. The the the the vulnerabilities has do with age of the different package systems. That older one's just naturally have more projects at more risk to to to The vulnerabilities it could be something we at that. I might opposites primarily based on the number of dependencies right where it's normal reader pull in a lot more dependence one environment than another so something like think java script for example you might have only ten direct dependencies. But you have six hundred eighty. Three indirect dependencies are transit dependent. Just huge right. Which likely now but like it's still seeing that number is absolutely flabbergasting and something like I don't know python six direct in nineteen indirect New gets numbers crazy low. But but i think that might just be the nature of the way new. Get packages are bill. They don't have as many dependencies. Exactly chattanooga six direct and out. We're not sure of the indirect cause the transitive it's only measured files so we don't have the data for new get there. Yeah so that might also data hall to okay. That's fair i don't you. Don't want to advocate for. You should be using new york because it's numbers of show low. That's not what this says. Now you should be using whatever language you're familiar with so that you introduced fewer dependencies and as long as frequently updating. I really don't care us. Yeah well regarded what language news frequent updates keeping up to date his important high justice vulnerable on any of these given language. The language the end the platform sack is not. What's going to save you right here. Your diligence in the your willingness to put your time into this stuff. I guess is the thing it's gonna save. You hear what a great report and terrifying at the same time. It is awesome. It's terrifying. but it's awesome seeking to make one of these every year. My i'll get one every year i believe in the last five ish years is number five on. This is the first time we put so much detail. The security we had a couple of secre metric last year with nicole. Here now mom. I suspect this is going to be an ongoing thing. I'm very excited about this. Your help our. What a great way to help the industry understand itself. I'm grateful this is cool. Yeah thanks maya. It's been enlightening terrifying and lightning and often all at the same time. One of the three reports two others to read as well to know so thank you thank you. Thank you so much for having me. Thanks so much all right. We'll see you next time. I'm dot net rocks dot. Net rocks is brought to you by. Franklin's net and produced by plop studios full-service audio video and post production facility located physically in new london connecticut. And of course in the cloud online at p. wwlp dot com visit. Our website is dot net ks dot com for ss feeds downloads. Mobile apps comments and access to the full archives. Going back to show number one reported in september two thousand to make sure you check out our sponsors they keep us in business. Now go write code. Cnx time asking.

wwlp carl richard john bash zen castor Music co rich campbell maya catts Rousey carl franklin adobe nicole ray holy
WinUI 3.0 with Ryan Demopoulos

.NET Rocks!

58:39 min | 1 year ago

WinUI 3.0 with Ryan Demopoulos

"Hey this is Carl. Are you struggling to replicate the bugs and performance issues. Customers are reporting Plug Ray gun into your web and mobile applications right now in diagnose knows problems in minutes than ours kiss goodbye to having to dig through log files and relying on frustrated users to report issues make your software swear development life so much easier using ray guns error crash. In performance monitoring tools every software team can create flawless suffer for experiences for their customers with ray on. Try It free today at Reagan Dot Com welcome back to dot net rocks rocks. This is Carl Franklin. And this is Richard Campbell and we got a bunch of really good shows coming up that we've already recorded. But we're squeezing this one in for our friends at Microsoft Chris off because there's some new stuff we want to talk about. How you doing Mr Campbell? I'm you know having a good time this week. Is this show publishers during ignite so you know this is a late to ignite stuff. That's why this happens. Yup It looks like we're GonNa get Christmas off man. We got enough shows recorded from all the things we've been doing that We're going to be able to just not. We'll have to work in December. Well that's good. I'm I'm working hard into summer myself. I've got four blazer workshops coming up one on November twenty fifth and then three in December two of them in December. I decided to move to Saturday because you know some people were complaining that Mondays you know they work and all this stuff so I figure Monday was the best day because if you ever go to conference you know. They usually start things on Monday and then people can take a long weekend if they want to. Just go to that thing but You know being a taking a a a workshop in your underwear from home is kind of a weekend. Ken Think for some people. So anyway. I put the dates out there. If you go to Blazer Dot Phoenix Dot Com you can see all those in all the dates and I. I think the Mondays workshop went off without a hitch. Did one I well. I'm going to but as always yes. There's a little time shifting going on time shifting as at this recording. It's done awesome. I'm sure you're Ogden. I'm sure I did too so some really cool stuff that my friend Steve Strong sent me that I wanNA share for better. No Framework Sorolla crazy music when he got. This is a demonstration of how when you build these software agents and then give them the ability to learn about their environment and Basically they set them loose on a hide and seek game so you've got to seekers to finders and they're in this virtual world and there are blocks and objects and stuff and you know after over Over one hundred thousand rations this sort of intelligence emerges and they learned to use the stuff in their environment armant as tools to help them do their job. And it's just really really fascinating to watch this video but even if you don't watch the video they have these little video clips obs- where they show You know how the how the the Haider's in the seekers manipulate their environment over time you know starting with just random movements and then Getting smarter and smarter and smarter and it just shows you. How may I can be used to? You know with training to help these intelligent things. Whatever they are robots or algorithms just learn how to do a better job at what their goal is? Yeah I mean they've made it very anthropomorphic so it looks. It appeals to people their characters right but So we're we we project intelligence on things. Oh yeah come up with solutions. Yeah we do. Yeah but If you take if you're really interested in the I part of they actually show this at the bottom of the blog post of What algorithms they use and and Strategies and how many permutations and batches. That they run in order to get the convergence. It is pretty pretty awesome very interesting. Yeah I mean it's still a simulation as sense that everything moves smoothly nothing ever gets stuck like grocer than this and you're seeing the results of many many many iterations of training. Yeah but the times the simulated learning is always really interesting. It's an aspect of AI. That's emerging very cool. Cool Man. Yeah so he's talking two US today. Richard knowing we're GonNa talk about you know. The window cited the development stack today. I grabbed a comment of fifteen fifty two which we did back in June of twenty eighteen eighteen With the folks from no ideal. Yeah that's the Universal Windows Platform to everything converter essentially. Yeah they they they started at the WPA level but then they had built this crossing probably would even make Web APPs from it so it was really interesting yep not to mention android and IOS APPS APPS. Yeah exactly and and Brian Richards has his great comment. Because of the broad thinking around this it amazes me given the fairly recent rise of web assembly into a viable platform that you know we we also did a show on Weei and blazer maybe you heard of it. are all reaching mass awareness. Interesting so quickly. There is a huge interest in enabling traditional quote Zamel of's to reach mobile web and mobile device without having to learn javascript. Frameworks CSS. I don't know why you'd hate to learn those things. But it makes a lot of sense to empower the vast group of deb's with desktop focused experience to build smart mobile clients and the Courage Directory of Web Assembly performance seems to indicate that it will soon perform as well as the major javascript based frameworks not that we look. javascript based frameworks for their performance. Right right but I get what you're saying here brine and on another note between the number of deaths reaching the web and these new tools and the power of the open disconnected cross platform web options like electron APPs and Pwa's it seems like the native APPs becoming less important five years ago the only viable option seemed to be putting an apple store and paying heavy platform taxes. Right the Dow. It's possible to separate bit deliver and market reached choosing free or near free tools. I'm sure Apple Google and others have plans is to either resist or pivot with that movement but I expect that the next few years will be very interesting shift in the options that concerns for most of the listeners companies. Yeah well tonight. You know the the thing about APP stores irrespectively. He's talks about the the platform taxes the fees that are charged. That's not the big thing. It's the delay in delivering software. That's that's what kills me. You put something into the store for for checking some days later it comes out. You can't be atch out with besides the fact that you know. Maintaining native APPs on mobile devices is hard. We've been through this with with our APP. You know I look back at that. APP now is kind of a mistake mistake because you need to keep team maintaining an APP literally monthly to actually keep it functioning expensive. We're in the midst of a conversation. Tation with humanitarian toolbox. Right now about Mobile Athen we just bring in that thing. I've it's like like you don't build a mobile APP and you're done you pay team forever to maintain that. Yeah I've Found that the combination of Blazer and PWA tools MHM and mobile. CSS makes a great mobile APP. You know especially for for this kind of thing although I I think that once Client side Blazer is baked. That's going to be even more compelling it'll it'll be interesting to see how that works out fast enough. Is it light enough like. There's lots of challenges there. I always look this feeling around affect all of these options as we're trying to find a better solution. The current solutions aren't good enough and certainly thing APP. Stores aren't good enough. who finds anything on an APP store anymore? There's so many apps and it can't find a thing we got to market directly. That's what actually really works. That's what works. Yeah yeah but I think and. I'm not saying that the APP stores were mistake. The market has evolved right. We got to sort of critical mass. We've sort of realized that that these walled gardens of their own problem too. And we're going back to more of an open web mindset around these things so you know we're just seeing wave of the industry moving you know APP stores are good if you're stuck at an airport and you've got Wi fi. You got two hours to do nothing. You're on your computer with you and you want to just go find finding new game right. Just go to the APP store. Click bestselling games. You know read read through the top ten pick one and download and play it right right. I can see that I've never done that but I get which I know what you mean. Yeah and I've rarely done that but but if you you have an APP for that supports your online app you know that supports your event or supports Your Business. You're GonNa just give mcteer consumers and say here go download our APP you know get this. Qr Code or whatever and get the APP. Yeah you've got to commit to supporting it. I mean it kind of like the conference taps being in the conference is just because they go away right after the end of the conference people are GonNa look at anymore so you get a chance to refresh of where. I don't have to do that Kanda maintenance. It really sucks is when there's a new feature or a braking feature in a new S. T. K.. And all of a sudden your optimism work and now your customers easterners have to wait for the next iteration of that APP. The which could take weeks classic one is I an update that takes up. I mean that happens a lot yes anyway. It's kind of off the messages. Just even interesting to see me. Brian singing the same way that we're looking for ways to use the language we choose news to the desktop or the client that we care about right and we don't want to support a lot of different clients. We don't have to like one code. Base is good to you. Know there's still that we're still feeling around Gera- so Brian thank you so much for comment. COPIES DECO by is on. Its Way to you. If you'd like a copy musical right a comment on the website at Iraq's dot com on facebook we publish every show there and if you come in there and I read it on the show will send you a copy musical by and please follow us on on twitter. I'm at Carl. Franklin he's at rich Campbell sent a tweet and we'll see what intelligence emerges nice or doesn't as the case may be. Hey let me introduce our guest. He is Ryan Dimopoulos and he's lead program manager for windows. You I in his main job is to get when you. I three out the door. If you've never heard of win you I stick around. We're GONNA talk all about it. But part of this is product working. Reckon part of it's working to get when you I open source and Ryan works closely with other teams at Microsoft across dot net in visual studio to make sure when you I three we'll be great when it ships welcome Ryan. Hey guys how's it going. Good good yeah. Thanks for Thanks for having me along. I am really looking forward to to do this job yeah to. I don't know why we haven't heard a win you I like. How does this happened? Well it's probably because we don't build universal windows apps but if if you're a w. p. developer would you know when you is yeah if you're a you WBZ developer. You likely know when you I is and But I'll maybe take a second to explain it for folks who aren't you to be developers. Don't know yeah so when you is kind of like. It's kind of like two things right now. It can be a bit confusing so today like in the market and released we have to. And when you I two is a set of controls and features for Zam developers that use the Version of Zamel available. WBZ So it has controls like abrogation views previews of like like that and we created when you too because we wanted to be able to ship controls across different versions of windows. So We made this control library and people sort of optional. Use it today but when you is three is kind of like a whole different product on so so what we're doing when threes instead of it just being a control library were expanding that library to be the entire Zamel. Ui Framework Whoa nuts. What's including hearts of the composite and the input stack in windows tents or basically lifting Zamel and composite around the input stack up at a windows ten and shipping independently of the OS? And it's got everything and it's not just controls it's like data binding all the all the goodies that you wanna go and use that. That's why three and it's not out yet. It's coming next year. So okay right so that'll probably come with dot net five. Yeah Yeah it's GonNa we're Sorta we talk about it in terms of dot net core three right now but yeah it's going to be a line to dot net core three slash dot net five that sort of continuing dot net all right because we have high expectations for that version being a sort of universal in the biggest sense of the word version right. Yeah absolutely yeah yeah it's right now you'd developers use dot net natives answer to us when you is three you'll you'll be using using Dot Net core three and then eventually done at five that means the U. I will be cross platform not yet so so the first thing that we have to do. And what when you I three is focused on is just getting it out of the House so that we can at least ship to all versions of windows ten ten and ten x right. So that's like what when you when you have threes about We know that there is a lot of interesting cross-platform And we do. I like. I will now formerly declare that we do not have plans for cross platform but we are discussing it and they were trying to figure out what we should do that. We know that there's a lot of interest so and we're listening to the community about it and a lot of factors by which that could happen to Yeah that that's actually really the the reason why it just requires a lot more time in discussion on our part once you step into cross pot you're stepping into a much more complicated area but like there's there's a lot of ways do cross plat right. There's like you can do cross Plat but you can have different friend in you. Is there are frameworks flutter where every pixels liberally the same. This framers like react native where you are using the native controls but you're writing one code base and so like how you think about the identity of of cross USS Platte four something like when you why that's a that's a complex topic and that's something that we haven't yet because we're pretty focused on just trying to get out of the windows ten operating operating system and and lift up above it. Yeah I always wondered about the U. Part of U. W. P.. Yeah Universal as long as you're on windows windows windows yeah that's right. Well you know there was like windows mobile which like you know unfortunately is yeah you know Kinda gone south there but like lands ends an xbox and all that stuff. Yeah so that's what the four. It was like universal within the Microsoft Windows Fan. Yeah sure I also if you say Zamil you I rather than WPF appea- S is there. A distinction there. Yeah well Yeah I'm trying to use that term carefully because I know that all these terms mean a lot of things so so You know when you I uses like Zamel Syntax it's Zamel based UI framework and in fact the syntax is its lineage. Kind of comes from WPF. So there's a lot of WPF `ISMs in there Silverlake `ISMs NS alike written WPF. Silver Life Zamel you. You'll feel feel reasonably at home with when you is syntax. Whereas something like salmon forms at the different syntax? It's like Zamel but it's it just feels different so but this is not. WPF proper this is a separate Zamel. Ui Framework it's written in C.. Plus plus lost and it's in Rados ten right now and that's the yeah that's the thing we're lifting. Yeah I think I bring it up. Just because I don't know that folks understand ended there are flavors of Zamel and that this windows one is a native windows it's itsy plus plots it's not built on on dot net the same way even though they're pretty much interchangeable and they're not absolute and pretty close. Yeah are pretty close. There are some differences and it can be annoying that there's differences you know one big challenges that we run into is like if you just like go onto google. And you type like Zambia Button. You know you don't know whether you're going to get the silver light button or and its properties or the W DEF it definitely can be confusing but generally speaking pretty close And and you you mentioned the native things so that's a pretty important thing to mention here. What's what's really excited about exciting? But when you I three is it's implemented natively and it's going to be we're trying to Had it be the path forward for like any windows developer so dot net is awesome and actually the majority of windows developers developers. It really does rock and but there's also a pretty healthy portion of people who donate people's plus we've got. NFC crowd folks like that people. Who Used Cam cuddle directly when you I'll be useful in those projects too so It'll be it's literally for every path forward not just going to be extending it to the win. Thirty two APP model so nice. Yeah so it's not just you. WPA worked fine for you to be great people who have you to be p investments. They'll be able to bring bring those forward and use when you three But for people who WHO WANNA stick with win thirty two and have win three two investments? You can you can use when you three natively right in those APPs to all right. So let's talk about going forward about when you I three. What can you tell us? Where do you WANNA start Well maybe I'll start with sort of like the road map for three. It's a little fuzzy. But you know we talk a little bit about that. So you know you guys mentioned ignite earlier we're I'm jumping on a plane on Sunday. Going to head down there. I'll be down to night. Helping our team released the win three Alpha so this will be the first release of when you I three. It's early. It's super early bets. It's like to call it. Kick the tire bits. It's not it's not something that you'll be developing like a real APP on it's got a restrictions but you know it's like our first. Hey we did it you know we we. We've actually been doing something for the last few months we've been lifting a whole Zamel platform out. So that appleby available add ignite and then once ignite wraps up the next big focus for us is to get the whole. Ui Framework Open source so so Right now when you to. which is the control? Library is open source. We've got a get hub repo and We actively engaged with community But the rest of the framework is not open source. And so we're going to be spending time on that and then we're going to begin previews sometime in next year and hopefully have like a full j release sometime in twenty twenty. So that's kind of like the the broad roadmap for Wednesday during the and this is also where the the flu inch design sort of manifest itself the fluent styles that we we saw. I guess it was a build or two ago they released. Here's this new approach approach. We WanNa make windows look like yeah exactly so I mean if you think about why we're even doing this at all you know the the Framework in windows ten the UBP's framework It's pretty great. It brings a lot of new controls including a bunch of controls that WPF never had it also brings fluent as you mentioned like in bodies like the latest Microsoft designed system and just like modern Saturn effects like acrylic and reveal. And it's got really great support for like touch and ink and like all kinds of different modern device capabilities and so but the the biggest issue that we had with that was it was for you to be the only and there were no. There's a pretty large audience of developers that just for whatever reason couldn't go to you to repeat you to be p has traditionally been a pretty monolithic thing. It's like if you take one thing Dick Everything and so What we're what we're trying to do here is the AH basically unlock value of the most modern Zamel based UI framework that we have for everyone so so just to be clear? Is it C. Plus Plus Code Or. Is it all Zamel. So it is written in C. Plus plus and you can use it from C. Plus Plus C.. Sharp phoebe a any dot net languages. Okay because I'm looking at the REPO. It just picked One of the you know calendars or something like that and all I see Zamel so are there. DLL's in the background around here somewhere. Yeah so there. There should be code in there. I mean you'll see Zamel because even we we write our own controls as a mixture of Zamel and also C. Plus plus for like the control logic. Okay So you should be able to poke around in there and go and see a mixture for example which is what you're seeing now but then also sleepless blessing there as well. Yeah but we we do not implement this in C. Sharp it's and implementing CPS and that allows us to be native so at allows us to actually actually service Any type of develop found some C.. Plus plus it's in common. Well there's one place where it is anyway. So yeah there's there's plenty of plenty of stuff in there. Yep Yeah and the Repo right now is. That's the that's the win you I to code mentioned we're going to try and get fully open source in winning three. So you're seeing control troll code. They're pretty soon. That is going to blow up to be a really big code base. Have the whole thing in the whole Shebang the whole thing so it feels like a very unifying story right that we've we've had a bunch of these different ways to build stuff on windows and it feels like you're trying to pull it all together and and and get some of that. I mean I'm I'm ricky ponting fluent just because I thought it was gorgeous and I don't see an easy way are seen easy way to really do that in my own apps chiefs for sure You know we we released Zamel islands which was announced. Well I think the latest release a happen. When was one thousand nine hundred? I always I always forget had to translate nineteen into into the release timeframe so it was it was is earlier this year and What Zamel Islands did was it allowed you to bring you? WP's Zamel like the framework built into the OS. You could pull those controls which were fluent controls influent design into WPF for a windfarm the But the problem with that is islands themselves shipped in the latest version of windows ten so you could only do that. In an APP that worked up level on the most recent version of windows ten and of course almost everyone in the real world is like well you know I I I need to support you know a version of windows ten years ago. What when you I three? We'll do is also includes islands so you can basically do a few different things you can. You can just take your existing. WPF FOR WINDFARMS APP. You can go and put an island in it that comes from when you I three sorta like come with islands. You put the island in it and you can. You can mix in that though. That new fluent went design. And what we're seeing with some of our early engagements with like Industry partners is. They're they're actually doing whole screens at a time. So they'll have like a big window Ndo that had just like. Oh I'm GonNa Redo this whole thing and they'll go and make it all fluent but if you don't WanNA use islands and you don't want to have that like sort of hybridization abrogation of WPRO and forms you can just you'll be able to use when you I three just directly you can completely ditch the WPRO windfarms code. If that's make sense for you so yeah. WPF can do that. When you I three won't be able to do will there be any reason to build a greenfield APP windows up with WPF? Yeah yeah the there will be something. I mean there are some things right now the WPF can do that. We have not yet put into three. That list is shrinking thinking but it definitely exists. Probably the biggest one that used to be true was Like data inform validation. We didn't have that in in the inbox inbox version of sample. But we actually will be having that when we release that when you I three so there's always going to be some thing but you know that this is getting and smaller and smaller and that means that the number of people who should just feel confident in in making their next eappen where three is gonNa get bigger and bigger nice. That's cool very cool. You Oh you know what are they discussions. We've often had around WPF's Amel and so forth is sort of almost too much much flexibility. That didn't the you're looking for more opinions on the way software should look at that we can we kind of fall in the pit of the success that there's a the same way that in the old windfarms days like file goes here and help goes there and the toolbar here like those kinds of metaphors. It's almost like we have too much choice when you confronted with WPF and almost too much choice in the waist coat it right. I mean so many different ways to do binding and they're all confusing that that I find it really refreshing to just we have the sort of simple binding that say blazer gives you yeah for sure. Yeah I mean in. I'll take a second to give a huge shadow to USA San said who helps to sort of organize our fluent guidance. She's done a ton of work I'm just trying to make it a lot more straightforward and clear about like good patterns to go and use and so and that's an ongoing process. She's already done quite a lot there and we're just trying to continue to make that really clear. Hey here's a really great way to go and develop so that You know it's not clear to stuff like that because you're totally right. It's it's easy for for people to just get completely lost and feel overwhelmed and I think to some extent. That's why you see you know. Even after all these years you see so much windfarms usage still turns it's just it's very straightforward. It's fast it's easy you get in you fired up. You know you get hit of success fat route right. We're to do something wrong wrong. You have to fight it. It has a way of the way you know. It's very opinionated. It's the way the way things are going to work. Absolutely absolutely I I grabbed the link to the fluent design system web page to glued in the show notes and not surprisingly the web pages gorgeous right right. Maybe it'd be bad but it wasn't bad if it was it is like of course it's beautiful. Look at this thing for sure. Yeah Yeah I mean the sign is exciting to like honestly like everyone. I think whether or not they have the time to do it. Everyone's they're absolutely beautiful in great and people talk uh-huh and uses your craft you got management to impress. The website is beautiful but you do want to just sort of fall down. That path is like if I don't break anything if I just follow these rules i. This is where I end up with this gorgeous APP. Even if it's only for certain classes are just plain old forms over data. You know it's like we gotta make a lot of the software. Why couldn't it be beautiful? Yep You're absolutely right now we talk about the pit of success in that. Pit requires a lot of things to align up. Well and those are things is that you know we've got our pulse on it requires documentation and web sites. It's tooling it's designers. It's you know things like that. And he said there's a lot of a lot of convincing examples for a long time the way we built software was we looked at offices. Said Okay I leave my APP to look like outlook and I by a third party tool that has has like a ribbon like thing on it or something that would all that happen. Hey I sorta interrupt. But we've got to take a short break for this very important message pay Crown Richard here. We'd like to tell you all about the upcoming conferences. NBC is hosting all around the world and DC. London will be January. Twenty seventh through the thirty first go to NBC NBC. DASH LONDON DOT COM to register. We're going to be recording. Some episodes there come. See us in the fishbowl in DC. Security Oslo is January twenty second through the the twenty fourth bird discount friendy security. Oslo is December second go to NBC DASH SECURITY DOT COM to register in. Check out the full lineup. Type of conferences at NBC conferences Dot Com. Come Join Richard in me at intersection November eighteen th through the twenty first at the MGM Grand in Las. asparagus Pre con workshops on November Seventeenth Eighteenth and post concert November. Twenty second speakers you've heard on dot net rocks include Scott Guthrie Scott Hunter Scott Handsome Sleman Kathleen Dollar Jeff Fritz Kim trip Paul. Randall Dan while Lean John. Papa Markus Egger Michelle Robusta Monterey and more. I'll be doing a deep dive. Obsession on server side Blazer in Richard will be doing his history of Dot net talk and we'll both be hosting the closing session. Get a discount when you register with the code. Dot Net ROTC KS go to devonte dot dot net rocks dot com right now to claim your discount. And we're back. This is Donna and rocks. I'm Richard Campbell. There's Carl Franklin Yo and we're talking to Ryan about win you. I three so the new upcoming version. And I you know we've had a few conversations recently about just plain old fashioned desktop development Because I don't I don't know we're doing enough of it. These days. The pushed a web is pretty serious. Can you just talk to us about desktop. I stopped development Using you I three. Yeah for sure so The first thing I'll say is that you should talk a bit more Because the the numbers that we see are actually growing So we we have month over month growth for native windows desktop development in that that spans C. Plus plus and its fans So But yeah so you know when you I. Three three is going to be sort of like the next future native. US platform for Windows Development And it's it's it's you can think of it as kind of like bringing forward that legacy of WPF in and being able to go and develop like that. It's also going to serve in a role that AH things. Wb Windfarms were never really thought of serving. which would be a middleware endpoint? So go back in build We released react native for windows and we are reaching. Microsoft is really serious. I really committed in to reach out to the native crowd. That's a super important super fast growing crowd and so we created Iraq needed for windows and Mac needed for windows right now at layers over over the most current Native York stack that can which is the version of sampled The UPS Zamel Framework. That's built into windows ten but when windows Library three comes out and wreck. Native that Implementations going to switch over to when you three so we're really talking about this not not just being something that you develop will use directly creating a client desktop windows APP which they should but also also for the end point for any middleware and cross platform frameworks that want to go and do the best native. Ui when those APPs running intense what about existing WPF apps. Can we take advantage of some of the fluent. Ui without having to rewrite. Yeah you absolutely can so The the thing that allows you to do that is Zamel islands so it's kind of like putting a web you when your APP except instead of html going inside you'll put modern Zamel fluent controls and things like that so islands are the are the bridge that allows you to do that. You mentioned islands before. That was the first time I'd heard of it. So yeah that's very cool. So that's basically the bridge from win thirty two to UW. Yeah yeah that's right and and that is if you need to do that bridging like if you have an existing APP and you want to go and pull that new content in but when you I will also just work on like a file new win thirty two APP no you to be involved whatsoever. Okay Yep so so. There's a story for both if you've got in existing APP which tons of people do the majority of people have some existing thing what we hear from customers lot are like hey we want to modernize and we can't modernize it it all at once. We want to go in and do this and take advantage of all the school fluent stuff. Islands is the way that you mix that in and windows forms to and when forms to Yup we have specific dedicated wrappers to make those specific targets. Easier to mix it in So we have a set of rappers for windfarms. WPF EPF so that you can go and And Mixing Islands even easier. You can also just do it in just like pure win. Thirty two non WPF WINDFARMS ZAPPA's. Well does do you guys. I know you're probably Gung Ho about it but does do Departments higher up in Microsoft for I see a rematch Reemergence of desktop applications for windows Because you know the the web just kind of took over there for a while but You know the desktop hasn't gone away but it's certainly been downplayed in terms of Development meant new development is Microsoft. Predict a resurgence in that Yeah I don't really know. I don't think anyone on our side really predicts a some big renaissance resurgence but what we see from the actual data is sustained and actually growing thing participation in those types of APPs. Yeah so even. Even though they don't get as much they might not get as much airplay. But you know the enterprise segment is is absolutely huge. People are still like windows is still massively deployed in the world. You hear a lot about like mobile APPs because of the the proliferation of mobile devices. And that's a super important segment. It's been growing. It's like it takes a lot of oxygen in terms of what we talk about but there is an. There's an absolute tidal wave of people who make nick native windows applications that are meant for the windows. Desktop work there and the interesting thing about that segment is when you talk to those guys. Some of them are really interested. Making something cross pot that goes to to android or I last but a lot of them are actually interested in Max and Lennox as well so they're still looking at that desktop the type form factor but to them cross. PLAT is a little different than how crossbar often gets talked about. I would also imagine that. There's a lot of windows forms APPs out there and even VP APPs before that win thirty two APPS that are kind of stock. Because maybe they've used use the third party tool that doesn't exist anymore doesn't support the latest versions of Dot Net and you know they're they're they're Kinda just stock they they're running those apps and will probably run them on their XP machines until the day keells over. Yeah for sure. And they're not just stuck some of those apps really important and those people are are you know they're they're they actually feel like. Oh my gosh what am I gonNA do. You Know Jack. I'm this. NFC APP the libraries. I'm using our dislike the company that I licensed from her gone right And and so when we talked to them about what what we're trying to do with with Sri that crowd actually Their Lights Their eyes light up the most and I got we got a real strong response from the win. SDK's ace in dot net core. Three right that we got a high. DPI Sensitive version of Windfarms in the updated version of WPF. Clearly there's interest here. I think they feel. They've felt a little neglected and You know you think about. I look back at the list of shows we've done in the past year. It's like we don't talk about this up very much. And maybe that's a mistake on our part. Well you know we did poll all of our fan club To find out how much development windows development they were doing being in. It's not all that much I mean. Most most of our listeners are web developers Now anyway they certainly were desktop developers when we started but I you know just that the inability to move forward because of third party tool is a real problem because now rewriting is the only solution and for the longest time we would have had to not rewrite and windows forms but we would want on a rewrite in WPF WB and so you know that's so then that begs the question. Why do we WANNA be stuck on the desktop? And there you have it. There's the conundrum right there. Yeah and the answer for and the answer is mixed perfectly perfectly happy there other people are like no. We've got to go cross plat. And they should do that. Because that's what their business needs. I also way think like wow. He's another case for why you want to use open source library so that when it comes and goes away. They don't take their code base with them. It's still there. You may not want to maintain it but at least it doesn't disappear or companies that share the source code right if I if I buy a library And I have the source code. I feel much more feel much better about buying a library when I have the source orse. I'm way back dude. Nineteen Ninety something ninety to ninety one when I worked at crescent software are one of the things I liked about them in. This is a tool vendor for quick basic and then for visual basic is you got full source to everything and they. He never ever thought twice about that like that. We never ever had somebody stealing the source code selling our controls under their name. Like that just didn't happen and what we had was lots and lots and lots of happy customers. It's a really good idea. Yeah I see pitching you think about how that would fly today. Yeah I don't know and Ryan just to be clear here. We are talking only windows ten right although we've had four four and a half years of versions of windows ten there's a lot of versions Wiza- ten now. Yeah exactly Yeah we are talking just about window San when we were doing the win you I three planning. We spent a lot of time talking to customers about wins seven And the answer. We got back from them. That answer changes over time because as you said time is marched on And you know wouldn. Seven end of life is about to happen. It's like January January twenty twenty January twenty twenty. Yes so now. End of life doesn't mean carrying about it because it sounds like burst into flames blames on January twenty one. Exactly exactly. It's funny how many people don't realize that you know what you mean. Of course. We won't go to Windows Seven. It's out of support. It's like well. Yeah but you know like the world is still using it but you know we spent a lot of time thinking about seven and the answer we got because we were really torn like Gee Gee you know should we support seven or not. And here's the thing supporting seven when you're talking about pulling all the parts and the guts out of windows ten that power the UI sack. DOC is expensive soon. We're talking about more than double the cost plus the gun to our head to upgrade everybody to win ten so you yeah. That's what it felt like. You know you trade. Yeah exactly and and our team was really on the fence. On this we talk to customers and the answer we got was really mixed like just full transparency. You know some people were like now. Forget about it like if we're going to go and where with Microsoft or moving forward are user debases on windows ten and we're and we're GONNA drop support for seven other people were like no. That's a dealbreaker for me. I can't use when you I three. You don't go to seven. The the thing that we've I've noticed is we're still feel come out and twenty twenty and we're already seeing that win. Seven crowd just softer and softer and quieter. Yeah and install by the time we get out they'll still be there and they'll still be vocal and also really care about it but the reality is we. We won't be able to get to market if we have to go down that far sure because that is an old Os and people don't realize that but it just ten years yeah me. It can't do acrylic. It can't do reveal. Can't what do all those things we do with the composite or for fluent so yeah. I'm and you guys brought up at the start which is awesome because one thing we started doing I wanNA give little show to the uh-huh guys and and a little plug for them so after we concluded that we weren't going to go to win seven we started partnering with Guys To see the if there was some way that they could help us out. And what we did was over the last Few months we've been sharing source code and trying to improve the platform so that it can be a great option and pathway for a win you I three APP or or really just any when you. I ap Nice being able to work on on wins seven via web assembly. So then it's just the browser that's doing the hosting so you can work on pretty much anything. That's exactly it. Yeah it just runs in the browser. It's kind of like gather browsers did like an inside. No s right you know but like a browser you have these sort of Shimshon things you got all these different versions of windows ten How do we cope with that is? There's some kind of degradation model for using a really late version feature. Yeah well actually. It's even better than that. So the whole idea of what we're trying to do with when you have three. He is take everything we need with signs. Why when you I three all doesn't just lift the Zamel you I frame? It lifts parts of the composite or which draws the pixels exel's it lifts parts of the input stack windows tents all that great touch all that Great Inc support it lifts all of that up and then it makes that stuff work on all all the versions of winton peanut butters overnights so you use the featuring when you are three and it just works. That's the idea and you don't have to think think about what version of win tenure running as a developer as a developer. You do not. We have to think about that quite a log. I says we have to go and make something like a occur like that acrylic sort of material work but yeah as a developer. No you target when you I three when you I three will have a minimum version that it supports and that's going to be like a sliding window. We always want to target at least ninety percent of the market of of where machines deployed us like our internal sort of coal. But yeah when you use that feature it. It works anywhere that when you went through supported effectively just like it worked uproar else At least that's the vision. There may be some you know it. Depending on how engineering goes and depending on dates and things like that we might have to have some things that gracefully degrade on a temporary basis. I'm hoping we can avoid any of them yet. But yeah for the promises you just use it so speaking of webcams and things like that. I noticed that there's going to be a web view based on Chromium Zamel control a Web. Use Control say you can embed web content in your ABS- Yes yeah. I think it's actually. Yeah it's actually one of the hardest parts of this whole when you. I three thing because as we're trying to do all of this lifting out that includes the web eb engine which in and of itself is very complex. And then there's this whole switch between the edge engine and the and the chromium engine. So but the the the upshot brought up all of it is at the end when we get to the end of when you release it. The goal is to have that chromium based most post modern web. Engine as a part of of when you three. It's probably going to be called web you to the most creative name but that's probably what it'll it'll be a control that you can use. Hey it's only two words or anything like four syllables. Doing get yeah. It's like it's all crunch together between angle brackets. Let's not too Madison one letter. Yeah extra over the original web you. So what did we see it ignite. Yeah so I'd ignite you see in here a few things you see the and can play with the win you I three Alpha so that is going to be actual bits. We release like I said it's it's a kick the tires release so you know it's GonNa be it's it's it's stability is a little Janke and you get an Alpha not even review. It's not even a preview. We actually debated what to call it. We're originally GONNA call it preview one and then we were like you know what people are going to think like what's going on with this preview. Is things not stable. Also we call an Alpha and it's missing some things so it's not going to have that web two in good. I think that's the right name. Then it tells you is going to be glad because we went back and forth on it and indesit. It's good. It's good what you take away from. Alpha's what we intend and then But I also had ignite we're going to talk about that roadmap that I mentioned earlier so that the next big SORTA stop and focus point on the road. Map is getting fully open source so hopefully. That's really exciting for folks we're GonNa have you know. I think this is the Well it's not the first 'cause wgn open source but it's nearly the first as amel framework to be a full open source. You can see exactly how we implemented who I'm so that's that's another big stop There as well. So that's those are probably the two biggest things that we're going to be mentioning at night on this and so figuring sometime in twenty twenty you go. Gee Yeah sometime twenty twenty. The other thing I want to add in is the Alpha at ignite because it's still really early. The authentic night is for just for the health is WBZ. Only we don't have the win. Thirty two portion of that stood up yet. So if you WANNA go and play with that Alpha you'll need to create like w with the model. We're going to have a preview in the first half of twenty twenty. It's kind of like the next thing after the Alpha and that thing we're hoping to expand to Winter Two two N D. I just realized that might be confusing to people. Like hey promised win thirty two. And where is it with the Alpha so yeah I wanNA make make make that super clearly the office real early. It's early enough that we almost didn't release anything but we're like spirit of open sources ship stuff so well and I think people like like to be a part of your process to write like if you keep putting out new bids and we get to go along with you exactly. That's that's that's the whole idea. You know like it's it's like it's new Microsoft where you know we want. We want to bring people along along the ride. We don't have to make some big surprise all the time so here it is this is early and you get to see the sausage being Ed Nice and you will which is sort of preview like this is kind of feature complete. We're just getting the refuges spin this. Tell us where it hurts exactly. Yeah I think the I think the next thing we do after the Alpha will be called a preview. Okay and I. I'm not sure how many previews will have. I mean what we what we eventually really WanNa get to pretty quickly. Actually after we opened sources to get to just monthly bills So you know preview will be a non event but just be like you. No February's build the marched built up like going pattern after you g a you'll just continue pushing bits up for sure After sure three three goes out three point one immediately in development and we actually already have this cadence for when you I too so the two series which is much smaller. That Control Library It ships three times a year. We just decided that four months was about right it There's a bill that happens daily builds. But there's a build that happens at the beginning of every month that we release and we just wanted to make the whole stack up work like that nice you know back when you. WBZ He started. I took it for a spin when it was called. What was it called Metro like the people called the metro after? UW As people called solved the universal windows APPs rather. Yeah but one of the things that I didn't like about it was you were sort of sandbox and What what is the state of you? WBZ Today in terms of you know some of those old features that turned us off. Yeah so that's a great question so the I would say all up like what you just described that sentiment has been a sentiment that has definitely been true. UW P all along it's been you know it's pretty monolithic. I mean when you make you to be the actor signing up for a lot of things you're signing up for store and MSI ex type deployment which can be difficult for some enterprise customers. You're signing up for the sandbox which limits You know all kinds of different libraries you can use and file and types of. API's you can call and so each of these things individually. We actually can be pretty good. Like interestingly enough the sandbox is the thing we actually hear people ask for. You know if you're in like finance and commerce first and stuff like that you love that sandbox. You loved the idea that you'll be able to meet federal regulations on software security so so that people can't break out of that. Sandbox do nasty things in steel bank account information and stuff like that so the thing that you'd be p really has has sort of you might say suffered from his. It's just this one thing and so the journey that we're on is trying to bust that up and make it more alicarte and say like. Hey these are all valuable things but we want to bring that value to you sort of like in an opt in you take it if you want it type of thing And actually when you I three is really just a part God. So it's just it's taking the stack and saying you don't have to be a youtube. Up Now to use this us you can be anyone. Is this going to be the way you develop as for like as are the office. Voting is yes yes they are so the interesting thing I think I mentioned earlier in the call that when you three is going to be used directly but also indirectly by middleware where So office has actually is already starting to do some of their new development on react native offices. Obviously you know this massive juggernaut out that has to deploy to every type of platform under the SAGA They've been using react native and then when they run on windows. Some of their new investments are transitioning over to Iraq native for windows So that Do their new developments and then react native and then and having worked on a Windows operating system and rack needed for windows is going to be using when you might three so that means that office will sort of like indirectly be powered powered by wind. You is three and that's why it's important to realize that when you is three isn't just like like just any old framework it's going to be the native. Ui Framework Doc Four windows ten anteks. It's awesome is you know. I think we want to build against stuff that we know. Microsoft consumes itself and gives this example office is definitely a lighthouse for the industry. I mean we hear it all the time we all use it right and it's been true for decades Yak definitely influences patterns. Now it influences. How People Building Office makes a ribbon? Everyone wants to make a ribbon. Remember those days do and for sure you know so yeah the office will be using it. They'll be using the controls in win you I They might even be using it directly in some spots where in sort of discussions with them about that but I mean they already have builds of office doing interesting things with react native. And that's all going to be plugged on when you three awesome. So folks get involved with these vets. How do they communicate with you about their experiences? Yeah so there's a few ways to communicate. I would say the the best way to really get involved would be to check out our get hub repo you guys post links to these. He's calling him assuming I can go. Put some links in there you head over to a repo standard-issue hub repo We have a bunch of issue types. So you know you can file bugs. You can make new feature requests and we also have this issue. Ty called discussion issues that have proven fairly popular and so we really just wanted to write an outlet for people who just wanted to discuss just sort of like you know. Shoot the whatever about when you I three and maybe I you know various ideas about where we go and take the library. So you can file discussion issues on the hub repo and be happy discussing. They're kind of like a mini four downloading looking at a discussion item. On when you I three and Zamel Performance Awesome for sure and Cross flatts been a popular one together. A lot of people have chatting about that so yeah so head to head on there and take a look at those discussions. That's one way another thing you can do you. We just spent up actually. I was this Wednesday. Two days ago. we just up a When you I community unity call so this is a anyone can call enjoying call? We ran it over teams. I don't I don't know if we're GONNA do teams again. We we might. Maybe we'll do skype or something different but it's basically just anyone can come. You can call in and we discussed everything from. We have like a time where people are like. Hey what's going on with library. Yeah they got specific questions about it. We discuss hot issues on the repo and just like what our internal teams thinking about. It is but the cool thing about it is. It's just the engineering engineering teams sort of directly interfacing with the community and and just chatting live and so that the first one really great we had about double the attendance. We were expecting acting. And we're doing these every month so the next one will be last Wednesday in November. I think just like the twenty seventh. Do them at nine. Am Pacific Ryan. This has been

Microsoft Zamel Dot Net Carl Franklin Richard Campbell developer Zamel Ryan Dimopoulos Iraq US Zamel islands Alpha Ken Think Google
Containers in Windows Server 2019 with Elton Stoneman

.NET Rocks!

56:14 min | 2 years ago

Containers in Windows Server 2019 with Elton Stoneman

"Hey, richard. Yeah. Body. Guess what time it is? Now, it must be that happy time again. That's right. It's time to tell everyone about the conferences. We're going to like update Prague on November twenty second and twenty third. Yeah. It's dot net. Cloud and security conference. Speakers like, Julie Lerman Matt Warren, Lauren Benigno, Brandon mimic and us two days. Forty two sessions workshops at amazing places to see in Prague registered now an update conference dot net. And then of course, there's Dev intersection in Las Vegas, December three through six. Of course. The Scotts will be keynoting, Scott Guthrie, and Scott Hanson, and Microsoft is live streaming their connect conference on the first day from Dev intersection. That's on top of all the great content registered today at Devon or section dot com. And let them know year heard it from us, and then there's NBC London. January twenty eighth to February first back in the QE to conference center in Westminster. There's a great lineup of speakers, Scott, handsome, and his back and. Our friend tests verandas sigo to NBC dash London dot com to register now, and we'll see there. Welcome back to dot net. Rocks. This is Carl Franklin, and this is Richard Campbell. And I don't know if you know this buddy, but I'm embarking on making a documentary. Are we really I am? Yeah. I'm following in the footsteps of lots of other fools who waste their time. Making a pilot and think it's great. And then, you know. Yep. Try to get people to help fund it. And then crickets, I don't know. It's very hard. It is very hard. But the subject matter is really cool as anybody who's listened to the podcast knows I sort of reverse diabetes and loss weight with this Kita, genyk diet thing and a lot of others have followed in my footsteps from listening to the show and the scientists coming out and more and more people are being convinced in less afraid of eating fat, and heart disease and all of this stuff. So I want to make a show where I follow three or more people over the course of their transformation. Nice. And then help them with cooking because it's got to be a food or ent show. You and IRA fans of of out and Brown eating. And he's back. Yes. Imagine like a good eats. Like, really good food cooking preparation eating and science of Kito at the same time. And you get to see somebody dropping weight and reversing diabetes at the same time. Nice. That's what I'm working on. It's called the Kito fixer. And you'll probably hear more about that soon. Awesome. I love it. So everything's good. With you. Yeah. Things are really great. You know, all spare times we poured into the book people been complaining about missing geek, oats offices one coming up next show. She hundreds going to be a geek out yet. But just so, you know, I'm not taking any time off all that research energy's going into the books. That's so great. I cannot wait. Yeah. I've kind of acknowledged now there's going to have to be more than one not that it's going to be a series or anything. I'm going to write the book that everybody wants to sort of that history book I, but you'd only fit so many pages. So there's going to be some deep dive after that, very cool. Well, let's get started with betta no framework. Awesome. Man when he got well this one came to me by Brian McKay. Who's also one of our app cenex tres, and it's get hub repository of algorithms. It's skit hub dot com slash AVI. Algorithms see dash sharp. So it's sharp based algorithms like ciphers, data, compression, data structures numeric algorithms searches and sorts and miscellaneous. Oh, I see they've organized it. So it's sort of the same set of algorithms. But they've written them for python JavaScript, go and see sharp. That's right. That's really neat in their encouraging other people to add their algorithms to it. Of course, they they want to get a nice big collection here. I think that's worthwhile. Repository what a great idea just to have a place. You would go. Yep. To get those algorithms. Yeah. Love it you could participate here. But just seeing if you see this algorithm implemented. In Java that has been influence he shark. You know, right. The other version. Yeah. What a great exercise to cross language development. Totally. That's brilliant. I love it. That's really cool, man. Nice. Find thanks. So who's talking to us today? Mr. Campbell, grab your show. Fifteen sixty five the one we did with one Benjamin hall. Yeah. I think I called the show. It's a container world, actually. No. I know I called it. Here. Just living in it. Yeah. I've just living in it. It's a container world. So what I like about Ben is that he build stuff. And then he talks about the technology built it with right, obviously that was catacombs. That he built it very container Centric, and I don't know could have worked any other way. And in that show. We talked a lot about the evolving containers in this idea that maybe containerization is a logical thing to happen on the client to just creating those perimeters around any piece of software. So that we can control how they call out. What resources they have access to and so forth and Paulo Pinto said regarding tina's of desktop against you guys could ever look at the work being done with windows ten and MSI ax, which is emerging of windows thirty two and you WBZ sandbox models, and we actually did a show whatever Sayaka. So, you know, valid point that that this is about the installer creating packages around software as well. Yeah. As well as the device guard, secure Colonel and isolated user mode. These are all elements of windows, you know, try to do its best on the client side to protect itself. The lyrics world is now migrating to a mix of snap which is an been. To implement tation, and flat pack, which is a bunch of other versions of Lennox both of which sound like expletives. Well, it is Winnick's if you're not cursing, you're not doing it. Right back. And in the MAC OS world is also gatekeeper X sip and the IRS permissions models coming up in Mojave with the new security Runtime nice. So the point policy making a point we're not wrong, all of these different platforms are all pursuing this containerization concepts. Although maybe coming at it from a different angle, but in different ways to sort of put wrappers around software. So that we know declared a Wli what privileges they need. Yeah. And then he says other than that a great show. Yeah. Okay. Great show. What were the other? You know, worked pretty good. Paulo? Thank you so much for your comment. A copies deco buys on its way to you if you'd let coffee music, oh by read a comment on the website at dot net, rocks dot com or via social media. We publish every show to Facebook. And if he comment there, we read it in the show, we'll send you a copy music. Oh, by and definitely follow us on Twitter. He's at rich Campbell. I'm at Carl Franklin, send us a tweet we read in an isolated user sandbox. So you don't have to worry about infecting us. Go ahead. Send us a virus in your tweet. I double dog dare you. You just try it. Knock yourself out. Okay. Now the scared. Doke to bell take you up on it. Wicked spot. All right. Well, it's our pleasure to welcome back to the show Elton stoneman. He's a plural site, author and Microsoft, Azure, MVP and he works for Dhaka. He's been architect in delivering successful solutions with Microsoft technologies since two thousand two and most recently API's and big data implementations and Azure and distributed systems with Docker. He tweets that Elton stoneman blogs regularly and its most popular plural site courses, cover message, queue, fundamentals dot net and modernizing dot net apps with Docker, welcome Elton. Hey, how you get to be by his well, great. Yeah. Yeah. Sure. I don't know he talks a lot about himself. Yeah. Not not as job, right? But aren't bios the worst? It's the hardest thing that you got to tell people something about yourself. But it's very challenging to sort of something you're comfortable to say or or to have read to you for that matter, and I left two thirds of it out. Yeah. Sort of reality. Yeah. Yeah. And I'm Chris. Oh, you don't like how people saying the he's really great. I was really cool with a kind and some introduce me as international speaker, Royal renowned expert up to goodness. But you're very nice. Nice. Yes. Aim for nice yet. Very polite. There you go. Yes. As is Richard me, not so much. I come from the country with rudeness. I'm from British Columbia. So it's we got our tied in there. Well, I'm gonna let you guys take the lead on most of this since this is in your wheelhouse, Richard. I haven't installed a windows server since maybe two thousand two well, and why should you anymore right at issue? I'll be living in the cloud. Right. It's hard to find justification for actually owning a server much these days, although I did get a request from a client at app necks to help them move a V six application. Oh, my from a windows server. I think it was like windows two thousand server to windows two thousand twelve server windows, two thousand two to two thousand twelve without changing the code and making sure that it was going to be run compatibly a boy. And I said that's not my area of expertise. You're going to have to call someone else. I'm not going to do that. Not me or I could stick needles in my eyes. Well, not as this sort of stuff. We get all the time. No vision six yes. Sometimes don't at two point note from ten fifteen years ago, put us container. I want to get to the cloud. Right. That's what we do know kidding container. Technologies coming from Lennox, and it's fell to me like windows is just been behind on all of this. The azures clearly supporting it, but windows seem to be up to speed. Yes. So so the DACA uses has been of the next twenty years. So that the rates that might contain is wack. I've been around for a very long time, but windows doesn't want to know they will to offer the same functionality. So right now, I think dacas astonished working with Microsoft backing two thousand fourteen maybe even before that to look at getting the same kind of features into windows sub. I'm not came in windows at twenty sixty which seemed recent but in contain a year is not such a thousand years ago chur role in the next ride. So December twenty nine hundred is coming out. Now, what you find with windows of a 2016. Awesome gaps in functionality between what you can do with the windows contain on what you can do contain the 2019. Most of those dumps it gone. The two things are pretty much. The same from from us, better people view nice. I mean, admittedly 2016 was kind of the first version. Yeah. Absolutely. So he twenty sixteen was the first motion of windows supported containers. Yeah. It's kind of interesting. I don't want to get too far off the track here. But I don't know if you have any thoughts on the idea that win twenty nineteen ships so to speak. There was no concept of an RTM the see that. Yeah. I did see that. This is an interesting step to omit and you'll release process. So the yeah. Give a small number of people won't they gonna see you in production getting a feedback. It's usually a pretty useful snap for enterprise software. Yeah. And kind of necessary. I don't know. I'm there's days where I think the windows team has gotten remarkably reckless. Well, the interesting thing about windows server, particularly as they go to these to Tabriz knives. So there's windows long-term support which is just two hundred sixteen twenty nineteen which has the traditional Chinese support. And then they have this young you'll channel which they release every six months on. They have all the new features in that. So so really when you coming to new release of longtime support actually you've already had most of the features are in the wild for maybe two years, you know, some of those features. So in theory as bottled tested of this in twenty nineteen to contain is has actually been around in a semi annual China was for the last year or so so some of that stuff has been tested low on some of it is is obviously fairly recent. So I'm sure you guys have talked about this a lot on run as radio, but for the rest of us. Can you tell us are there any killer features that we need to pay attention to for running any version of windows server that windows server twenty nineteen is going to make us. Upgrade for so purely from the highpoint iffy from I'm not wearing a at teasha revolving twenty nine hundred so people using windows contain is in production now on some of the twenty sixty. Between nineteen it gets rid of a lot of the pain points. There was some work around and you to do which we're a little bit clunky things. Like if I'm developing on a VM because I'm old school night to develop on the same machine. I'm going to be running in production. If we'll go to windows, twenty sixteen VN running containers on that I can't access the contain a using local host. So when I run a contain out, I can publish a port, which means tropic goes into the container is from into the networking stack. Own the van itself. I can't use local hosts Kotal or whatever I'm using us. Just a limitation of the windows networking stack. I never a few more things around. So if you think about the Knicks networking stock is this huge thing evolved over the decades to deal with all these use cases on the windows network. He's talked was a much smaller functionality DACA used the Lennox networking. I just assumed it was it was going to be that. I'm well. They've done windows server. Twenty nine thousand nine is bringing some punctuality into the windows networking laugh. So things like local host now works things like when you're running into. Plus STA Donka can automatically low balanced request coming in between containers windows now and things like being able to access the dock API. So when you're running DACA commands, DACA, container Rodman, DACA image billed. He will come on line is talking to the this running in the background has a window service. Historically, if you wanted to be able to talk to a remote window, Serb, DACA API. So I wanna talk to my CI side. But whatever I had to expose the API ova TCP IP to protect it all with ten. Let's it's all doable. But it's clunky. Whereas now named pipe support. So from within a container, I can access DACA on host on spin up a whole bunch of other containers, which is really useful for like CI bills. Nice. Now, we're in an interesting window at this particular moment 'cause we're recording the show on October twenty second. G A of windows server. Twenty nineteen was October second right after big night. But on October twelfth, they paused the release of twenty nine thousand nine along with windows ten eighteen nine release because there were complaints there were some problems and at this point while we're recording this that pas is still going on. So you can't actually get the bits if you wanted to zoom ably by the time, we published this'll be resolved. Yeah. Absolutely. So people have the future who listening this new rule this dusted? But actually right now, it's very difficult. If you're writing blog posts or trying to update your book for the winters. Because you can't get that. What happened was as far as I know the only scenario where it was a problem is when you upgrading in place upgrade from two thousand sixteen to twenty nine teen on there was a risk of data loss under some very specific circumstances. Now, I never doing you stop because I'm just been up in new VM, not do my stuff, and then shy. Luckily, I downloaded all the bits soon as they released and I've gone local cash. So I can do all this stuff. But no one else coun- yet. Yeah. Okay. That's good. And just be clear. Like there was no actual file loss. It was a problem with the known folder redirection in. So the files are still there. It's just eat imagine somebody upgrading windows ten to eighteen. Oh nine and then when they fire it up, but it's all their their documents folders empty nice. Yeah. It's not a nice thing to say, then the reality is literally any different folder, and it's pointing to the wrong place. But why and it just terrorized a certain section of updates is not everybody was affected by this. There's no seems to be. No evidence of files actually being lost yet. But boy, he's like dudes like what do you do like this shouldn't be that hard? I liked it. We're getting lots more updates and moving along and heck we should be going faster. But stop break things. Yeah. Right. It's all I asked it's a little thing. Anyway, that's the only time I want to bring it up for this show because I really excited this idea of containers existing in a more sophisticated way the window space, and that we're going to presume that the be true while the show is out in the wild and from there after all, right? So I mean, we talked about the local host issue is there are other key features that that twenty nineteen brings to the table for containers. Yeah. Absolutely. So I've been blogging about this. And I'm like, you send you guys the links on the show afterwards. Wheel include them. There's always been a little mismatch between things you could do in Lennox and things you can do windows that don't affect ordinary running containers. But do affect some ways that you want to do things on volumes is another one. So when you're running. Software contain containers, the data inside they can us. If I run a windows contain inside the windows contain see, Dr we'll my stumps in photos on the drive, but not see Dr the foul system of the container has the same life cycle is the container. So if I'm running my op and it can tie on. I'm ready to do an update. So the way I do an update in contain a wild. I don't connect to the container. I wrote windows update because obviously, I might risk leases files. Not that that would ever happen. Never happens. Wanna do state is a Bill to complete any new package, a new DACA image with my application? Right. We'll have the latest windows updates. It'll have a new update of software. Whatever it is. I'm doing throw away the existing contain run a new one from the new image. And it's all automated, it's really easy to put in a CD pipeline. And this is really the philosophy of containers as a whole, right? You don't update an existing instance of anything you just make a new instance with the new versions you contain is meant to be throwaway. Yeah. It last as long as you want until you can run it for months and months and months, but when you to do something to it, you're not going to cure it. You don't going to connect to it. And update things you just throw it away and replace it. It's not a pet. It's cattle make burgers. Yeah. Yeah. That's exactly right. That's a good one. But the trouble with autism coolest when you replace it any state that your application was writing to besiege drive is going because not contain is gone. Right. So what you do. Instead is this other concept code DACA volumes on a volume is just on abstraction of a piece of storage. So it gives me a folder on on a radar eo, my sub or if I'm into date to center, it could be a storage appliance or to in the car to be a cloud service like as you will files each of them can be used as the as the source of this, DACA volume. But it's a place for stateful storage that will persist exactly okay, it has a life cycle outside of the container life cycle. Nice. I run my container attached the storage. I do whatever they might contain that when I'm ready to replace it, then you contain attached to the existing storage. So all the state specific. It's a really nice thing. Is that everyone kind of us zip anything anything stateful that you're putting any container quacks around with the windows in December twenty. Sixteen the main one being that inside the container you'll volume gosar face as a as a sibling as a sibling directory. Okay. So inside might contain. I have a folder cold. See Koto Bosch data, but actually similar this pointing to someone outside of contain them on the way that was implemented in two thousand sixteen as as a horrible siblings to to a non existent path which starts with box Las batch last question by slash contain them. All right, threes, backslash, it's an internal detail. You shouldn't have to worry about. It sounds very Microsoft ish. But the problem is certain application platforms. Notably Java and go in a few others. They see the directory Seacombe box. They see it's a symphony and they tried to resolve the same. So can step in writing the fouls and go directly to the target. Right. And then they see this question. Mark, Mike, sloshed, whatever. And they just Beaumont, right? So not used to be twenty sixteen hob is kind of clunky way of doing things. There was a workaround. So inside you'll DACA Foll. You would create your volume seat Joan about dates. Dates, and then you would run a dose command inside your DACA foul is not as G code on or whatever. Dr Nettie you and then. Occupation you right to g and it's it's a nasty hockey Weck around. But he's fine. But you don't have to do that and more than twenty nine thousand. Yeah. It's a taller role for a v one. And that's what it was. Yeah. Absolutely. Yeah. Once you know, what to do it's fine. But you probably gonna bind you head against a wool for a weekend. Trying to get to the point of knowing was wrong, and now in twenty nine thousand that's just gone. So now in two thousand nineteen when I'm inside they contain if I look at sea state, it just appears as directory on windows takes care of the thought that really it exists somewhere else, which could be as you will files or my right away or what they just might live easier. That's awesome. I'm going to interrupt you for one moment for this. Very important message. Hi, this is Richard the dividends. I fall show. This year will be December third to sixth in Las Vegas at the MGM Grand Hotel. The lineup is awesome. Scott Guthrie, Scott Hanson, Scott hunter, yes. All the Scots. But also a ton of great industry. Speakers. From some insight on what's coming up in the world dot net. You know core three is bringing client technology like windfarms in WPF into play. Could it be time to migrate your existing desktop apps of this new technology? Learn more at Deb inter-section, December third to six in Las Vegas at the MGM grand. Go to Devon or section dot com. To register and use the code dot net. Rocks to get a discount. Amer bag Richard Campbell. Call franklin. It's iraq's. We're talking to Elton stoneman about the new container. Support Docker potatoes sport inside of server twenty nineteen and I'll Accu running down the stack because I think these are important features just were challenges next up after the better volume support also should point Thailand, this is just window of a twenty nineteen. So okay. The core of this is you mentioned as the windows OS eighteen o nine up date. So this will be rolling into windows titan as soon as you get updates. So as a Dev running containers on my local machine, I get these features to obstinately and one thing that get in a day. We get window cyber when you get eighteen o nine update on the next release of Dhaka desktop. So don't desktop is the thing that you wrote a windows time that gives you the away ally. Comb right now when you're running windows, you titan is now running an hype, AVI isolation. So although it's a container. There's an additional boundary around. Which is high V, it's not a full VM. But there's this extra day in between your container you'll host. Well, actually means is if you go into window Sabah when you run a contain of as running an ISP don't website if you look at the tiles twist on the survey, you will see w three w p. Host from the container. So on the host, you can see all the container processes because they're actually running natively L nosed. So inside the contain up. I think I've got my with my own foul system and registry. And I address and host name and everything else. But actually, my process is running on the server, okay? Only does tiny run the same Docker container. Rung command with the same image human, see, the container processes in your windows, ten Thais list because they go this extra barrier around them. Now, hyper V as 'isolation is a feature that he's four hostile workloads. So things like if I'm if I'm letting people bring their own code run them on my cyber right? And he's hype AVI isolation stuff that I'm not trusting. And that's how it was presented to me when you said we're gonna use the, hyper V Moda. I'm like what's that for the hostile stuff because more costly, consuming resources? Yeah. But you don't want to use that mode. If you don't have to. That's exactly right. But that's the default. But we knew tiny as well because. Right. I'm not sure if we're all the details around about historically windows. Ten didn't have the same Conal as window service. So we know what to run a window so contain that you needed a window survey Connel, which should go from you, all hyper V isolation, but from eighteen thousand nine with the next Donka desktop, not gone. So now, you'll be able to run legal process isolation. So that means when you run your containers, you'll be able to see the tiles on your on your machine, you read of the extra baggage around that on you'll running these really lightweight things in the same way. You do the service not? So it's a really good thing to to be doing going forward. Yeah. I'm glad that's probably there. And it's one of those things that just sort of made containers an inferior product on the window space. Absolutely. Because of the way the hype AVI isolation worked, there's an allocation of memory pack containing it takes a little while to spin not up. It takes a while to spin up the kind London east. So not up time is big memory usage is more constrained. Let's go. Yeah. That's no really a window a feature, but it's just was coming with the updates in one thousand nine should we mention Nanno server just a little bit and that sort of played a role in containers early on. And it seems like all of that has changed now. Not as house volved its role has evolved. So when he was first released again, we're going back to two thousand sixteen here. Now Mesaba was intended to be a really lightweight operating system that you would run directly on the metal who had run on. It would run containers in order to do that how to very limited feature set. So it was never originally cooled windows Nana cyber because it doesn't have the full windows API. You can't run to Bates stuff on that. You can't run don't framework cops on that. There's a limit to what you can do that. But as it evolved, more and more people using it for just pure run containers. So when my DACA file, I stopped from about package up my stuff that I know will run on non ABA, and then I can run into contain the as one hundred megabytes of several gigabytes, which is what you need for the full window. So a core right house. People is not easy it more and more for that role. People were using it less and less for the running on the server and is this gonna middle. Round. It was too big to be an ideal contained writing system, but it wasn't big enough to be an ideal several printing system because it may missed old bits of the so much to decision and this is going back at this year. Maybe this is not going to be a container operating system. You're going to run on your survey. It's only running containerize workloads. So it will run on windows on the host on the advantage of. I'm actually this is the case for windows cooler, as well is they managed to drive down the image size massively. So now, no Soviet used to unpack to be about Giga by incised. It's now a couple of hundred megabytes lasts even hundred megabytes. I think it's still not quite seven megabyte alpine Knicks image, right? But it did you on awful features a very tiny image. But also windows have a twenty nineteen the wind acerbic cool remedies have shrunk a massive amount as well. So the name as used to be like an eight gigabyte download. It's two gigabytes. So while still baked, but I remind you could run a fifteen year old up on with. I'm changing it you get to gig and dispaced is cheap Vam with is high. So it's really a question of do. I need to bother with nano server at all not is a good question. It depends on the kind of work goes you have because the other thing to bear in mind is when you get a windows update. So the monthly updates to windows that you do in studio Savary will windows ten Microsoft also released an update to that Dockery images. So there's a new version of windows. Sopa cooler image comes on this new version of the Nana Sahib image comes out on each of those images. Have just the updates that apply to not image not operating system, so fos mall. Deaf of the update each month compared to sign up a co op. So if you're running things like Java only open J D K or if you're running dot net. Cool rob locations or anything that compiles to be native like go. Then Nana Sahib is a better bet because. Month when you ask. Ideally, when you're running this something contain is you'll have a CI process that will as well as building your own up ever. There's a commit yoga pulled on the latest windows images. Rebuild your ops. Run will the ultimate test on the end of that. You'll have a new version of you will contain image ready to go as soon as you're ready and the process of doing that. And getting the latest iron does will mean a hundred megabyte dominant owed instead of gigabyte time, though, potential assure that only happens once a month, I'm because of the way doc everything's cashed. Anyway, so it's not so much of a big deal. You should be compiling the sixty four bit for that as well. If you're gonna work with Nanno that seems to be just a good idea these days anyway. Yeah. Yeah. Nano? It does force you to do certain things which are kind of best practice now. So I'm gonna use a small modern application platform like don't at Coa, and it doesn't come with all the baggage of the history of don't have which will fill several books as well. That's also just the security aspects to to the drivers are better. There's a bunch of things now that makes sixty four bit like, you just you're cutting away a whole bunch of surface area of risk when you run in that mode and the neat thing. I always liked about Nanno was you're going to find out if you really really are running sixty four bit because often we don't even realize that there's some deal. Ella was still compiled thirty two and it thunk down to it automatically in a mixed mode machine and nanna won't do that. It'll just go. Boop sorry. And you pretty quickly figure out what's really sixty four all the way through. Exactly. Yeah. Not not surface. Every point is a really good point. So as soon as you release yourself to the wild countless bolster under attack you day in day out. So. Stuff. You have running in your container the small of the surface area of the lower the risk. So now in two thousand nineteen there's no power show. So polish was part of the previous release. But then the idea bay why do we need power shell for something? That's just going to run in a container that will potentially run hundreds of replicas of that contain across my cluster with dozens of machines. I don't need power show because if there's an issue with that particular container actually, the Custos is going to take care of it. It'll kill that contain stop a replacement. I'm never gonna need to connect to it on debugged unnecess- a serious problem in wish as I'm probably going to recreate not problem in development environment in a test environment. Yeah, he wouldn't do it in production. So it's just not necessary. Exactly. Exactly. So power, Sean. How's this extra surface area of potential security flaws and potential things need to be updated? So they just cut about and said to be vetoed need any of that stuff in on. So when you build and you'll Dr images phenomena of the pot now is to use multi-stage Docker foul. Nls so DACA filed the starts from window so Vika and does what eighty to do from the internet. If you've got dependencies or does the Bill if you'll building from an ST K, and then you can have power show to do all your stuff in that. And then the second stage of the image the final packaging, he's not from nano Sova, and you just copy everything from the fast image. So you don't need power shell to actually build up your application. You can do that in a multi DACA fall. Awesome and Elton hold that thought right there because Richard guess what time it is must be that happy time. Again, you got it. It's time to prepare for thanksgiving by stuffing, a bunch of bread in vegetable apps nanna size, of course, into the Turkey container. And hope it doesn't go to sleep during the Macy's parade. Komo concerned about being hundred sixty degrees inside of all that stuff. But okay. It's really funny. How that this kind of humor is lost on the Canadian and the Brits. Well, I had thanksgiving at the beginning of October. Right. Like, my thanksgiving's already. Come and God. Right. Right. Well, you know, many people outside America may or may not know thanksgiving is basically where we eat everything in sight, followed by a nap and the Macy's Thanksgiving Day parade is in there somewhere. It's time to give away two hundred dollars Amazon gift card compliments of progress. Teller to one lucky member of the dot net rocks fan club. But first let me tell you about the most comprehensive developer toolkit for building modern apps on the market today with more than eleven hundred teller dot net. And KENDALL, UI Java script components and controls. You can easily build modern high-performance web mobile and desktop apps as well as chat bots, the tool set also includes reporting solutions, automated testing and productivity tools and comes with a range of support options and new this year is a free online training program for all license holders with this alongside thousands of demos with source code comprehensive docs, and a full assortment of visual studio templates you'll be up and running with the progress. Teller wreck and kendo UI tools in no time. Download a free thirty day trial today at teller dot com slash download and also please consider supporting dot net. Rocks by making a month. Flee pledge at patriotic dot dot net. Rocks dot com. All right, buddy. Who's our winter? Today's winner is I AIn Partington. Oh, actually, I congratulations tying and he just wanted to hundred dollars Amazon gift card from progress. Teller just for being a member of the dot net rocks fan club. And if you'd like to be a member go to dot net rockstar com. Click on the big get free stuff button answer a few questions and you're in the club. We have thousands of members all over the world. And every show we liked to give away stuff from our sponsors. And every December we give away a five thousand dollar technology shopping spree coming up here in a few days close to one lucky member of the Dinero fan club. But you gotta sign up. If you want a chance to win, and we also like to ask our guests Elton if you had five thousand US to spend on technology today. What would you buy? Well, now, that's an interesting one. So I've been in the process of moving house for the last four months nearly so I don't know what it's like in the US or in Canada in the UK is terrible position where I wanna buy someone's house. I'm going to sell my house to happen. So then someone was the by my house, and they could've sound right house. So you have this chain of transactions and we're in the middle of a chain of nine. So we started this process months ago, and we still haven't actually moved. So I I would invest the whole thing in some sort of AI to just make all the legal process. Go away. I can just pick a button on EBay is. I about my house that thank you. I like that. Yeah. That's a good challenge actually to try and make that support. So have you bought a few places in Canada? They have their problems. But I don't find it that arduous, but every experience I've had with US property. Holy man. You guys make it as hard as you. It's like they maximize the lawyers required. That was me. Sorry. I take full responsibility for all the stupid things you encounter in America. Any of that's true. But okay. But I I wonder if we talk about the English system because you're talking about one of the oldest legal systems. I bet you run into city issues because sometime so cities he know predate your monarchy, like do you think about London City rules are radically different from the rest of London. Like, the U K could really make that hard. Yeah. Yeah. It's crazy. So the house we're buying hopefully is a sixteenth century farmhouse. So history to check to make sure that the local church town. Come and see you in five years time and ask for twenty thousand dollars to build a steeple. Checks. It exactly. And you have been Carl lives in a part of the United States that has some of the oldest homes in the United States. But it's the UK man this been humans banging around there for tens of thousands of years. And they've built stuff like every time you stick a shovel in the ground you hit something. Yep. Yep. We just hit rocks. And I live in a part of the world where if you find something one hundred years old, it's like a miracle nothing old over here. Really? He no except for the first day things. But yeah old buildings that are still in use. It actually have a paper trail that doesn't start until maybe one hundred years ago. All right. Where are we because I'm really enjoying exploring? These ideas. Do you want to talk a little bit about this desktop angle? Do we think containers for the desktop that are actually deployed way to use software rather than just for developers to these see that in the horizon here, it's an interesting because you can do it already with Linda cts, so sure just froze who used to work at Dhaka? She's got a whole bunch of blog posts about doing this on the Knicks with things like five bucks net. Flicks VS code host was the things because of the way Lennox works on the graphic subsystem can be mounted as if it were file system than when you weren't. Contain it. You can say remind container. This go far FOX not the volume for my local graphic subsystem into the contracting. So when it's trying to show things on the screen inside this high contain a-, actually, it's piping back out to my real you. I can see stuff now windows doesn't have that separation. So in theory, you you kind of can create a you I can tighten up, but you have to go pretty deep. So I was speaking to a guy who works with us used to wake up Microsoft, and he thinks they're always happen. But it's not for your average us right now. Whether it's something that Microsoft is keen to do in the future. It would make a huge amount of sentence. Because you've already got not sound bulks. You've already got the the distribution. So you can get your stuff from Dhaka hub. And you just pull the way the DACA, images, the packages view a software layered. So it's a really efficient way to get updates out to people and you've already in the mechanism to run that stuff inside a contain. So yeah, you know, the simple case of bolting the UI on would would open up a whole bunch of. Interesting use cases on of course, you had the full not which is being used for the store is an alternative way of doing. What is what is a similar thing? Another interesting point, though, is that what you wanna Lintas contain the next house will will be obese notions of capabilities of the operating system building on explicit. So I can run contain and I can say do not give this contain the ability to use the network do not give continued the ability to run certain commands windows, doesn't really have. So you get some of the Syam boxing within being able to say follow system emission Tena can access memory. I allocate it can access certain amount of CPU Hsieh's. But without an obstruction around the windows capability set, you wouldn't be able to get that kind of low level signed boxing that you can get with lenox volun- and also get with any mobile device, right? That whole idea that each time, you and stolen app. It says, hey, I want access to your camera out our one access to your. P s and so forth just that kind of manifest mindset. I think we need to get there. Right. And I don't want access to the internet. It's like I need to access the internet. But it's only this URL right about this particular location on these ports. Like I'd love to be that granular. We really give people the sense of short what was actually happening. But then course, the Phipps out of is if there's an avocado does something that you won't use gonna say, yes. Anyway. Yeah. It's just these are more boxes that you say. Okay, too. Yep. But the bigger thing for me is you look at modern exploits today in generally, it's messing with software on your machine that already has privileges soda. I'm really looking for in these more granular security models is hey this app, which we've already said is okay is doing something. It's never done before. Yeah. Yeah. I just wanted you to know that. So in the container world there are a couple of really excellent. Again. This is this is I can tell you this is for websites and Bosch process now sorta stuff nothing nothing with a UI the user interacts with. But if you have a cluster of Ryan containers in the DACA Rico's system that are companies like Akwa security who Bill these tools that Colston monitoring your containers. And they do exactly how they say hang this container. This running where press has been using five percents CPU lately on it makes the system calls on a touches these accelerate your house. I'm suddenly is doing something else. They spiked the misdoings bitcoin mining on economic Otemachi shutting down or just alert you or whatever. So you know, when you start maybe these into containers the thing that's running that contain is the oakwood strata Muzzleloader power of all of us off my because it looks the same. So we can run the exactly the same intelligence stuff like that over a wide variety of software. It's a place where it can sit in overwatch, and sort of have a sense of what's normal. What's not normal and? When to sort of raise a flag and act exactly exactly. I'm not neatly into the area. We haven't discussed yet. Which is this woman. Cuba, netease. I was gonna I was just about to ask that question. We're all the same page here. Because I think people are confused when it comes to to cluster management things about whether to use warm, whether these your Cooper Nettie, what's the right way to go obsolete. It depends who you talk to which on so you'll get but for those who listeners who fail with this stuff. He will straight to is really a way of running containers across multiple service. She how all the service that you want to be able to all your infrastructure on you group together in a cluster on managing not as a piece of software, which orchestrates whole your containers. So you don't say I want to run a container on this on another continue on that. So to give me high availability. What you do is you talk to the orchestrator. And you say, hey is my contain image. I want you to run ten of them across the cluster. I don't care when running mate. Sure, there's always ten so if it goes down and takes a bunch of containers with it. They will castrated we'll spin on the containers. Elsewhere. Uh-huh. So the two most popular dacas, which is built into Dhaka. It's quite an opinion eighteen orchestrator, it's very simple to use. But because of I it makes decisions for you. So it doesn't that you tweak everything because it has this simple. API on Cuba, Netease is the other one Cuban Netease is lot more tinker -able, you can do an awful lot of stuff with Cuban DS. And because of that you need to figure out pretty much everything as you deploy applications that both fully usable they both run, DACA containers. So ultimately, you can take bakes same application distributed. The runs across several different containers you can write application mount of fast to run on DACA swan. You're gonna use DACA composed to do that. Oh, you can write in application manifest to run on Cuban IT's. You'll ri- Cuban Netease. Yama file you'll use the same Docker images. So you can try the same without having to rebuild it or recompiling or anything like that. There's no real architectural decisions to be made or anything. You can experiment easily. Exactly, exactly. It's pretty low customer from one to the other. Now, the interesting thing is right now, Cuban tease, only suppose Lennox service in okay? Currently to support having windows knows again for those who want if you want to run a windows container full dot net. Friday, buck up with something like that inside sequel server, the deeds windows, API, you have to run that windows contain on a window serve. You can't run a windows contain on Lennox, right? So if you have windows workloads right now, you've got to use DACA, swollen. Because dacas will does support window service on the next service in the same cluster for production? So we can do then enables some really interesting stuff by integrating. Maybe you'll legacy don't applications with fantastic. New open source software that's running in because I can have engine X, which is opus website. But which is really useful as a reverse proxy. I can have that running in Linda's containers forwarding traffic to my dot net application, my fifteen year old dot net to Fulham's I'm running windows contain is on the same custom engine, which is the entry point to my app can do all the small stuff. I can do SSL time nation in now, I can do caching I can HTTP if my legacy application didn't bother with any of that stuff without changing my legacy up. My legacy out becomes an internal component. This no accessible outside of the cost of. So now, you're you may be dealing with the project where you stop billable anymore. Like, you don't have the source and yet you've got work arounds now to insert this new behavior. Absolutely. Yes inside you'll DACA. File you can you can Compal yo app from SOS all you can do whatever else you can do as long as you could script it. So if you go MSI, you can Amazon deployment, and you'll DACA file get your up into a container. And then, yeah, if you can then put engine x in front of it, then you can use the as a proxy to route traffic between tightness. So you could maybe break peaches of this big monolith. When the misstep containers use a different tack stack old us sort of stuff. So all of that becomes available. Once you have a hybrid, custom. As you bring some of this this great Lennox tack into your well without having to be a heavily bid in its expert. You know, because you can we contain contain the same with the Knicks windows. He don't need to be excuse to get the advantage of the open source stuff. Right. Right. What about actually setting this up in the cloud than it is just virtual machines that I'm running swarming? Yes. So right now their teeth things you can do you can use. You can spin up a whole Dockery infrastructure with a bunch of tariff scripts that we provide but most of the car provided is have a managed to keep an service. So at the moment if you want to run this in the cloud, and you've got windows workloads. You're going to need to use. You're going to want to. You're going to want to spin up VM's yourself on unmonitored them. But in the future, you'll be able to use a managed Cuban at ISA is. So when just over twenty nineteen is likely to be the minimum serve a version that will support keeping at ease in production. So by the end of this year, Cuban Netease, released one point thirteen should bring windows workloads into production on windows twenty thousand nine hundred support that and then as you aka which is the Monisha keep service should have not support festival. I guess of the major cloud. So by the end of the year, you should be able to get that whole mixed hybrid workload in a manage service to. I mean, we want to go to manage service. But if you wanted to be using windows containers and production today, you can't use the Kuban any service yet exactly right now is only for links workloads. Right. And and presumably at some point the Amazon Kuban any service on the Google will as well. Oh, yeah. Absolutely. So two things need to happen. So that they need to support windows twenty nineteen as an operating system for the VM. So. They didn't age that runs twenty nineteen on then Cuban TS one team needs to. So that will have the window support. And then the cloud operates is can bring nine to their offering. So I'm guessing night when we first because if you look the Cuban development community and they've got their own slant community week who follow what's going on most of the development Weiss being done, a ks to verify all the bits and pieces. So I'm guessing I guess we come fuss. But yeah, then then Google, and then we'll follow very likely to follow. But it it does open up the store to Cooper Netease. When says done, I just can't imagine anybody using anything other than Cooper says a service. Yeah. It's a valid point. So most of our customers right now using swollen because historically not sold the DACA supported in our own enterprise. Plus the platform we adopted Cuban Netease. So now, you can run on the same Kosta the same set of serve as you can run swim or Cuban Netease to get up so economic team who perfect Cuba, Netease who are deploying stuff with cube a different team. He professed swollen on the same set of his obviously on primal, or in the cloud using using is I'm so, that's that's pretty powerful. If you make a choice to to Cuba, Netease, then you can still use your DACA, compose files. So DACA, compose is the application definition language that says, right? I have a website at the uses this Dockery made on a have a proxy visas. This DACA remain on. I'm running a message cube with this image all that sort of stuff then the dog composed the entice is much simpler on this. What you use on on the desktop won't develop as us with your Cuban deployment. You can take your DACA, compose files and deployed to Cuba Netease as well. So you get the benefit of a simpler language, which is easier for teams to what together on if you if you go full Cuban TS to saying that it's a. A more complicated language. It just takes takes more time to get your head around all the business pieces you need to pump together. Sure. That makes a lot of sense that that does issue. See all the pieces come together. It's nice see windows approaching being I less citizen in this. But it's only just starting to happen. Now from where I said, it looks like the real innovations going on in Ayrshire and migrating its way to the operating system doesn't interesting point over the networking stuff that went into window so to support Cuba Netease onto support. The we have in swan came from Missoula Soviets your networking guys as understand to we're working on the operating system. I'm bringing in the knowledge on the on the code. They had to run that. Then it's workloads in his your I'm bringing some of that stuff into the several bringing system. So. Yeah, that also seems to reflect the new organization the team to write the there's really not a window seem for say, it's part of Azure. So that essentially that they're taking from Azure and making versions of windows from it. I think this is rarely at the beginning of this right exit only happen this year. But you're describing what the reflection of the organization there. Yeah. Yeah. I think it's interesting to see where this stuff goes. Because some of the organizations we work with they've got legacy network loads. They wanna move to the cloud. So the easiest ways to put it any container running in Docker up in a cloud. Yeah. Others on looking at that that what goes to saying? Well, we a lot of dot net stuff actually short time is just run these mullets is as in containers in the cloud or on our new infrastructure longer term plan is to remind them. It's don't make core. And then we just going to do some performance comparisons. And we're going to look at the longtime custodianship have running these things in windows contain his competitiveness containers. I'm because it's exactly the same co base. I mean, exactly the same tool set some using Docker to build these images onto run the software. I can really really get comparisons. And the likelihood is you'll find that Lennox versions run fast that the several bringing system these fear updates runs Lena on his cheap pizza run. So longer term if you have the appetite to move Olympics they are. Going to be benefits that there could be some benefits there. Yeah. It sounds to me between twenty nineteen in these updates the past to taking existing dot net. Applications and moving them into containers is about to get a heck of a lot easier. Absolutely. I mean, you can do it. Now people have been doing this for a couple of years. Right. But they're all those little quirks to walk around. And there's the fact that the images are pretty hefty. Yeah. We unless you've goodbye with slow. You darn old us not going away. I thought that you can do the same things now that you can do on is containers. I it's just making them easy to use. And Secondly, it's making it easier to to migrate between the two. So if you go someone like me who is Lennox passion, onto windows person out have to remember things only walking windows, not because the feature power teat pretty much. There's still a couple of things, but pretty much the things you do day today. Other exactly the same same DACA commands. Same talk afoul struck show. Same. Composed file, it's it's you know, it's just the same stock. Interesting. Awesome. So Elton, what's in your inbox? What's next for you? I have known inbox zero person in my current. So the title of my inbox window the moment says there are fifty six thousand six hundred and twenty miles. I think I got you beat. I am inbox zero person in my inbox right now is at twenty five beach both hundred forty one thousand seven hundred thirty two. Right in the middle. There you go into my board that my whiteboard three things for q four. So I run a windows workshop at various companies, including Dhaka comb, which is conference, which is basically it's a motorization story. So it's not whole thing of taking my existing don't net three point five or two point Noel, whatever application how I can bring not running in Dhaka and how I can then break compa the modal if and modernize the architecture by running features in different containers, and all of us over stuff update until we news twenty nineteen because that will solve some of the quacks that I've been talking about on the Secondly the cost coming out. So I need to write that record it, and that's going to be about DACA storage, which pretty cool on the third thing is my book, which is doc own windows. I'm taking the second edition again is all about updating it to we do savvy twenty nineteen this makes the whole show. He sounded like it was a plug for my stuff, which is not. Not not true at all. But it's like we're asking you where to learn more. And you've got a book coming. That's awesome. Thank you. That is good. Yeah. Yeah. Then yet blogging about this carnival the way. So the first edition of the book was all about windows over twenty sixteen but all the DACA falls. I did in the book that's code samples of blunt by each of those you don't need to go by the book. You can just read my blog, and you can get most. You can get most. That's awesome. I really enjoyed listening to you guys have this conversation. It's. Serious. It's just not something that I deal with on a day to day basis. So I appreciate the perspective. And I'm sure everybody else do to thanks very much else. No you welcome again. And anytime, you bet and we'll see you next time dot net. Rocks. Dot net. Rocks is brought to you by Franklin's net and produced by studios, a full service audio video post production facility, located physically in new London Connecticut, and of course, in the cloud online at P, wwl p dot com. Visit our website is DOT NET ks dot com for RSS feeds downloads mobile, apps, comments and access to the full archives. Going back to show number one reported in September two thousand two and make sure you check out our sponsors. They keep us in business. Go write some code CNN time.

DACA Microsoft Richard Campbell Carl Franklin Elton stoneman Dhaka Las Vegas Knicks Lennox Devon Scott Guthrie netease cloud Westminster London
Embedding Power BI with Peter Myers

.NET Rocks!

53:40 min | 3 years ago

Embedding Power BI with Peter Myers

"Uh-huh. Welcome back to dot net rocks. This is Carl Franklin, and this is Richard cattle haw heared Sydney for NBC city home of Wallabies kangaroos and other marmots marsupials one of those. Yeah. I actually got to see some. Yeah, I went out during magic hour when I was down in camera, saw a bunch of kangaroos. They're very skittish like deer around people, but the Wallabies were just very interested in my camera. They went to sit up with their puffy years and just look at you. That's cool. It's kind of fun. Yeah. Awesome. And dogs eat kangaroo minutes down here like dog food dog. Dog food. If you try hard enough well, you feed your dog. Crazy. Crazy dog herring that's crazy than okay, that's crazier than canned food. I guess actually it's probably a lot smarter. Well, anyway, let's get started with better no framework. Awesome. On the last show we did which was blessed rocks we recorded here today. John Zara told me about this because member I talked about windows ninety five and the browsers electron up. Yeah, yeah, which is crazy. It's crazy. So he told me about Linda cts in the browser. Oh, yes. That's right. The entire operating system. If you head over to bell, art dot org, that's b. l. l. a. r. d. dot org slash j s Lineker you can see that there are several operating systems that you can run in the browser here. Even windows two thousand. Windows two thousand in the browser. Yeah. And also, you know, x window versions of Lennox, four point one, five door twenty nine and yeah, that's crazy. Click here and you might need to wait a little bit. I wonder for that one of just a manifestation of Moore's law that Peters got so much more powerful now that we're just doing emulation of our old operating systems because we can well, have you ever called a remote desktop client from a remote VM and into another remote like you can go? Yeah, related seat's inception in which you know is get slow. It's pretty cool. Yeah, it is. This is, you know, what can I say when those thousand in a browser. It's good idea saying I could do it. You can pull up a Sikh compiler and write code and compile it all right in a browser. So that's what I got. Thanks John. For that, who's talking to us rich show fifteen thirty three, which we did back in April twenty. Eighteen talking to Mr. visuals, lily about the Microsoft business application platform, which included power BI the topic of our conversation today got about you could comments on the show as usual for visuals. It shows he's brilliant. He is this particular comment I thought was really relevant. Is this from Jason Brenner says, one of the points made on the show was at this product could help reduce the amount of workplace on IT staff to provide custom line of business apps, and we're talking about the visitation platforms more of the platform pieces done for you. As a line of his petition developers. I spent most of my days trying to meet the demand only sometimes feeling like I've succeeded when our team is really facing a crunch. Sometimes we pull out the old standby, Microsoft accent. I was going to say windows two thousand browser access access. It might not be pretty, but using access to build a basic forms over data front end to a sequel back end is a quick way to put something into place it saving data to a central database, then being clued, inst- external reports, let staff daily work without having to wait for IT to build yet another quote, full-size line of business up what visuals describes with the business application platform really strikes me as a modern turn into that kind of access development with businesses increasingly move into officers, sixty five. This could fill that role quite well. I would even consider the limited extensively as a plus since it of the temptation to try to squeeze too much out of the platform. Let's face it while calling comma. Access via can be done. I don't think it was ever really a good idea, especially had at the time at one Jason speaking. My language school stuff that I do think it's this whole idea of power be is in imbed so forth. Just right up the, he needs to know this is so thanks for sharing insight about the platform might be new tool to add to our team's development toolbox. Absolutely. Jason, I think power be is welcome to be a good one for that. So thank you so much for your comment. A copy of kkob is on its way to you, and if you'd like a copies dako- by comment on the website at dot net rox dot com or any of our social media because we publish every show to Google plus Facebook. And if he comment on the show, we'll send you a coffee music. Oh, by and definitely follow us on Twitter. I'm at Carl Franklin. He's at rich Campbell. Send us a tweet. We save them to an access database with a DD link. Give you more point three ten bucks to anybody who can define DD. No, not you. I know you can. All right. Let's these Peter Myers. He's here with us. He's worked at with Microsoft database and development product since nineteen ninety seven today specializes in all Microsoft data products and provides mentoring technical training and technical content authoring for sequel server office share point, Asher power. BI Peter is abroad business background supported by bachelor's degree in applied economics and accounting, and he extends this was solid experience backed by current MCSE certifications. It's been a sequel server MVP since two thousand seven pleasure. Me Peter, you guys and thank you for having me on your show. Thanks for being here. This is a really cool conference halfway around the world from where I live because a meaning, all these people that I've never met before. We're having blood old school MVP's lab been working at tech for a long time. Have the old guy conversation? Yeah. Yeah. Did you do your talk yet here? So I did a breakout session yesterday on Powell BI on three workshops today. I'm old done except apparently one interview to go. Hopefully it's still fresh in your mind. So for power, BI people who are new to it, why would you want to use power and what is it good for or maybe a little bit of background. So it's interesting myself here in Sydney, just meters away from an office building that in Ninety-seven I used to work in. Okay. And I joined the national line as a business analyst looking off to shipping statistics. And in those days, the tool of choice was lowest one-two-three. Right? And so I'm reminded because I actually walk by my office building here, and then you mentioned access and I found myself in the doldrums in this role for a while. The wasn't a lot to do and curiosity, the better of me and I found on the disk. There was something to access to double clicked on it and experimented enough. I could Kois data into this structural the table, and then it came you this enormous power to do what I was manually doing well through those keystroke macro loaded onto three. Right, right. And so that was a pivotal moment in my life claw and not quite. Where it led me was from a career in shipping to career in data about shipping, which was just one stepping stone from dater to do with anything demean expert because you've worked in shipping for so long. So you know you had the magic ingredient. And so I ended that role. I ended up backpacking around the world for a while. I came back to Melvin my home city and landed this job. Three months is a temporary superintendent of shipping scheduling around the coast and having an excess development project to schedule this system. And I took one look of it and I went, I knew that this wouldn't work because I knew the industry on you the way that ship scheduling works and schedules a dynamic. I don't wanna see put one, two three is the Cullens of table, right? Because we rotate it. So we do all sorts of things. So I sort of, you know, challenged in the most professional way, could the develop that was doing this and revealed that they didn't have the domain knowledge shipping and it would actually be fostered a teach me and feel my gaps in excess development at that point. Well, too. Then the applicator full them and they agreed and it was a year later that I turned around a full-fledged application to this day. They still run. And the funny story about zest in exit was excess ninety seven the day it has been upgraded. I think you would two thousand seven. He's only ten years behind not twenty, but believe me when I tell you, I got a call and I'm not gonna name the customer and they are on a put it on the internet. They like you, the guy that wrote this database. And I mean the database. Yes. And it's like, oh, could you help us running slow? And I'm like, it's running. So you know, I go to glance back and I'm just so impressed us later to see what I developed very little assistance or you remember, the bible book should have used ago. I would read them cover to cover. Anyway, waited that lead me from a transport collumnist shipping background that somehow worked out exit. Decided on the sequel server. It just seemed the next logical step to up scale up from excess and and I was in the right place at the right time because having sort of I'll say, mastered sequel service, efficient to be in a database develop, someone grabbed hold of me to say, look, would you be interested in doing training? And I sort of interesting background had been that I did music performance at school which didn't lead to a career, but I just enjoyed it. It was also something I did as a backpack was teaching English to foreign language students, formal Celta trained professional. And then I had this knowledge of databases and the combination of three with something that was in demand at the time that you could have someone that had knowledge inflammation passion and could entertain. And so I ended up being aimed CT for awhile. Okay. So you know, having learned, you know, all of the sequel civic causes dot net came out at this point. So even pre-release donado's working on that project. So it was it was more serendipity that I ride right place. Right. Where idea. And then it was the explosion of analysis overseas in Sekouba, which by the way has its twentieth birthday and in November. So there was a gap to be filled. They wanted experts that could do this and what I most appreciate about moving into the space is that it's one of the most creative areas working with data and creative solutions, whether it's data warehouse design through modelling through to reporting dashboards and and then the challenge on how to distribute and share that. It just seems a perfect fit. Sure. So from that point forward, you know, I've been a data analytics guy, and I've been very closely aligned with Microsoft. So whatever they've been doing in the space, whether it's shape be I, if you can remember performance point so of us, well. Well, they go to ninety eight. You're talking about Olaf server rata, correct. That's the way the twentieth birthday comes in actually twenty years and ninety eight that we saw it released his pot of sequel seven, yes, seven, right? So I didn't join it at that point. I came in when it was rebranded analysis service, the two thousand relief. Two thousand four. We had reporting services and then immigration services and the new two thousand five platform. So I've had this remarkable career that's just being in the right place at the right time. Yeah, and go to say what's really driven me is just that I enjoy doing what I do. Sure. And so that's volved to the self service story. That's been a more recent story from Microsoft. So I think your point about the pivotal was what pal pivot? Yeah. Power people coming out as amazing engine built through an ad in into excel, twenty ten, which was actually part of the sequence of two thousand eight to release. So we even saw this fragmentation that we still have corporate be I in the sequel of story, right? But then we've got this branching out a whole new audience to engage the XL people, the excel people, you know, how can we take your, you know, sometimes very good looking worksheet reports. I've seen some remarkable things. Exit. Sheets as well. But when you can show that. B.'s you can take that same data just imported into the workbook data model, and then you've got a whole new ability to just surface that data. But I'd business logic that is something that even excel couldn't shave logic. Time intelligence is a great example and then providing new ways to visualize that. So the XL story took a so far and then Microsoft is once abandoned that part. But there's certainly deemphasize that office is the platform for self service BI and with the birth of a software as a service business intelligence power BI, and I'm the walking billboard for it with his bright yellow should the most interesting years I would say my career being the pas to because I've never witnessed such rapid change and Evelyn and responsiveness to customer needs for Microsoft, then the pow story. All right. So it's incredible to see how quickly and how far it's gone and was still seeing a lot of announcements coming up of major new changes and features coming. The new. Pipeline that Microsoft has the speed that they can put features and there's no longer big version numbers. It's literally just always new things appearing. It's quite staggering with what it done there. Well, it's also quite rewarding because I built a lot of content from Microsoft, and because software as service and the pound this updates, weekly, and pow desktops on a monthly cycle, it's like, right, I have to keep reproducing content that means business challenging to make curriculum, but it's almost like you can't make a book anymore. It's always wrong. Well, it's isn't. It gonna sit down and draw line and say, that's, that's the fishes that are right full. By the time it's reviewed edited in public. It's it's wildly out of date. So that is a frightening concept. But the business model I adopt is that also produce training content for my business and my guarantees that content is no more than four weeks out we, which is sometimes a really painful. What is power BI anyway. So if I would describe pow BI in a single sentence, it would be that it's a data visualization service. It's a simple. As that taking data visualizing it for the benefit of audience, which you decision makers that just need relevant, up-to-date quality visualizations to make good quality decisions of the stuff that we use to use charts graphs, third party tools to sort of try to come up with some sort of dashboard thing in the past. Now it's just the service we call exactly we'll look what works bid unto you. Throw a grid of numbers at somebody. Sheet, decorate those numbers through visualization. Look, macho would normally speak bit of and just numbers integrate. I often a balancing act because you need to. And so there is in fact entice science without talking about Microsoft's power BI before you embark on reporting dashboards, this some sound practices do you or do not use pine shots. We could spend an ally even talking about that. I do. Did we have a book called? How was the ticks, which apparently is hard to your hands on because governments by them all up, but. What's amazing is the book is from the forties, right? Like the original versions of it and they these cues of the just this, the psychological recognition that there are certain visualizations that elicited emotional response than that override the data at that point. Yeah, like the data's almost irrelevant because you if you show a line going from bottom left to top right? You know, western culture, people are hardware to believe. This is good. What the number say that actually gets you to that line almost secondary to the point, but we go down this path visualization. You are talking about the you use the creator, have to make this decision about how what are the emotional sponsors you expect to solicit whether the concert rights as an anytime. Psychological is technology that you need to be aware of, what am I trying to communicate and how best to do that, whether it's a good intention, not the ecology to consider as well. So discussion I get into too deeply because I'm more concerned about the. Technology itself and as data platform MVP curriculum sequel of MVP anymore. We rebranded at some point, but as a data platform MVP now, twelve years. You know, my focus is on technology and on sharing the passion and knowledge and training people in great, great practices. I like helping people such that they help themselves that the reward for me. So we're going to focus on Powell on very Microsoft by the way. So I'm terrible at conversations about compete. I looked like Tableau, and that's just not what I do. Because if you're going to focus on data platform these days with Microsoft, you know, it's it's hot enough keeping up with all of that. So power BI the way I'd like to talk to my customs about it is that it is a database relies ation service and it's somewhat unique in that it's a software as a service. So it's b is a service, and we're already seeing a very strong trend with my customers at least that the moving away from the traditional on Prem Suva's installing a stack of services driving the from there right already see announcements that shape deprecating BI features and so on. And there is this move and customers are willing now to move their visualizations into the cloud. And so it pal b. I is essentially software as a service for business intelligence. It provides the ability to connect to pretty much any data source that you have. So I don't actually have to buy data in the cloud. I could be doing these analytics off. Of low problem status or this is the story. So I, I would say any modern data stool. So whether it's sequel server, oracle Teradata or your relational systems, be them on Prem Malaya's in VM direct connectivity to them via gateways, of course, cloud services, right? Internet stores and software as a service providers. So it pretty much the modern challenges we have today about connecting today and also integrating data from different stores and formats was primarily built into the service it self. So you could expect that it can connect your data and as a developer where it doesn't is an extensive -bility story. So just your own connector and then and then headed low data from there. So the main story is, yes, it will connect to a wide variety of data stolas and data full mats that your other concern then is cloud service will how people get to it. And that's the easy story because you've got a web portal or you some fairly rich mobile applications written for. Your your Android devices. Windows, even the apple watch has its own power. BI app showed the graph. How cool is this? It's like, oh, excuse me. Go to buzz this something, exceeding racial. Yeah. So the next level discussion that I'd have about how he is knowing that it's cloud service for bridging your decision makers to the data. No matter where the data is that there are two distinctly different experiences, pow, delivers dashboards, and they have reports, and this is where I need to be very careful because people already have definition of a dashboard. Sure. They will develop a report that to them is a dashboard and that's perfectly Djinnit. Okay. Report to me says, read only right dashboard seems a little more. I mean, I'm guessing. To me seems a bit more interactive, actually, the other way round. Yeah. So the dashboard is like, when you think of driving a car, the concept of a dashboard is that you need key metrics and you don't need to be distracted by detail, say, all right. Do I need to know what's going on second by second with the temperature of the engine? Okay. Probably not wanna summary of that. And certainly to avoid pocking speeding fines. I need to know what speed I'm doing right now. How much shield? Oh, I have ended. The fuel is critically low. I wanna be alluded to that. The concept of a dashboard is really about a passive more monitoring grants. And so from a point of view, a dashboard is a collection of tiles and the tiles a guaranteed to give you up to date information as up to date as the service can reasonably live. Right. And so you could think that dashboard might we unattended monitoring server? It just sits there and people monitor it. In fact, one of the best examples of SUNA what is just walking around Microsoft's campus and the engineering areas. So. Probably a lot of people on aware, but they agree to the privacy terms with a lot of Microsoft software. There's a lot of telemetry data that is being fed up to the cloud, someway. And that's really fascinating for the engineers because let's say, for example, they add some new feature to a ribbon in excel people using it. Yeah, that's great question to ask. So this chilly, it's collecting that if you agree and opt into the privacy now walking around the coffee break areas of these huge monitors that totally non touch devices. So it's a passive monitoring experience, and there's literally hundreds of tiles showing things like UC's features. So that's what Powell the intens dashboard to be. I want you to hold that thought for just a moment while we take a minute for this very important message. Hi, this is Richard Denner section fall show this year will be December third to sixth in Las Vegas at the GM Grand Hotel. The lineup is awesome. Scott Guthrie Scott Hanson, Scott hunter, yes, all the Scots, but also a ton of great industry speakers from some insight on what's coming up in the world dot net, you know, core threes bringing client technology like windfarms in WPF into play. Could it be time to migrate your existing desktop apps of this new technology? Learn more at Deb intersection, December third, six in Las Vegas at the MGM grand, go to Devon or section dot com to register and use the code dot net rocks to get a discount. And it's at rocks for back on Carl Franklin. It's Ritchie Cam, lets Peter Myers, and we're talking about power BI just defined dashboards as being the sort of high level overview read only kind of panel that gives you a good summary of what's going on. So a report will heave onto associated with the dashboard. I would say monitor broader if I associated with the report, it's interact. Okay. Okay. So the the way that pow the I report to work is that it's to support your discovery and exploration. So you'll find that there's a cool visual quotas Leisa that sits visually on a page and that provides interactive filtering and slicing across the page itself. Of course, page navigation comes into effect on a multi page report. We have the ability of the sort. We have the ability across highlight this, oh my months, this clicking on January, a cross highlight and show me how January impacted on the visuals of this page. Okay. And even QNA which is feature of dashboards too, but the ability to off natural language questions and have responses in visualization. So it means also in a love. This feature is that you don't have to like write lots of reports, right? Your basic reports, and then you encourage people to ask those, you know. Ad hoc questions that come up. So it's really not a report is something here's a report parlance, but it's -application really. So it comes back to how you describe a report and because in business intelligence will often refer to report, says analytic reports, then more concerned with filtering grouping and aggregating and providing a summarized view. And that's why we saw the birth of technologies like all up was to provide that, you know, high-speed high-performance over large volumes of data. In contrast analytic report operational reports, and then we'll interested in ROY by row detail, picks it for an for a warehouse invoice for a customer. Now that's not an analytic report in by the nature of its query. It's quite different so I wouldn't be using power BI to produce an invoice. Okay. It's just not. That type of system is an analytic. Reporting services rolling? Correct. So reporting services is traditionally been both to be on us before we had the new technologies. We would do desk board style reports and reporting. So close alongside we've got our operational style reports, and there's nothing to stop. You still doing that, which is why back to the definition of what you or your custom white referred was dashboard or report, you know, always listened to what they call it, and then I translate that to. That's what pal b. I delivers you might use a pow BI I report to deliver your dashboard legitimate. Okay. But I make it very, very clear that when I talk about power BI dashboards and reports the type of content and Microsoft have intent, that one's monitoring one's interaction, and there's a lovely punish it between the two of them because what you find is that the way that you know humans think, and they've got to answer a question, it might be driven from a monitoring perspective, like what's going on right now dashboards. Great. For just tell me the key metrics of what I'm responding. Even highlighting metrics that are out of shape in someway. Well, they can do that like the guest levels relooked you to that. In fact, dashboards support the ability for users to configure alerts. The apple watch. We'll tell you that something exceeded a threshold, but way that question of all from, hey, things go in, okay, we'll maybe not right. You can click on the of dashboard and it will click through to the report which then provides that experience explore, what's the root cause of that? That value that I see the gas gauge examples obvious, but you also know the answer. The far more difficult thing is no sales are down ten percent off our numbers. And then the question why you got it. You start drilling and digging through data transfers interaction, you wanna fly dive and find that answer. So, so that's that's the story pal b. I will provide those two experiences. We'll find that some customers don't use the dashboards that's not have interest to them all the not ready for that. Just yet certainly reports I corps as in that interaction experiences, what most people expect to be. I reporting tool, right? He kind. And so when it comes to the develop a story, and that's why I've been invited to this conference by the way, I feel like a bit of a black sheep here in DC and it's not that I'm not welcome. But it's like on the talk about data analytics from a developer perspective. And so I'm not here to talk about c. shop or the latest techniques for programming. Sure. I've let those days well behind still a developer, but that's not my core work, so I'm not even up to speed with. I feel like I'm light years behind what I see is the agenda new things. A lot of power be is changed a lot in the past few years to what will it has. Now, it's Volve to a service that he's also Embiid -able. Right? And that's the key message that I've delivered in session yesterday. We've had some workshops on it today. So in fact, but my full fingers there, four things that I think appeal to develop when it comes to pound. And the first is the ability when bed, right? So all of that great content, whether it's dashboards reports, even a single tile on a dashboard or a single visual on a page of a report, and even the QNA experience that described you the natural language queering very lows. Five types of content can be embedded into an application. Are they the five controls the embedded essentially Adib on a web page and then it just injects magic into that. So we use an I frame, right? So so in bidding is really probably the major story for the developer is you know whether you've got existing visuals, upgrade them with a more modern interactive experience, whether you don't have those experiences and your app today, and you just want to take your app to a whole new level with relative ease. The embedding story can take you down that path of once you head great content. Bobby I is to emit. So with that story, also the client side Java script API. Which has an amazing array, although perations allowing you not just to Embiid, but to automate page navigation asserting filters. Imagine one page of the app. You looking at details of the customer and you say, oh, show me click on this button to show me their recent sales details. So the develop hook and navigate to a page with an embedded report and client side enforce a filter. And it's bidirectional when the user interacts and clicks on a segment of a pie chart, the application informed of that application can do something in response. There's a remarkable ability for the app development to seamlessly integrate beautiful modern analytics and provided enhanced application experience. So that's that seem bidding story, and I was very fortunate to work with Microsoft on a project we call developer today, upheld the I produce today's content, and I would suggest you two-thirds of that days. Focused on him bidding with the major story being in bidding reports, they provide that rich interactive experience, and that's what you know application developers. Now application uses, excuse me expect now whole just say for the other three fingers. So we've talked about the embedding of content. Another really cool capability is the real time dashboards. So the dashboards are designed to provide date information and we can take it to a whole new level that pergram medically we can create data sets and push data today. Two sets and the dashboards reflect these almost instantaneously and four developers. It's very, very straightforward thing to do, and it's very impressive. So the moment that you can go to customer and say, look data and his us providing tonight in real time to be careful NIA real results. Then this is another thing develop can do, and it's slowly developed toss because it requires working with the power. So four develop as familiar with request response programming and who isn't today. It's just a matter of finnick aiding with as your ID once you have that token than just sending the right Jason documents up to the service. All right. So that's number two number three's extensively story. So I've already mentioned extensively with connectors, and this isn't a common requirement because pal, I really has a very comprehensive built-in set of connectors all modern data sources today. But let's just suggest you've got some really old system or proprietary designs system and you won't pow the interact with it. So a developer and less likely implicating develop, but some developer could extend pal the eye with a custom connector, and then the last finger stands for extensively again, which is the Pao custom visuals. And this is where your creativity can run wild, because if you go to particular way to visualize data, you can develop that if you can do it in html, then you can develop a pal be. I've usual that will work. Beautifully with reports. You can pin to dashboards the work real time as well. So we're seeing an amazing amount of creativity coming out. There's a standard Chotzen Sankey diagrams and so on. But you know, we're seeing customers, especially large customers that have got the budget interest. One example I know of is an airline that said, but we want to see what the passenger load on Reina's I wanna visual that supplying the moment that we can see the Macri telling us how full the load is. So that's just a matter of a web developer essentially. Animate as well. So they actually Super Bowl with your speaking, Jim elves. Java's JavaScript five type script, right? So we those skills and whip drawing libraries. If you've got that background, then there's a framework that allows you to build test package up and then deliver custom visuals. Awesome. Hey, Richard buddy. Guess what time it is now must be that happy time again. Yeah, that's right. It's time to announce the latest in by onic ocular implants for flying insects. That's right. And bedded powered be is. That was funny. I said, imbedded powered b is. Drew are on one. Oh. Okay. Well, it's actually time to give away a two hundred dollars Amazon gift card compliments of progress. I thought it was funny. It is funny. Progress teller to one lucky member of the dot net rocks fan club. But first, let me tell you about the most comprehensive developer tool kit for building modern apps on the market today. Teller Dev craft with more than eleven hundred teller dot net and kindle UI Java scrip- components and controls. You can easily build modern high-performance web mobile and desktop apps as well as chat bots. The tool set also includes reporting solutions, automated testing and productivity tools, and comes with a range of support options and new this year is a free online training program for all license holders with this alongside thousands of demos with source code comprehensive docs in a full assortment of visual studio templates. You'll be up and running with the progress teller Eck and KENDALL UI tools in no time. Download a free thirty day trial today at teller dot com. Slash download law. All right, buddy. Who's our winter? Today's winner? It should is Marco romo's Barco. Markle Rama's just won a two hundred dollar gift certificate from Amazon compliments of progress teller just for being a member of the dot net rocks fan club. And if you'd like to be a member, go to dot net rockstar com. Click on the big, get free stuff button be is what was I think. Join the club. We have thousands of members all over the world and every show we like to give away stuff from sponsors and every December we give away five thousand dollar technology shopping spree to one lucky member of the fan club, but you have to sign up to win. And we also like to ask our guests Peter, if you had five thousand dollars to spend on technology today, what would you buy. So I've been fortunate to produce training closest from Microsoft, and I've worked in this studio, so I know what a good sit up is like, and they had the awesome ability for me to be standing in front of my PowerPoint presentation like a with a man. Oh, no, exactly. And so I guess he had the budget. I would want that set up at home show how much five thousand dollars would be getting. Actually, green screen is very easy to set up, but it's the real time technology that lets see myself superimpose the green screen I know is easy, but I'm stand that the processes required to provide feedback, like if I'm looking at the camera, right to see myself in front. So when I'm pointing at the rights pointing at some random thing, Greece rain, right? So I understand that expensive. That's necessarily. You can. You can get Jeff Jefferson co, you know, the midstream are doing a lot of that these days where they're smartly embedded. So I think you could get along with five grand. So leftover. Just be dipping a little extra into the coffers to get that done. But it's a great goal. And I do think it's very over. The years has been if you like channel nine, he and things where somebody sort of popped into the screen and walked around on these, you'll studio was pointing. They're gauging it's fun to do, and I would hope it's fun to watch. And so, you know, it's, it's again another avenue for creativity. So I do a lot of teaching, and so there's a new way to inspire and excite people. I'm I'm good for it. I like the idea of this power BI report being so large that you're walking on it and then you have to jump on the go. All right. We're getting out of control. So yes, I, I've done this custom visual on that topic. That's an aquarium, right? I, it's more fun than anything but allows you to plot. By size of fish and animate. And so so I think that we superimpose myself on that was a scooping. So. With with technology. So yes, if I had to set up like that, that'd be that'd be really, really fun. You're pushing against this idea that visuals really bring home information even if they're even if they're made up in cartoony swimming. Tell the story. Right. One of the things remember how to lie. We districts was that if you use specific objects as part of the graph affect so say, you've got a car, you're looking at car sales going up because you maintain proportionality in the car when you scale it up, even though it's technically lying bar graph the bars going up because Carl course get wider as it gets taller. It's actually four times the volume for double the height. And so you actually your shaping feels perception number is much larger than it actually is and change because you're using that graphic to grow. That make sense? Yes. You recommending this say, this is one of the techniques and actually the sample they showed was like a government documentation showing how an industry was growing by making that industries object. It was smelting larger so that they could emphasize that they had grown the market so much, but even if it's the size of the visual itself, the child, if it's reduced inside seems listing, right? So so I guess there are so many tricks to it. You know, it hoped. I would hope that people would use it in a way that conveys honesty data. And I definitely, I mean, we're talking about internal reporting. You're trying to give good information to people who need to make understand, make decisions on it and change behavior of the business to emphasize those. So it's, I don't know who you want to lie to exactly. Well, a story to tell, and I guess you go to Genda to deliver. So I guess it gets tight around that. You mentioned pike when you mentioned pie charts, you're like, and we can talk about that forever. And I do remember on this show, we had an, I can't remember who the guest was Richard. You probably do because remember everything we were talking about the problem with pie charts. And basically this person was saying never use them because they're very hard to actually get, especially when you get into small slivers any kind of significant information it'll say, never. So I will join exception. We always have doughnut shots by the way, which is just a pie chart with a whole. The same rule applies and I have, I think they work very effectively in limited way in limited situations. Like if we had a binary agenda was my female right? Then you, you can see, you can determine the tube at the moment. You've got three more. It does become challenging. Now your objective is to convey many from the date or not to introduce confusion or an you ity. So the other problem with negative values, so then not useful in certain situations anyway, but I have no issue with pie doughnut shots being used if it's one or the other. The shape of the day, this got to be relevant. The challenge of course, is that the shape of the data made available, the set you were starting with, but a year from now, the data may be very different now that if you've got an attribute, that's yes. No, and there's not a maybe in that it will continue to work. Okay. I would guess we'd hope. Yes. Shades of yesterday's of? No, we're getting into a SeaWorld. Yes, this world, no. No. So what I did want to talk about to the embedding stories, the most important story a message to develop his about embedding the first thing you need to understand about how I'm bidding. There's actually two times, right? So there is the embedding which we refer to as imbedding on behalf of the USA, embedding on behalf of the user of your app. And this is an often confused topic. And I think I'd really like to make it clear while I've already described, embedding can be achieved the scenario than bidding on behalf of a user is really simple and not common. So let me get that out of the way is that you will use it today can go to pow dot com. Sign in and access the content that they have rights too. You could choose to build an application with they authenticate using their account and they see the content. They would ordinarily see. This is not a common scenario, but we might see an example such that an organization says, we don't like the look and feel of Microsoft portal. We went out on look and feel now that's what we refer was Saz imbedding. No. Spell. Requirement because the authenticated user has a license and excess ready. The much more interesting and we'll common scenarios the passing bedding that your application has its own identity store. You're going to authenticate them in the way that your application or has. But those uses will not have a pouch lozenge and he has no idea who they are. Right? Because probably I expect sold accounts to be as your idea counts. So this is the common scenario that develops face. So the discussion there at that point is there are a special thing requirements because you need to have the right licenses in place, and then there's considerations how you're gonna many security and such. So the common story is going to be the Perez embedding you'll need to consider licensing, which says, you'll look at Microsoft's pow premium license. You have the ability to work with as your resources? Well, and I'm not sure how deep you'd want to go into conversation, but kind of important that I think it is you are having multiple users access Bauer b. by, but they don't necessarily all have account. On your system of these have mon- power, we eyesight. Well, they coming by replication, even have the power BI count. It's a relevant if your using has embedding. All right. So that is a common scenario and multi tenant applications. This is this is the way it works indicate you use a let him in and then let them have access to reports and limit the date of have access to and who they are, what tenant they belong to. So the requirements when you're going to work and develop Embiid in this way is that you will need license for it and it's going to cost you. All right. So a by the number of users that are using it or so? Yes. So that's where it gets a little tricky. So let me know today. If we went for the power BI premium license, it's actually a cannon license. It's not a pig us ally and what you're actually getting that licenses capacity. All right. So we have p one through six, I think pay three, four, five, two, three, four. No pay one, two, three, four, okay. You getting dedicated capacity in data center. Now that gives you scowl and performance. It gives you the ability by license to Embiid in peds scenario. It gives you the ability to broadly distribute it lower cost, because when you've got your content on a premium capacity, you can share it with free power BI uses as opposed to the power BI pro-life scence, which is required by authors and is required. If your content is not on premium capacity, everybody involved in the sharing. We'll meet a pro. So within the context of peasant bidding a premium capacity, you've got your content, your data sets reports and dashboards stored on a dedicated capacity, then you can go ahead and Embiid it. The other concept is you could fire as you embedded results and it sort of behaves in the same way, but it's, you know, it's a different pricing. Tears is, is it number simultaneous users, so. Okay. So if you're talking about the pay skews, they basically give the scalp formats, CPU memory, and that's super important for your data sets because large data sets if they're import models there, they must be hosted a memory and the mole models you have the will pressure. They'll put a member would ultimately does really kind of come down to users or load simultaneous load. What will hear the considerations. And it has quite complex because it will depend on the number of data sets the type of data set. So by default data cities like an import, the data was imploded into the service and for the high performance currying that we expect, it must be in memory, but the technology works. But there is another way to produce a day to sit known as a direct query model and direct query simply meta data. And when Powell b. I hits the model craze down school system, typically relational systems with a divide gateways or an edge. Sequel database right now, results wise is quite different because you'll find the memory model. The import puts pressure memory and the direct query a lot of pressure on processes. So with those basics out of the way, of course how many of these you have within the capacity. And then when you even look at the report design, like you see some pages of report, they might have fifty individual visuals at minimum. That's fifty individual queries. And as we change a slice of from this year, lost you to look at history is fifty individual queries that are being sent off. Goals uses a somewhat demanding, expect a response in less than five seconds if not three to one. Yeah, don't get it. I'm going to click on something else. Give up more queries, right? What you're getting between pay one to six is that you'll getting performance and scale how much memory, how much CPU and so the number things you need to consider. We'll be the number and type of models the number of concurrent activity. All right. And then when you. Look at the tippety. What's the typical design of a report. Up to like it's going to probably going to fi- low and sort of look at how things are constrained, maybe upgrade over time. That would be that'd be the vice because you've gotta. He'll commit on the pay skews as it is so started to pay one see where you go, but there are other considerations. So we going to see reporting services on yell reports coming into these capacities as well premium teacher. So they're going to take a chunk of resources as well. So if you engage that in tune that feature on while you got less to play with your model. Right. And then you're the consideration is because there's more is that if an input model? Well, that data is on these cowardice lost refresh jer. So you've got refreshing activity that is scheduled going on at the same time. So this so many variables at play here that it's difficult at first glance to go? Well, that's the skew that I need is actually quite good low. And also see being credibly seasonal. Like anytime you're coming into a quarterly report, analytics are going to jump through the roof. Anytime you coming into major market opportunity like coming into Christmas, very ecommerce, at least is gonna jump way up. I think it would work that way, but actually see those patents really these these spikes to be on it. You know, he said these into months, maybe operational reporting, you might see that. But you know the day to day questions and decision making. It's sort of, you know, think within an organization, you sort of see it sort of evens out to become a reasonable. I went flat, but not spikey spike. Do they scale out these resources so certainly can scale up. So you know, moving from one to pay to gives you more results gives you more memory allows you to use logic data sets. The skyline story is just to cheat by buying multiple capacities. So if you find that you don't have enough here, let's create another capacity and this applications dedicated this capacity, but it's not like as easy as scaling out of web resource for. Example is just turn them on and they just so so. Yeah, wouldn't be this concept that we could replicate. Yeah, in that way, man is high. Like like you were talking about the different types of scale. When you scaling data. Often, you've got a single version of it, so you know, it's a matter of how do I can. I fragment it necessarily duplicate it, but issue of synchronization. So it's more like the constraints around a database, a sequel server day, for example, you can set up read if you think you need it with with synchronized, right? Generally on the side, it's almost all read. So making multiple the ratio is an inch. You question? Yes, you could before you unlocked on that you'd go, we'll like, can I just break it down by subject area and then and then scale out that way. But you have those options and more recently you can even scale to different data centers. So it's important that certain data resides in Europe and certain resides in the US or we can create passerbys g-l-a-c. It just 'cause most played much into this as their relationship is supported so assistant support. So when it comes to pal the, I'd be very surprised at Microsoft wouldn't support. So you could expect it any data service access ship went list Viggo Sova. They're all support, but what we're talking about capacities, that's the premium story, the story and why it differs and why you might consider as results because like the p. one, two, three is the same as the as ya, es four, five, six. Okay. So the reason that you might consider as you're is that it's opposable service and therefore you can turn on and off the is only doing analytics between nine AM to five PM we'll save you money and turn it off on an hourly rate works out to be more than the premium, which is an annual commit, but you might work out according to the usage patents that could be the case. And something interesting to note for developers is that if you're going to work with him bidding, Microsoft will give you some free Embiid generations a right. So normally you need to pay for it. You need a capacity to generate Embiid tokens to Embiid reports dashboards. There's an unannounced number that a free so allows a developing getting play around with it on their pal. The. Count on, not sure what the limit is, but at some stage you'll get areas at that point. You might consider firing up a one pound the IM bidded resource, which is one US dollar now, certainly went scale and it's not really intended for production use. But if you wanna low cost, Debbie environment, twenty four bucks a day. Do you want to run it? Virginia corrals. And so that would be the story. And then when you ready to move to production, you could change the f. workspaces that have content and direct them either to another as a result, so to a premium capacity. Right. So that would be a consideration to get you started to sit up a test and development environment, but this is one of those examples of cloud architectural models, right? Where we can give you a very cheap version, but otherwise functional identical, and then with no significant changes, just the deployment rules are different right horsepower this. This'll be important for stress testing. Do we commit to a pay one and what it what? It just doesn't work for. We'll fire up in a four, which is the same set of resources, and then you can seem late a lotta. Against it and maybe just run it for twenty four hours and see if it's fast enough and then shut it down and that the end of the expense. And you've made a decision and it worked out well, now we'll commit to now we want to the year. Yeah, so I, it's still in discussion, but I'm talking to Microsoft at the moment about a white paper because this topic is is very relevant power BI premium sizing like how much is enough you need. So that seems discussion at the moment and evil things go well, look out for that white paper and the next one to two months. Good. So what's next for you? What's in your inbox? What do you do? Nick? I'm we'll hit home to Melvin tomorrow night. Nice. Just in time to wash my clothes repack and hit. We not. Night as well and -solutely. So that's hitting straight there. I would get quick hop through Vancouver to do some laundry and then. Okay. So ignorant. And I got a week in New York, which is the Harry Potter experience and then to Seattle for a week with Microsoft will be popping up to Vancouver to speak at the dot net. Use a group, be developers. That'll be like, I think the second week of toba something like the eleventh is a Friday, lunchtime sessions. I'm not sure if you're gonna put a plug in there for the dot net. A group in Vancouver. Yeah, you'll be able to you about this demoing about embedding at that point in time. So the next four weeks on the road doing what I do. Awesome. Excellent Peter, Myers, thank you very much. It's been a pleasure avenue. Thank you for having me. Your welcome. And we'll see you next time on dot Nassau. Dot net rocks is brought to you by Franklin's net and produced by pop studios. A full service audio video post production facility located physically in new London, Connecticut. And of course in the cloud online at p. w. o. p. dot com. Visit our website at DOT NET aro seek AS dot com for our SS feeds, downloads, mobile apps, comments and access to the full archives. Going back to show number one recorded in September, two thousand two and make sure you check out our sponsors. They keep us in business. Now go write some code CNN time.

Microsoft developer Carl Franklin Powell Jason Brenner b. l. l. MVP USA Wallabies Peter Embiid apple Richard Mr. visuals
Ep. 2  Personal Productivity

Back From The Future Podcast

1:00:46 hr | 1 year ago

Ep. 2 Personal Productivity

"Hi everyone. Thank you for joining us in the upcoming show. You'll learn about the importance of a simple input device. The most of us take for granted nowadays and a little known quirk with how windows works. The will tell us about what he's been cooking up lately. We will discuss some great ways to maintain productivity and stay sharp plus. It'll tell us how he lives. So frugally when shopping for a new home lab computer or Hacking Tosh. The firefighters came by today. Visit Your neighborhood. No they only come by my neighborhood to actually put out fires. Why were they in your neighborhood? They came by doing a food drive. A lot of the fire. Departments are doing food drives right now with the pandemic going on. A lot of people are out of work. A lot of people need food. Yeah it's It's pretty amazing and sad at the end of the day. I've been looking at some of the news and I've seen people lining up around buildings in Los Angeles in New York. Some of the bigger cities where people are standing in foodbank lines. In its reminds me of of the black and white pictures. I used to see in in my books growing up a about the Great Depression. It's insane that we're seeing seminar same stuff today. That's true. I mean a lot of people have lost their jobs. A lot of people could really use some help right now besides what the government is giving everyone the moment. Yeah the twelve hundred dollars. It's not enough in fact I've got. I'm helping or trying to help a friend. He was laid off because a coveted. Nineteen you know the the worst time to actually loser job. So he's he's looking for a job I've been I've been trying to get him in touch with different resources and it's he has the added on effect that his wife is also very pregnant. So that's a double whammy and as we've discussed off lying or your your health insurance. It's tied to your job so working hard to help him get a job but again. I'm not a jar and he's at the whims of the of the company's hiring practices. Absolutely that's very true and there's A. The candidate poll has blossomed with a lot of new candidates due to the recent layoffs in other companies. As well so. It's a very crowded field at the moment. Yes and it's funny working in information security you always hear about a job shortage. There's a job shortage. There's always this job shortage of people who work in Infosec yet in my experience these companies take their sweet time trying to find candidates at. There's this huge shortage. My question is why is it takes so long to find all of these candidates that they need. It's that catch twenty two right if you have the skills you can't get a job and if you WANNA get into infosec they want the skills and it's this back and forth back and forth but I always hear about this great this great gap when it comes to job seekers jobs that are available. It's it's it seems like it's not changing I I I don't get it. Yeah I feel like we could joke all day long about job postings listed where you need ten years of security product. That's on that five years old and different things like that. Where if something's listed in hr doesn't understand and they inflate numbers potentially to make the the job a higher skilled position to justify say a higher pay or better benefits. Then it's artificially inflated and I think most of the need is for these higher level positions because you actually don't see as many low level positions listed as you see higher level positions listed so. There's this disconnect between people with experience and the positions that are needed to feel that gap they should be lower level. But they're not yeah. They need to write the job description specifically to the job that they want not use these templates or have someone who's not an Infosec right. The job description that would save so much time so much disappointment so much just wasted time at the end of the day on both the company the employer the recruiter and the job seeker wish we could do a whole show about the. It job processed. Yeah precisely you nailed a lot of the points. I think a lot of people are GONNA go to agree with a lot of the things you just said. We should see if we can't get Christie. The link data and it recruiting Guru. Get her as a podcast gas. We should make that make that a plan for our first for of the many interviews that will we should definitely get her on. She'd be fascinating to talk to and would have tons of stories and Hanson that. That'd be a pretty big win. We should definitely make that a goal by the end of the year to get her on so just in case anyone is unaware of what he ends discussing. There's a woman on linked in. She's one of the top recruiters on the platform and her name. Is I believe Christie Bonner. She is huge all over linked in giving a lot of great free advice about how to get through these automated systems. Hell to fix your resume. Hell TO LEVERAGE LINCOLN. To get noticed yet we will put her information in the show notes but I think I I found her either Lincoln stocking somebody at her name POPs up and it's funny 'cause all my it connections or lots of my it connections use her or or have some some type of connection with because what she says timeline what she says Israel. She's got great great tips and we will definitely in include her in our show notes. So Ian what's your preferred Kinda mouse. I go back and forth back and forth I so right now. It's funny. I am using a cheap little dell mouse that came with this Dell keyboard that I will and Dell computer that I taught that I will talk about later on but it's a standard optical mouse. This is a desktop setup. And I don't game on this computer it's solely for productivity so. This House is fine. It's wired it's got two buttons and a scroll wheel and it and it suits my needs fine now. If I'm traveling I have a wireless Logitech g six twenty that I got for twenty five bucks on slick deals and it's a gaming mouse and it's got the buttons but I don't I don't use any of that stuff. It's a great mouse and I use it for my laptop setup because it is portable battery longtime. I've had no no real complaints but I am understand. You've been looking at a new mouse. Dj That's true. Yeah I recently build a computer and I bought a new mouse from Corsair. And it's not one of those thumb ball mouses. It's a normal mouse because I love myself. What's a thumb ball mouse? The one they usually have little little ball that you move just with your thumb off to the left side trackball trackball. Yeah don't ball trackball. Many many unloved name. Well there are. There are people who swear by those track ball mice. I'm I'm not one of 'cause yeah like you I can't get used to. It feels foreign and weird but some folks I guess if they've got carpal tunnel or hand problems. They love those mice. Well I recently built this gaming computer and I went all out on getting some top of the parts are really went in and most of my budget was unconstrained when it came to the actual components that I was putting inside the box of that this really nice graphics card a lot of Fast. Ram a great eight core. Cpu to throw in there. Are you team red team? Blue one hundred percent team read right now. It just makes more sense. Pricewise think my next bill will be a amd. But I've got Intel for now. But I do love what. Amd's doing but sorry. Sorry to interrupt. Please continue you come around one day so I put all this time into researching these parts. I built this computer out. I ordered all the parts and then I realized I needed a new keyboard mouse to go with this. It just wouldn't be the same if I didn't buy new peripherals to go with this and the thing I didn't factor in the most was the experience I would have a cheap ing out on the mouse because once I got through my budget on the mouse was an afterthought the keyboard was even less of an afterthought I knew I wanted to vomit keyboard so I went ahead and just spent thirty dollars on a Corsair Harpoon wired mouse. I thought it was fairly nice because it had scalable. Dpi But had. I spent twenty dollars more. I could've got more buttons and it would be awaited mouse. You could adjust the way to the mouse. If I had just purchased in Logitech g five twenty that a friend had told me that he purchased a little while back and he swears by it so for the lack of twenty dollars more I got a subpar experience and I really believe that we could use this as a really rough. Psa To say if you want an upgraded experience you should consider not only getting new keyboard but getting a nicer a mouse. Tell you about the actual wait. I've seen for Aguirre's you can add weight to your mouth. Do you actually do that. Mine doesn't have that feature sadly because cheese down but my friend who does have. The mouse swears by the fact that it's waited because it makes it feel. His words are better in the hand. Because as you're sliding and around it just does not feel cheap and you can adjust. If it's too heavy you can slide the bottom cover off and start to take small pieces out until you get to the exact weight you would like. That's interesting because growing up the the first mice that I would use where those heavy mice with that with the track ball on the bottom of it. You know practical never really felt the need to have lots of weight behind it since your putting your hand on top of the mouse kind of acts as the weight pressing on it. Maybe things have changed but again mouth has changed in. I'm talking about that as well but I've I've always seen that you know for those for the people who play first person shooters or if they're competitive gamers. They actually do the weights. And maybe it's something I need to make to to experience before I become a weighted mouse user myself. We'll see I would give it a try. I mean they seem to be all the rage and like is like I see all of these gamers. They they Swear by them but I think So so in addition to you know the insides of your computer. What are some other cheap things that you could do? That would make your your your user experience much better data day speakers one hundred percent. I would say the next line item. You should focus. It would be keyboard mouse speakers because getting going from a two-point to a two point one SIS speaker system with that sub Woofer can actually make quite a difference. Even if the sub Woofer is not adjustable like in my case are the speakers that are in headphones it is it like to two point one headphone or is it actual like speakers. You Place on your desk. No their desktop speakers. That's cool and and what? What brand did you go with those? I went with ETA fire because once again a lot of the money in my budget went towards the actual pc components so the keyboard mouse speakers were much of an afterthought the monitor's even came before the speakers in the mouse and keyboard so the speakers. I think we're right around thirty dollars for a two point one keys set and they actually sound pretty good because of that sub. Woofer on the floor. I switched to headphones for my for my gaming needs. Now I'm still stereo but I agree with you. I do miss my five point. One sound or my seven point. Waters haven't pointed to sal and just to get that experience Where you turn your head and the sound can go with you because it's three D. and spatial but I would since I don't game as much. It's it's it's not as a big deal as it was but you're right. It does make a huge difference in it does make the game. You know even better it. Just it just suck. She went to the game even more which is pretty awesome. So maybe I will look into Some new some new speakers. I've got some bows that were hand-me-downs and maybe Allah plug those back in. Because that's a two point one system. Here's what I'll do. I will plug it in this week and we'll let you know how it sounds next week even if you have a laptop it's a better investment especially while people are working from home because it can enhance. You're trying to listen to especially compared to laptop speakers which are absolutely the worst so you talk about laptop speakers being bad. I've had the good fortune of being able to use a MAC book pro for the past week and I've been blown away with the sound quality of these speakers like you. I'm I'm used to laptop speakers having tenny sound or or the speakers won't get allowed or if you make them loud you get that nasty distortion or or the speakers blow. So I'm talk about that next week. In fact I will talk about going from windows back to a Mac. And what's that been like? It's kind of like riding a bicycle but the bicycle has flat tires. Because it's been it's been so long I've got so much. Pc muscle memory such windows muscle memory. That I'm I'm having to learn some of the basics again or maybe I'm just old man and now tech is heart. Well at least on the Mac side of things it's so UNIX clinics like that a lot of the same commands will just work if you ever have to drop into the command line. That's kind of the beauty of using Mac. Os It is beauty but to be honest. My my data day on the Mac side is in the gooey. Unless having to build out something blacks blunk I should probably makes exercises to keep my brain. Sharpen relearn how to do stuff from the command line since everyone says it's that much more efficient much faster so maybe agnich exercises week to do a task and do it from the command line just to see if it can be done. Maybe I can script out. Something always be learning men always be learning. It's such a great thing. Abc always be learning. Let coffin toppy so speaking of operating systems they can be kinda weird in how they work. Especially when we're talking about things that are dredged up from the past and have to be supported all the way through all the latest versions back from say the early nineties the weird way that DOS would work still has to be supported in windows just due to backwards compatibility that Microsoft honors to their core. It's almost like a company culture of backwards compatibility. So did you know for instance that you cannot name a folder or a file and windows CON C. In what is constand for in in windows? It doesn't stand for anything in windows. It actually goes all the way back to the battle days of DOS Avocados. The good old days life was more simple and you said it was. It was windows core this backwards come patentability our would say it's to Microsoft's detriment just imagine all that legacy Crofton Tech Debt. They gotta keep on over and over again. You're exactly right. Yeah you have to carry so much stuff along because you don't know if a customer you have on windows. Ten is running some old. Archaic Program from Nineteen ninety-five that they are unwilling to upgrade or the cost is not justified to get the newest version. Things like that it. It can be absolutely terrible and speaking of Mac. You almost have none of that on that side. They upgrade to the point of almost defending their own user base. They remove the floppy drive. The drive the Headphone Jack. And then they said they had courage. They ought to the point of being user hostile. It is user hostile at Avatar about it. Because every thing that I wanted to do I have to go into system preferences and give myself permission to do it and have to do this in the older versions of this operating system. Now everything that I wanna do as a quote Unquote Power User Aka. A normal user. I have to type in system password. Go to this window gotTa go system preferences and they just keep chain chaining surround like like like you said it's to the users detriment. They've got so many gates and I guess that's that's why they call it gatekeeper. That's a really good boy. Yeah so back. To the reason you can't name things con- It actually goes way back to the battle days of Microsoft dos. Where even to this day? Especially if you're familiar with Lenox you'll know that you can use the greater than symbol to pipe things out and actually instead of writing to the terminal writing to console. You'll actually right out to a file so due to that. Still being prevalent today you can still do that in the command line today. Brings us to why you cannot make a folder or a file named con. Not even capitalized. Because so the reason you couldn't use the file name or the folder name. Con was due to how you could pass things to a file in the same way with that symbol. So does things out to different ports. Say where printer was waiting for. Input a user type in Dr Less than El- PT. One and within a few seconds they could be holding a printout of that current directory so it would send everything that would have been printed on the console directly to the printer and the perner would just print that out. That's the way the drivers were written during that time. A folder or a file also cannot be named L. P. T. One two three four any of those. Because that's an actual designated port that you can send things to so for that same reason. A file or folder can't be named con because it represents console so say some old program is written to push something out to a council instead of writing out to file you could program it to where it said right out to con. So it's a special designation that has existed in every version of Dawson windows even today due to the focus of backwards compatibility as we mentioned earlier by Microsoft. But it's not as is if they have much of a choice in the situation if they were to change things now it might break some old application that accompany still requires for some critical business. Line process as. We're all very well familiar. Enterprise if this were to happen in the wrong industry for example say in the airline industry or the nuclear power industry actual lives could be at risk. These are two industries known for operating old equipment until they're absolutely forced to upgrade either by necessity a regulation. There's other industries just like them that rely on old applications and that backwards compatibility that Microsoft is so fond to uphold due to these old applications needing to ride out to the console even in a newer version of windows and questionable upgrade rodent roadmaps and lack of redundancy. The lack of redundancy is sort of assumed on my part here because otherwise we could assume the redundant systems with either facilitate a separate upgrade path or handle the workload into an in place upgrade is achieved for that primary system. I think there's a few things we can take away from this little of information that ninety nine percent of us will probably never use in the future in our careers. I we can learn that. You should always design a system with an eye to the future for an upgrade because nothing lasts forever and upgrades or ultimately inevitable. The second thing is you should always always always have a redundant system for critical business processes. No one can afford downtime. And this pandemic has taught us that. Lost prophets can do some very bad things to good companies. Thirdly don't write homegrown business applications that you do not intend to support for decades literally decades. Because there's no upgrade path when you write something homegrown one day that programmer. That wrote that for you. He's he or she is going to leave. Take all that knowledge with them and then if you ask them to come back they're gonNA come back as an independent contractor in charge. You ten times what you would have paid them on payroll to do all to maintain code that they wrote twenty thirty years ago. Your your comment of `bout the fan domestic and the homegrown code. It's very very relevant and example. I'll give you is all of the government systems. The the check printing the check brake systems for the for the covert nineteen stimulus payments all relied on a cobol back in and they didn't have enough people to get these checks predators. They needed to hire cobol. Programmers of the government reached out to IBM IBM said. Hey calling all cobol folks past and present. There aren't that many present but all passed. We will pay good money. We need you right now to to step back up and help us get these checks printed out. It's it's very true why they did not have anything. Carin or made that switch to a more current system blows my mind but they're so big. This is often a a failure of these of these. Big Ships. Like big enterprise were big governor. They move slowly and there's lots of plans to move but then other things happen and those goals get pushed back and you wake up one day and you lose one of your business business processes because you you no longer have the skill set to keep that running so I agree with you that you got to look forward to gift you have to look forty. F- to to look for that disruption. You gotta be able to win. Things are going good. You have to plan for that obsolescence plan planned for that failure so that you won't be caught flat flat footed when black when Black Swan events like Cova nineteen happened. You don't WanNa be in this reactive. Phase you WANNA have a a continuity plan that can equate for not having a cobol programmer at your reach your precisely right a reminds me. These places like that have redundancy. That system was burdened overloaded. They couldn't rely on a secondary system because all they had was their primary system or if it went down perhaps it was unintentionally. Dost or de Dos te for that matter and you've got this system handling the back end of a website that is now seeing millions of people going on employment all these requests need to be handled and these old Komal Systems. Were just not developed for that load of traffic when your average unemployment rate is tremendously smaller than what we've seen during this pandemic. Yeah it's one of those lesson learns and if I was a leader of a company or a business and especially in. It and the business process would want to have the the redundancies built in but also always be looking at the future looking at the future saying hey is this language dying on the vine wears what what language is my what what languages army talent pool coming out of school learning. What's being tied in school right now? We should be always looking towards the future. Yeah in case. We don't have these people who who have this system knowledge. Or who have this this business knowledge? You'll get caught flat-footed every time in companies can fail for this exact reason you you may not always be able to get that resource or if you do like you say they'll be charging you five to ten times more and that is that is just a simple reaction to supply and man so speaking of an eye to the future. What is in our future in terms of what you've been cooking up for us. Ashby cooking up some covert lack of ingredients. Cookies in these are actual peanut butter cookies. I was watching you to one night. In fact I was watching Alton Brown. He was on that show. Good eats and now it's been reborn as good eats reloaded. And he's based out of Atlanta and he was just doing pantry rates and making recipes from ingredients that most of us have in our pantries. And I've got a confession. I've got a sweet tooth I love. I love sweets. I love Peanut butter and I love making peanut butter. Cookies and this recipe is pretty simple. It is super basic. All you need is one cup one cup of peanut butter three Fourths Cup of brown sugar. If you don't have brown sugar you can use white sugar. If you're not doing sugar you can do Stevia or splendor or some type of sugar substitute half Teaspoon of Baking Soda. Pinch assault a large egg and the next to are are optional. And that is one teaspoon of Vanilla extract and half a cup of chocolate chips like I said. Those two are optional and not really needed. But it's super simple. You combine all of those ingredients into a bolt. Mix THEM INTO WELL INCORPORATED. So you mixed the peanut butter sugar baking soda and Salt. You can then add your egg. Mix It some more. Put It on a cookie sheet lined with parchment paper preacher to about three hundred fifty degrees and then you bake for about ten minutes and it's very important once you once they start to smell good and you take them out. Do not take them off the rack. And you'll be tempted to but if you do they will crumble apart. They'll just break so leave them for at least five minutes at the minimum. I know it's hard but five minutes. Leave them and then once you get done you'll have covert nineteen approved peanut butter cookies. They are wonderful in there. They go great with milk of gas. They're so good there to get fact. Maybe I'll make some tonight. Sugar can cause a real slowdown in every body. Especially if you eat a lot of sugary things for lunch and then you try to sit back down at your desk and actually get anything accomplished. You have any tips or tricks to kind of help us. Keep our productivity high and and keep the sugar bugs from destroying productivity. Yes yes that crash from sugar. It's real and the crash from carbs. Which are basically sugar is also real. One thing I've found is too late if you are working from home or if you're working and you have a big lancer you're you. You just ate that that. I'm donut. That's been at the break room. Get up and walk around right after you eat it. Don't sit down to get up and move. Get up and move real fast. If you don't get up and move then that crash will certainly happen. But I've also got some music productivity that I've been exploring for the past three weeks and I've heard it a long time ago and I had forgotten about it but it's something that I've rediscovered from a tech blogger. Cold Carl Franklin and Carl Franklin. He is a dot net programmer. He's been on this week in Tech. With Leo a couple times. But he's all about productivity hacking and and the science of help people learn how you stay focused and he also happens to be a very good musician so he combined all of his skill sets. You know music programming learning coding in this blog and APP and called. Mtc or music to code by and it's not an album of music really it is. It is music but it's more as a scientific Lee created productivity tool it helps you focus intently on any task and it does this by working on how humans respond to beats per minute. And how your attention span can change and sway and Quebec and the focus. All about the beats per music and there's a optimum beats per music that goes back into concentration and focus and the ideal range of this from research is fifty to eighty beats per minute and what this does is it gets those Alpha waves. Going in your Brent off waves are what lead to the intense concentration and intense focus. So Carl is a dot net's programmer and he would often find the same distractions that we all have that work you the dog barking the the guy outside cutting grass kids crying all of those different distraction so he was saying. Dang I keep getting distracted. What can I do so he he got into the science behind it and he also found out about the Pomodoro technique which is twenty five minute dedicated focused blocks which is basically saying all right. You break your work in two different task or you break your day assignments into these different task in the ideal time of this is twenty five minutes and I will explain work so Pomodoro is. Let's say you have a task. This task is make make make an account for twitter. This could be a task and what you do. Is you start this at twenty five minutes and it counts down just like a egg timer tick tick tick tick tick tick tick tick tick tick tick tick right. And during that entire time. You're focused on that one task when the time's up. Ding Ding Ding Ding went. That egg timers up you. Then give yourself permission to walk away from the task at hand and while you're doing that the brain is processing everything that it just did. It's processing all all that it just accomplished. And all that just learned and that wine instance is they pomodoro method and this goes back to what Carl Franklin with his MTC be or music to code by was he made music that incorporated the same twenty five minutes of the pomodoro technique combined that with music. That was in the fifty to eighty. Beats per minutes to help you focus so if you combine each of those things you can focus intently on the task at hand now. I know each person finds her own way to get into the zone but for me personally if I put on these songs I am about sixty times more productive than I would be without it so I am a strong fan strong e evangelist of of the of the pomodoro technique. Along with this with this music. And it's and it's also important that it's not music with words is just music in the background that just kind of get you into the flow. Gets you into the zone and once you do it time just seems to disappear and you and you you you look back and say Oh crap. It's it's lunchtime. Where Oh crap. It's it's time to punch that clock in. It's time to go very cool. Very cool tech technique. Carl Carl Franklin is a cool guy. He's done so much in fact when he was Trying to get this idea of the ground he said. Hey let me put this and kickstarter. His goal was to raise seventy five hundred dollars and he beat that by twenty five hundred and raise ten thousand bucks in thirty days and once he once he did that he actually produced. This album called Music Code by and it's twenty tracks all twenty five minutes and they're all different sounding so you don't get bored but it's a great way to get the job. Dine at hand if you go to his site just search dot net rocks or MTC be. He's got some samples on there. He also has some APPs in the apple store and the play store. You can get it on your Mac PC android so really check it out. It's it's been a game changer. For me at it's funny leg like I. I can tell my my workflow when I have his soundtracks on versus when I have it off. It's it's almost like I get in this Zinn state and I'm just cameron stuff away like itis lose track of time and it's even on things that I that have not excited to be working on. And that's that's what that's what the magic is is once you get in that flow. It's it's hard to get out and the other thing that I found to help me with my own. Productivity Demons is the Eisenhower method. And that's a super simple four square method and you put things into four categories. Urgent not urgent important and not important. And for example something that surgeon and important might be emergencies. Deadlines a call or a meeting that you have to get to something. Non Important and not urgent might be busy work or a time waster and if you combine this is and our method this the simple grid with what you have to do at work. You'll find that you get your work done a whole lot faster and you got more time to spend on the things that you do care about. Not This busy work or not distraction or I'm these interruptions it's it's all about prioritizing the work that's important versus not important. What's urgent and then not urgent. So yeah that's that's my two cents on that. How do you stay productive? Dj and then. What do you do when you find your mind? Slipping Kes- 'cause you worked from home for a long time so you've you've probably got lots of good tips on productivity. When I'm working from home a lot of things like music good headphones. Even though have the Nice speaker setup good headphones really helped me block everything out and just get my mind into what I'm doing the MTC be the fact that it doesn't have words is right in line with how always felt without actually thinking about it. When I'M LISTENING TO MUSIC WITH WORDS IT stops my complete train of thought of from China type of email or even read something. It's like trying to write a read when someone's talking directly in your ear which almost defeats the purpose of working from home. Where you have your solitude and there's no constant interruptions it's funny because some days if I'm at a client site and I am surrounded by distractions bleeps and blacks and lights and people walking and people drinking coffee and the copy machine going on. You've got so many micro distractions. It's a wonder that any work gets done exactly so along the lines of keeping productive. Is there anything you could share with us? That helps you. Also keep your mind sharp while you're in that productivity lane. Yeah I've been taken a course on you Dashiki and it's actually about mind tricks. It's about mine tricks and doing things to keep your mind from atrophied keeping your mind guessing always trying to get those news in APPs is going one thing that I've been working on right now is getting back into the programming mindset that. I've been working on some exercises for javascript and I've been learning about the dom motto which I think stands for document object model and Javascript is different from the language of Java and Javascript. Is You know it's to enhance your your webpages to add interactions and and functionality to web pages and just the act of having to get into that programming mindset really gets the brain thinking in a whole different way because you are having to work within these constructs and these finite limitations. It's the computer can do this or it can't do this. County makes a computer. Do what you WANNA do. So that's one thing to keep keep my mind sharp and the one thing is sending a simple as putting you to watch on the opposite. Wrist is funny. We are creatures of habit but if you do little small things like that or just try eating with the with with. Um your non dominant hand see how it feels. It'll feel weird at first but your brains learning a new path in your brain to keep your brain sharp and one thing that I was able to take advantage of this week. Going back into the actual javascript was. I saw that During Covet Pack Club has some free courses. These courses are designed to take someone who is a novice and get them up to a nice foundational level and some of the three. That have highlighted here are python. Mainly because I'm INFOSEC and python is used in lots of scripting lots of back in infrastructures of the software that I use the other one is Java script like I mentioned before and the third one is HTML S. It's funny just working on the website it's getting reintroduced into the actual back in the web. Which is H- h html and then adding the elements to the page or making the page? Look like the way you want to do it with with. Css So even walking through his courses even watching the videos on the courses in just reading through the course material. You know it's it's just reactivated in certain parts of the brain that have kind of been dormant because you've been focusing on other types of work or you've been learning different types of work or different types of products. It's always good to go back and get those old muscle memory back into action. So that's what I do to keep my mind sharp. What about you? Dj So speaking of the document. Object Model. I WANNA go back to that. That was probably one of the hardest concepts for me to wrap my head around for the longest time when I first learned about that concept even today. I probably don't have the most clear. Understanding of the DOM has as its referred to. Can you tell us I'm curious? Just personally how you wrap your head around that. Yeah and there are certainly gaps in my knowledge. I'm no expert but basically if you break it down to it's simple it's blocks you've got your document which is your web page which relies on HTML language if you consider that in object something in programming something that you can change the document object model says. Hey if I- obvious gate this document or this. I can repurpose this ten million different ways so I'm able to Reuse Code on anything that I want. I am able to take the same Java script. I'm able to just call it an object and I'm able to recall that object to any new code that I write or any new. Html and I right. It's it's great in the fact that once you make something an object it's portable and it can be reused by yourself or any other programmer. Who wants to use it? So that's kind of how I see it. It's it's been a while and I'm sure I got some stuff wrong but that's all I'm seeing it so during the spend a lot of us are learning to live with just what we have in our house. A lot of people aren't going out thankfully we're stopping the spread and flattening the curve. But that's also lift a lot of people their lifestyle. I know that you are very frugal person. And you do a lot of saving and you find very innovative ways to save money but still do what you need to do. Is there any tips? You could give everyone on how they could live more frugally during this these hard times. Yeah one thing is by things when they're on sale and that's that's mainly food and this is something I learned someone in America and then somewhat during my time in Asia but by by your meat when it's on sale when it's when it's sixty nine cents a pound or pound. Buy It in bulk and then put it in the freezer by an always buy in bulk. Began 'cause you you do save that way now. Now that goes to the other extreme. You don't want to buy so much that should become a hoarder but know that if you're going to eat it by in bulk on sale like if like for example. I buy chicken love chicken. Al Wait for it to get to sixty nine cents or an anathema pound for chicken breast or chicken thighs and I'll stock up now. Just put it in my freezer and thaw it out whenever I need to eat it. So that's that's one thing I do. What about you most of the time we do? Try to slowly stock up. We try not to go out and buy things out of fear when they start disappearing off the shelves. We try to buy a couple extra every time we go out and slowly stock up on things. We did just recently purchased a mini fridge that we keep in the house which allows us to stock up on things a little easier. Good question did you buy it new. We did but I just heard from a friend spoke with yesterday. Who said it's actually very hard to find them right now. That makes sense. One thing that I recommend is when it comes to appliances or things you need on the house. I'm all for quality but if you are on a budget or you WanNa live below your means. I find fantastic deals all the time on. Let go on offer up and even ebay fact my this computer that I am recording this on. I gotta off Ebay. There is a wonderful nonprofit here Ben Rooch and it's called the bad rooch computer recycling center and I got this del Plex for sixty bucks. It came with a full license of windows. Ten came with a hard drive king with Ram working and I said Hey I I need a project work on. Let me turn this into a hacking tosh. And that's what I did. I wanted to learn how to use a MAC again. And this has been a great hacking tosh as far as compatibility everything works and it wasn't as as hard as it used to be. So if you do want to learn about Max or if you've never been able to afford one I would certainly look into making a hack Taj. You can find tons of videos on Youtube. There's even when from Lantis Tech Tips about walking through it so I don't always buy new unless I have to. I'll often find a great deal by by buying something gently used or second hand. Because you don't always even by new you you can always find stuff for the cheaper and then re purpose that into something else like by that mouse that you're talking about by that keyboard that you talked about earlier. Soviet question for you. I'm really. I'm using some old apple headphones before they switch them all over to the lightning port. I'm really looking at getting a decent traditionally. What is at three point? Five millimeter Jack headphone. But I just WANNA get a brand new pair. I WanNa do it frugally. Are there any tips? You could give on kind of how to go through that purchasing and in how to do it where. I can find headphones. I could wear for hours of Bonin without killing my ears. Like these little apple ear buds new money. I've got the ear buds and hard plastic. It could do. It could do some damage. Yeah it's funny. I use foam tips foam tips. That are that are normally reserved for high end headphones. These headphones that cost hundreds of dollars or even up two thousand dollars. They're from a company called comply and what these are is. They're just ear tips or foam tips. That are replacements for the ones that. Come with your headphones. And the great thing about them is that they give you a nice noise cancelling affect for cheap. It'll use this nice foam that you that fits in the air it's very breathable doesn't make your sweat. It's this foam. You press down. It'll compress you've once you get the phone in your ear you you put it on top of your existing cheap headphones like lack your air pieds or your five dollar at funds. That came into your phone. You put these replacement phone tips on and then once. I'm there length of their anger ear. And you've pressed him down a compressed him they then decompress and expand and basically make a nice little wall in your ear canal and this has the effect of basically noise. Dampening and noise cancelling. And it's. It's amazing. How much noise is blocked out versus the versus the simple rubber tips that come with most headphones these days. The great thing is that day cost between nine dollars six dollars fourteen dollars. They often have sales and they work with your existing headphones which means you don't have to throw away the headphones that you've already optimizing and and and I say ear buds not not. I'm headphones because most most of these are for ear ear. Buds not the not the cans so so comply foam tips wonderful investment and. They often and they've got you know got kinds. That are four audio files as well as people who are into sports so if you WANNA have not sounding headphones and you're at the gym where you're running. These things will stop. Stop your from sweating. Great Great Brand can't can recommend them highly enough. That is interesting. I've seen the different ones that go around the apple podcast to sort of keep them in your ear so they don't fall out by the way about a month ago. While I was raking my yard I found one single AIR POD. It was just covered in mud and dirt that had been lost for. Who knows how long this poor person obviously lost it right there and couldn't find it and it was long gone. It was beyond help but losing air pods is a real thing to these help. Do you know if these comply phone tips help with that. I've got the first in air pilots and they never fall out year. Which is the first headphones I can say that about? It's it's they are pretty well design but the problem is I've had them for year and a half in the batteries. It's just sad nowadays but I am still using and they are. They are wonderful in fact. Their apples sleeper hit most profit from those products. Like ever. It's it's it's amazing how much money they make off of those things. I would say Get get the get. The comply foam tips. Put them on your air pods. And they should not fudge ear because like like I said once you once you compress the foam. It'll go in your ear canal and then wanted expands. It's nice snug fit. You know it's it's it's hard to get those things out. Once West they expand. That's truly the best life tip that you've given on this. Entire show is held to not lose absorbed air pods. They are expensive. They are expensive and and do not get those knockoffs. They don't work. Get THE REAL APPLE. Airbus don't get those cheap knockoffs effort. Nothing but Har- stories about those so. I'm curious your the Frugal guy here. Did you pay full freight for your air pods now? I did not in fact I used credit card points to get them. I use my chase credit card and chase has a portal to the apple store so my purchases over the year prior gaming points to buy the air pods so I didn't really actually pay pay pay for them. You know so you know once. I paid off my card. I had the points left over and I was just. I was able to use those same points. Transfer them to the apple store and didn't pay anything for him. That's another great once again. You are just full of them. So while you're listening to your music with your Air Pods Hell. How else do you create an optimal experience to stay productive car off Franklin? The Guy who I mentioned before with his music code by he got into this flow state from the actual author of the book called flow these psychology of optimal experience. I'm going to butcher the guy's last name but it's ses sent mid Holly Caesarian Holly and he studied people who got stuff done. People who were highly productive any interviewed lots of people and he also went to psychologists and scientists and he would study brainwaves and he would do these experiments like I said before. There's a certain brain function that that that turns on this brain. This brain activity turns on when you get into the quote unquote flow. And like I said before time just flows time just goes time just goes out the way. But you're you're so focused on the task at hand that you don't even care about time and the body reacts in this zoo unlike state in in in this euphoric chemical reaction and this book flow tells you how to get into that optimal. Get things done method. It's often used by athletes by chess players by programmers by people who have to give presentations. It's it's just practicing. What the pros do and getting yourself. The same tips that they use to get in that state so check it out. It's nine hundred and nine on Amazon for the paperback in. Its twelve ninety nine for the kindle sadly at check there's no audible aversion yet but there is an audio cd out there for people who still rock. Cd Players Talk About for. Go if you're still buying CDs for your CD player you're probably getting some really good deals on old CDs. Well one thing that you could do is you could rip it. You could rip it you know and then you could up upload it to your spotify playlist your apple music or and then you would always have it so you could kind of make your own. 'cause I'm I'm a huge fan of of audible is Trivia. Audible is really Great Service. Especially for times like now where a lot of people are just stuck at home. Trying to find things to do. Netflix only lasts for so long. Yeah and I I am find myself playing some some books from audible. And if I'm walking or driving the want to you know keep on driving or keep on walking so I can get to that next chapter or chapter so good. I keep on walking just to just just to hear it and plus if I'm doing a chore around the House Audible. Makes the time go by now make mixed a Chore Less Burdensome I- Agree? The next best thing is a podcast. Yeah that's true. Let me ask you this. Do we have a website set up for our podcast yet. Is that own line. Can People visit they can? We've been working very hard behind the scenes to bring back from the future. Show DOT com. It is live and it is up so we encourage you to check out back from the future. Show DOT com. It's up its running. It lives well that seems to conclude are back from the future. Podcast would just like to say thank you to everyone that is listened through this entire episode and everyone that's listened to the previous few episodes. We've made we really put a lot of work into this and we hope that you get value from it as much as we feel like we have shared value with you. We encourage you guys to give us a thumbs up like it. Please help us get this out to more people. Merodon when you grow we grow so thanks a lot. Thanks a lot. It means a lot and it keeps us. Motivated keeps keeps coming back each week. Well thank you everybody. We look forward to spend more time with your next week. Have a good is?

programmer Mac Microsoft government Christie Bonner Infosec apple Carl Carl Franklin Logitech Los Angeles amd
CSS Grid with Amy Kapernick

.NET Rocks!

00:00 sec | 2 years ago

CSS Grid with Amy Kapernick

"Hey rock heads. This is Carl Franklin, and this is Richard Campbell here to announce that NBC is back in Copenhagen March twenty seven th you twenty at DIGI ibn. It's two days of workshops and a one day conference. Go to NBC mini dot com. To learn more and NBC is coming back to America back at the Saint Paul river center in Minneapolis may six to ninth. That's the one go to NBC Minnesota dot com today to register and tell them Carl Richardson. Yeah. Welcome back dot net. Rocks is Carl Franklin Richard Campbell? We're still here in London. I know we're stretching this out now twice as long. You're going to hear us from London for quite a while the regular basis. Yeah. How are you? I'm really we haven't really chitchatted. We're fine. You know? And if they complain about the dogs a little older hit a little gall bladder tack the other day so had to have an ultrasound said now he's a shaved belly. And the digger I feel for them. You know, he's old enough now that gets a little bit ill. He gets really ill. Yeah. But once the right beds were in pounds balanced, right back since he's still on the Klingon elder council. He's all right. You know, what I just plan on being complete mass? When we lose a, you know, there's one thing that I didn't mention on the show, which is we're looking at one of the oldest churches in England hair. Yeah. Westminster Abbey strategy. I was actually in the first American choir to sing in that. Oh, yeah. I know that story eleven twelve thirteen and like that it was the community chorus of westerly cool. And we went on a tour. Yeah. At that age short, even take in which you're looking I had no idea. Yeah. But a couple years ago, I came back here with my wife, and we went to an even song. And I actually got to talk to the choirmaster until his eyes lit up us dice, also go, right? All right. Well, let's get started with better no framework. He gets. So you know, what limiting is limiting is static analysis of code to find bad patterns and things like that. Well, there's this tool called ES lint. Okay. Which is an open source lending tool and. If you just want if you've never used something like this, even if you don't plan to use it for Java script, just to go look at the rules, the default rules that they enforce is pretty good righteous gives you some good thinking gives you some good thinking, even if you're not going to allow Linter to criticize your code. But what I thought was really cool about this is that the relationship to type script so recently. Type script team shared their roadmap in which they described formally adopting ES Lynton their repo and working to improve type script compatibility for interesting. So they type script team has a Linter T S lint for obvious reasons, obviously. And they found it had some performance issues and nor to fix those performance issues. They would have to break the API which would cause mayhem distress to the user. So they decided instead to adopt the ESL because it works. Really? Well, cool. So yeah, we have fewer libraries that are doing more. Right. So once it'll limiting rules apply. Damore tools. Yeah. Pretty cool. Very cool. That's what I got love who's talking to us, Richard. We don't talk about CSS and the show, I swear. So I found. Maybe are you ready? So jump back to show eleven forty seven. Oh boy. So that is June of twenty fifteen. I mean, not that. We haven't talked about this before that. But that particular show was allies manner talking specifically about CSS for developers and bunch great comments in their lodges. Always amazing. And I love this one from Joel Gallagher in Italy four years ago. He says thanks a lot for from informative show as always this topic resonated with me as I am the cliche developer who can't design. My wife will attest to this. Apparently, it's obvious that I've dressed toddler son when he goes out without any color coordination. Well, I feel it. It's excusable to a certain degree, the developers and designers should be good at their thing and bad at the other. We don't always have the luxury of having dedicated team members right in my current project. I wear many hats, and when it comes to styling allowed. I can only say thank goodness for frameworks such as bootstrap and the like right now, I've been a number of designer. Who were not happy with what strap does to write it works both ways. Well, it's consistent. You can say. Yeah. Maybe maybe that's the main thing there seems to be recent years to bridge the survive with products like through strap it less than SAS and so on to make the world of design a bit more structured code that. We developers prefer to live in hope this continues. And we see more products in a naval developers to produce visually appealing haunted without having to wear a black long sleeve t and grow a neat goatee while working for Iraq in some coffee shop, and it's just grabbed the combination of you and me. I wear the black T shirts. Not Mike OT's. Not that neat though. You don't have ironic facial hair baristas. Now, I'm not that ironically. No. But it is. I think part of the conversation. We're going to have to date to is this what if we just made designing not quite so difficult worked better for for the more of the community. So Joel thank you so much for your comment a copy of co by it's on its way to you. And if you'd like copy music, oh by to comment on the website at done Iraq's dot com, or via Facebook publish every show there and have you comment there? And we read it on the show. We'll send you a copy music, oh by while editing. I just had to jump in and say that I've lowered the price of the music to code by collection to just thirty nine dollars that seems to be the sweet spot. So go get it. And definitely follow us on Twitter. He's at rich Campbell. I'm at Carl Franklin, send us a tweet, but brush, the lint off and I feel a little enrolling. They sorta Gumma things. All right. Now, I'd like to introduce our guest, Amy capper, Nick is a freelance developers starting your own business working with other freelancers and learning everything she can about the web. She's been a freelancer. I'm the side for four years in most recently worked at an agency in Subiakto, which is in Western Australia. Amy also spends her time helping out as a co organizer for fenders a community group of front end developers in Perth other community events such as junior, Dev meet up in Perth, web girls and works is an evangelist for Yahoo conference to find out. What that is all about she blogs in her spare time about tech the web and life and volunteers is a reviewer for the fringe world festival in Perth welcoming having me thanks for being here. What's your? Yeah. Yeah. Is a tech conference in Australia. We run a barrage of different tech conferences, so six of them eats. Yup. General conferences hovering all sorts of areas. We have machine learning I develops dot net. Fronton accessible. All of all of the tech. They she in Brisbane, Sydney. Melbourne putz in Opole in Hong Kong now acronym. It is an English pronunciation of a Danish acronyms ruin it's about. What is the Danish actor? It used to be J a double art, which is Java object oriented, which was Danish conference. When Dave Thomas who is the founder of y'all Australia. He found that no one knew how to say it. Sorry. We change to why why are w. Yeah. Which turns out everyone's still struggles to pronounce everybody who's ever listen to James Brown knows exactly what? Well, anyway, so CSS grid. You're talking about the generic rid object in CSS land, not any particular product. Yes. The ceus sex. We'll see this great. People use this for general layout, or do they think of I think back to tables in HTML, and how horrible that was particularly because you didn't see anything until the whole thing rendered. But but is grit use for general layout or do you? Do you use it for things that you typically think of to put in a grid like ledgers and things like that or both? So you by saying tables that okay? Wow. Tables misunderstood like that tables us Stiller K for data tables. If anything you would expect to see in a table. It's silicate us a tape. Okay. However tables should have nothing to do with your light to able for page layout back. Very bad. Yes. So tables, not bad. You can still use them Sadat serious grid. Is yet very useful. The overall layouts probably one of the big problems with the table. Layup is we want following the separation of concerns vote, which was when we first came out with C assess, hey, Shimao was content or CSS was how that content. Looked was light out HAMAs tables hitched melting shouldn't have anything to do with the layout. As part of a transition. I mean cables predate CSS by years yet. We'll wait. We didn't have any ends. The thing is having something in CSS, specifically full layup is only a really new thing flex FOX was one of the first things that we had full land in assess end ceus grade. Is has only been around in major browsers since twenty seventeen. Sorry. It hasn't feigned that law. It's been a difficult to to do it properly. What is the relationship between the bootstrap grid and the CSS grid? Amine must all trickle down to the CSS grid. But do they use some sort of different way to manage? It bootstrap isn't actually using Santa's great. Oh, no, they all using flex locks. It's not using ceus. Great. Mckinnon bootstrap is a assess framework. Sorry, they will still only doing things the same way. We would building layouts. They just kind of made it easier bunch of snippets. And caught said wise have to do it without having to learn how the CSS behind it was working. He problem with using strat for the layouts was. Every website looked the side. It was all spo- column grid. The great thing about ceus grid. Is you define how many columns doesn't have to be twelve columns and be one convicts rate can be twenty five the, you know, set to using the twelve column grade we can all recognize in every website. There is out there. It gives us more flexibility in how the websites looking Trump. Calm seems like a lot. Why do we default to this? I think maybe they wanted to err on the side of too many rather than to few at the lame. It's twelve columns because it not because you needed twelve columns, but because you ride to the the number twelve so you could use three columns you could use full column. Rosie could use six Collins. It was able to be broken up into a number of different cultures of flexible format, but yet. See assist grid. Some simpler, more control over the way the call lab. Lots easy just use it. Everything's fine. No problems. Yeah. We're all good everything can yet. Nothing's gory about. So is it is it tricky the CSS grid. At fast. Look, you kind of look at it. No idea what they is. No idea. What don't understand it at all? But once you start using it, it sort of starts to make sense. And it's really one of those things. You've got a you've just on a use it. Sorry. It kind of will same gibberish in than I started using it. I knew kind of work at all that hat wax. And it's it's kind of yet. It's definitely one of ours. Things way it's much easier. Once you're actually using it every day like the Suai, I'm using most of my projects now and this still times when I use that gotta remember nanjiani to use this one all this one end alot the time it's just switching between the different properties. Until I find the one that I need your base with summing up my fiercest experience. It's just maybe this'll work. Maybe that'll work has. Yeah. Trial and error. Yeah. This sort of when I started using grid. I kind of hood that is this things you could do with it. And then I did an online course on it. And then I just went and started using it. Have modest bet on the guard. I'm. Big advocates suggest kind of learning by doing no substitute for the it. Also to me, it also makes sense that you get an idea about something works you build a few things. And then you go back and study, you know, why did I struggle with that? What was the doing it the wrong way? Is there a better way? But a two you've sort of type some code and play with it for a while. Even trying to explain the right way makes no sense yet. It's difficult, particularly because depending on way, you're learning from is of it's it's the reason why people have issues Java scripts is because of all the food boss, right? It makes no sense. You need to actually see it you need to see a use for me to see why using it and see how it works for it to kind of make sense. It's something I really struggled with money maths. I really struggled to understand concepts since ally Quincy use for it. And then all of a sudden it would click. How much defining where does the definition for how big a column should be how good big these individual grid elements where they should lay out like, I'm presuming it's all relative layout. There's no there's no direct fixing of anything like whether or not it should be sake. Swit- sole right? Centene twit though, as it is a great thing is you can define it. You'll sell okay cert- end when you're defining columns in ceus grid. You can use any unit. There is out there. Right. You can define a fixed one in pixels. You can define it in percentage, you can use people units, which is amazing unit which I use all the time. There's he put Whitson people at heights advice. Ical is a percentage all debatable report yet. So you'll entire viewpoint size hundred report wits is the hall screen size hundred heights on halls spring Hymie she can use report units at define columns. What else have we got pixels percentage? People units at new EMS Rams, which is normally just used. A font. And then sees his great also gives us access to a new unit, which is f-. Aw, unit before as we think back to when we would defining columns with percentages, and you would say I want the each column to be twenty five percent of the container. Right. But then if you wanted to have gaps between it you kind of twenty five percent means of coal columns, but the needs to be a gap of one percent between each of them. But is only three gaps we having to do math three gaps. But also I wanted a left edge in a right edge. It's a bit bigger like. Yeah. Complicated. So F I units kinda take away all of that work. So for example, a five once agreed that is five Cullens wide. I wanna bowl to be the same witch, right? I can say I I can sign five Cullens of one Esau wide. Right. What that would do is? It will have a look at how wide my whole containers. And it'll split that evenly offense at five. If I say, I wanna get on twenty pixels between each is elements. It will then take the whole contain wits. It will take away full gaps of twenty pixels is of course, you've got one less gap columns, and it would then take that remaining wits and divide that off into five. You can then change f out. So I could say I won't one call him. That's one I fall to. Aw, again, it would work out taking Laney gap. And it would then assign Weiss's much whips to the two F. Aw column than the one. I've thought column I think most of the way you're thinking is just in proportion. You don't actually have the number of pixels. It's yeah. It's doing it's doing proportions that a again that you should we had with doing this percentages had to work out math than I wanna make all the the gutter is a little bigger answer. Now, I've changed all the math. Exactly it takes away. All of that math that we will have to do at it. Does it all for us? It's kinda difficult to explain on a podcast. I highly recommend I can put Lincoln the show as soon as you see it in a diagram it makes complete gifts to me right away. It's like you're taking away all of the plumbing of the small things. So that we we're we're laying our actual. Content. Yes in his is an F R A whole F R element of some respect. So what's the difference between a flex box in the grid. And what does the word flex mean? Anyway, NCSA and you start with the last bit. I've not judicial when the flex has come from at flex FOX was at one of the assists technologies we had for layouts. I eat is similar to see assist. Great bought. Eight has a lot less control in the cross access. Sorry. You're able to shower likes FOX you're able to stop getting elements flowing along you could again, you could get them to stretch growers. Yet they were responsive. You also able to align them release Lee. So you're able to say justify them put a gap between each of the elements will get you right to align where they set vertically just great because censoring content is something we haven't really been Mattel tables. It's basically if I have to send something radically on this gun at flex offset because. Easiest way to do it. So maybe the word flex came in because what we had before that was not flex. Yeah. Hey. It's flexible than the flex locks was great so much better than everything that we had previously. So it's really good for flowing content. So for example, you navigate got few items in one rar, they work really well as soon as you started having multiple robbers and trying to control the cross access when we started have issues. That's where seasons grid was really good. Because you had a lot more control on that cross axis you can control the size in the layout in both directions. But you still get all of that flexible wrapping in responsive. Yes. Stuff at the flex box. Had. Yes, it's still flexible still has applies. Sorry. The things like a navigation menu. When just flying one Drexel, I wouldn't have agreed that it just needs flex FOX. And great to me sounds like it's only when you care about about number of columns as well as that sort of just ability to be a set number. Sorry. One of the great things that great is you can sort of say, I won't call him to these big fittest many as you can in oak. That's really useful. So that's really good full say for example, like an image gallery. Just like if we're on a giant screen, and you blow up the window. Find movies thing that seems to be more like a flex box thing laying out at image gallery. Multiple rows of of images that can be adjusted that gravies thin gave us control with. How told the images? We we started. We didn't have to know the proportions. Awesome. We're able to make sure they all lined up take the all even bed off you could just make them stretch in. So the image would fill up the whole grade area. At had no matter what proportions of us. Okay. So as to strengthen grid over flex box. It's yeah. It set control over the cross axis another way to say that is one dimensional versus two-dimensional. Maybe. Yeah. Is a little more awareness of that vertical dimension like a flex box can be there. Horizont Aurora column. Right. But doesn't do. Well as both. Yeah. It's as soon as you saw to try and control that other white. I'm sorry yet flex box. Does don't really have a place refuges? Again navigation menu. It's it's really kill two big using grid for that. And that's a lot of confusion is if I can do everything with great that XBox while whatever you slacks. Cyclops again, it does still have a it does have a price. They worked really well to get up, and you shouldn't be replacing one with the other for everything we get along a little grids newer, greatest new sorry. There is a lot more support for flex FOX than there is a grid. More documentation. I haven't definitely they definitely would be more documentation XBox. But I don't believe not enough documentation pick grid because his new shiny NFL, everybody everybody sites when you look around or you know, they're flex for or the grit stuff front and center. Yes. Sorry. Missoula develop documents. They have a the gonna heap. Really great job Yamin tation on grid. Ceus tricks has a really great guide on both seasons group, Enel's, Affleck's vox. They I I look at them every day like flying. Most times a day everyday. They really great guides which I can include links to all of these things to be included in the show nauseous. It really depends on where you are. At what point you out with learning? I if you're at the beginning as well is really great online courses and articles on how you should be using them. So there's a really great online. Whole spy was also on ceus red hot. That's a really good banks. It's completely Frank. And even if I don't like video courses, you're not alone. No, I hate watching videos. Wiz both closes. I there are amazing joint mind watching them. And also Rachel Andrew engine Simmons. Have a lot of amazing stuff about Cesis grid, which is really good. You generally use invoke this in Adib with display properties that just set this to grid. Yeah. That displays greeted as Oculus enough. And then the funding gins and the fun begins and just other properties to set templates and our vice about Yankee you set the slight grid, then depending on the complexity all your grid layout. The two main ones that you'll be using. We'll be grits template columns and template bars grid, template colognes is way. Use a fine how many columns wives the grade is Anchorage template roses, how many guys we get into. Now, you have all these options for what are you doing by percentage of doing it? But fixes you by far. Yes. Yes. Sorry. Would if you don't know how many rows. Then you also have a property code at grid old. I rose you'll also have grid audit columns. Let's just often use less Sigrid. What I wrote is you can define how big the rose on end, however, many elements thereof fill the Mars it will make them that big as while by default. It'll also it automatically add them. Anyway, you can just define. So by default. It will keep adding rose. However, big it needs the vice on the size of the elements. All you can say I want all of those Roy's only ever be a hundred pixels. High more direct control interrupted for just a moment for this very important message. Hey, Carl here. So we're at one show week for now. I'm sure that's a relief for some of you. But for others that's just not enough dot net. Rocks. So the only way we'll get back to two shows a week is if we. Significantly increase. Our patriot pledges so consider becoming part of the family be dot net. Rocks patron like Brian Seebacher? Thanks, brian. Make a pledge today at dot net. Rocks dot patriots dot com. And thank you. Emmer back, which you're Campbell here with Carl Franklin or at NBC London. We're talking to Amy perfect about ceus grid and not fearing the CSS. Everything's gonna be fine. It's not going to hurt you this. Yeah. This looking at some of the examples of things not that horrible because we're staying away from the to my mind. It's the font battles and the color battles and the percentage battles. Those are the things that are harder trying get right and see us. Yeah. There isn't the really difficult one. Those are actually once I need help with his show. I can just fine Fontaine card fine. You asked me to pay a song two years. In phone there. There's a few conscious. Choose one have heading font and then content on and they have to act together. And then they have to work with the yet. Darnall minutes uses. Some of the classic CSS problems. And I'm remembering from those periods of my development career, which was like last month. Are always when you try to have a combination of dynamic positioning and absolute positioning. Right. I mean, like, how do you like have grid? And then you wanna pop something over it while it has to be a child give in there somewhere, doesn't it? Or or does it like, how can you absolutely position one of those dips without being slave to the grid system? Yes. If you absolutely physician it the rules is still the same will will kind of it will go out of the great flaw insight. Whitebait lice in the grade. I have actually recently tried to absolutely position things in a great. And yet it does it does really become difficult because as soon as you apply position it gets taken out as a grid floor at the next element within. Move to way as more. Depending on what you doing that. Does get tricky. Sunup Ezekiel used case that I was trying to do it really didn't wack at all. I ended up not using position. Absolute yet. Isn't that always mistake to start mixing absolute and relative positioning? Like, this seems like a horrible thing. I'm thinking of a scenario where you have a message that needs to to come up over a grid in that grid becomes inactive just the sort of like, you know, please wait while we tried to read, you know, using poly or something retrying this the web service call or so as a way to interrupt the flow. Yeah. Physician absolute is useful. Sometimes it. Yes. It does occasionally get used used incorrectly. I do like Karl scenario of this away. Pop exception message of some kind it is an interrupting element that will go away. Right. I don't want it to rearrange my grid. They wanted to trash the page of the process, and you don't want it to be too subtle at people don't notice that. It's overriding behavior one of the places that I actually use physician absolute a lot is. So that I can make something take up the full width. And height of a particular elements safety like in backgrounds. Mom, using pseudo element say, for example. I recently did a styling a block cart, and it had a nice little background of quite rotation. Mocks? I'm sorry. I used position absolute to position that it was easiest way to position it behind the contents of the parent elements, and it also meant that that wasn't tightening spice within the floor. I wanted it to be behind. I didn't want it to get it on the ice in the floor yet. So position absolute does still really have applied. But yet does tend to. A monkey wrench in. Yeah. Said don't mix them it lives in its own thing does its own way you soon as you start playing games. Trying to do something fixed on a relative page. You're gonna you're gonna into a fight. You're gonna lose. It is. I think it is often misunderstood. I'm with you. But I think if we run into these fights all the time and people especially devs, don't like the kind of randomness that is a relative flow, and it's kind of the way the web works. You just have to live with it. You can't do absolute positioning. And you don't want to. It also depends on how long he old we used to position things. Absolutely. Because we wanted that control over and that was the best way to do it. But things have changed with how join us now. When I go through the big thing is if you go all absolute sooner or later, your gonna run into owning the responsive design problems. The I think the trick is to if you written module semantic heights, GMO content should already be making a lot of sense. Anyway, finding needing to too big positioning absolute. Yeah. You're you're going into you're going down the wrong path. You're fighting the system and it is going to win. But meantime, fonts. I was going to be cliche developed who didn't like folks. Well, I like that. You're folks CSS gnawed the all up design type of care about all the type of graphic effects. So I appreciate those things. I just don't know. What people see when they are able to select group and make something look amazing. I I appreciate so much as something that looks amazing. And I can. Froma design that looks amazing. I can build it. I can make reality. But I don't have the ability to come up with it. I have so much appreciation for the people that can a few of my colleagues who design is the work that they do is amazing one of one of my colleagues designer everything she does is just incredible aesthetic. She's actually my my business goal is. I've told her is my business goal is too high to redesign our website, and she's actually just designs. This has tricks website amazing like the work that she's done. Everyone's raving about it. But yeah, I can I can put that into place, but I can't come out with don't have. They are two different Cecil's. That that is the thing that is I often a misconception is oh many Zealand front-end is so many different areas areas design as you you all you ex design, and then there's the front-end of CSS it's very much becoming a hot topic because we kind of segmenting off into so many different areas on a this also represents obsessive maturity when I guess what I'm thinking about as somewhat of design disables developer is one of the reasons. I liked bootstraps felt like I wasn't making a choice that would cripple designer going forward by bringing this in the designer knows where I came from a knows how to turn it into a the take it to that next better level of static. So I'm looking at rinsing are the decisions I'm making here with grid that are going to impair future styling effort, I think it's all set. I love that. That's what I'm hoping. You're going to say what has happened in the past. With a lot is particularly design. It's been walking in industry for awhile develops, his repeat telling them, I can't do that. We can't do that in a previous role. We had if you had a look also websites. We would building they all looked the same because the designers had been told VC's what we concern. And so we were we were crippling the designers retelling them. Here's this box. You can only do what's in the box. The problem is with all of the advances in ceus with ceus grade. And so many other things that ceus animations and everything new that we've had that box is so much nica. And I think ceus greatest really useful because the is shouldn't be set to twelve column grid right anymore end by using grid there. Now, I will to design. Whatever they want and we can sue build it. Sure. NCS s even is quite a few people trying to showcase that we joint have those limitations any mall. If you've if anyone saying again, I can send link Diana Smith has created a painting in fuel off CSS, right? Like that. You would never have even. Pure CSS Francine. We're looking out. It's it's incredible. What you can even I've gotta think that's an fairly intimidating set of CSS, but still looking at incidents high painting created assess image. No, they're not images. It's all CSS. Even one of my colleagues, Mandy, Michael she's taking graphic designs and recreating them in CSS to we can still do this previously prints had less limitations than the web because you could arrange things to particular. Why you could light things with lost so many of Haitians? So we need to change the way we don't have those limitations with design anymore. What we can. I just wanna ask you about that painting. How is that done? I mean, I have no idea so by pixel magic, I'm looking at the source take the load, it's pretty much. It's not it's not tiny. But it's not huge either. Because there's no graphics, right? There's literally just descriptions of curves and shapes and their how they assembled together. A series of tag. It must have started as an image, and then got turned into CSS lilies there anymore now, it's just a rendering. So it's very interesting. It just think in terms of not that thinking anybody wants to do this. But it's like Diana sitting high watermark. This is how capable Santa sausages. It means that when design is guard I want to face when we can't tell them we can't do it anymore. Create this painting from CSS making create a five column. Great empress. Sure, we could do that. Yeah. That work just say another problem reason, I hate CSS is anytime that I wanna center something. It's just turns into like a nightmare.