POPULARITY
Matthew Bonig, Chief Cloud Architect at Defiance Digital, joins Corey on Screaming in the Cloud to discuss his experiences in CDK, why developers can't be solely reliant on AI or coding tools to fill in the blanks, and his biggest grievances with AWS. Matthew gives an in-depth look at how and why CDK has been so influential for him, as well as the positive work that Defiance Digital is doing as a managed service provider. Corey and Matthew debate the need for AWS to focus on innovating instead of simply surviving off its existing customer base.About MatthewChief Cloud Architect at Defiance Digital. AWS DevTools Hero, co-author of The CDK Book, author of the Advanced CDK Course. All things CDK and Star Trek.Links Referenced:CDK Book: https://www.thecdkbook.com/cdk.dev: https://cdk.devTwitter: https://twitter.com/mattbonigLinkedIn: https://www.linkedin.com/in/matthewbonig/Personal website: https://matthewbonig.comduckbillgroup.com: https://duckbillgroup.comTranscriptAnnouncer: Hello, and welcome to Screaming in the Cloud with your host, Chief Cloud Economist at The Duckbill Group, Corey Quinn. This weekly show features conversations with people doing interesting work in the world of cloud, thoughtful commentary on the state of the technical world, and ridiculous titles for which Corey refuses to apologize. This is Screaming in the Cloud.Corey: Welcome to Screaming in the Cloud. I'm Corey Quinn. And I'm back with my first recording that was conducted post-re:Invent and all of its attendant glory and nonsense; we might talk a little bit about what happened at the show. But my guest today is the Chief Cloud Architect at Defiance Digital, Matthew Bonig. Matthew, thank you for joining me.Matthew: Thank you, Corey. Thanks for having me today.Corey: So, you are deep into the CDK. You're one of the AWS Dev Tools Heros, and you're the co-author of the CDK Book, you've done a lot, really. You have a course now for Advanced CDK work. Honestly, at this point, it starts to feel like when I say the CDK is a cult, you're one of the cult leaders, or at least very high up in the cult.Matthew: [laugh] Yes, it was something that I discovered—Corey: Your robe has a fringe on it.Matthew: Yeah, yeah. I discovered this at re:Invent, and it kind of hit me a little surprised that I got called out by a couple people by being the CDK guy. And I didn't realize that I'd hit that status yet, so I got to get myself a hat, and a cloak, and maybe some fun stuff to wear.Corey: For me, what I saw on the—it was in the run-up to re:Invent, but the big CDK sized announcement was the fact that the new version of Amplify now is much closer tied to the CDK than it was in previous incarnations, which is great. It sort of solves the problem, how do I build a thing through a variety of different tools? Great, and how do I manage that thing programmatically? It seems if, according to what it says on the tin, that it narrows that gap. Of course, here in reality, I haven't had time to pick anything like that up, and I won't for months, just because so much comes out all at the same time. What happened in the CDK world? What did I miss? What's exciting?Matthew: Well, you know, the CDK world has been, I've said, fairly mature for a while now. You know, fundamentally the way the CDK works and the functionality within it hasn't changed drastically. Even when 2.0 came out a couple of years ago, there wasn't a drastic fundamental change in the way that the API worked. Really, the efforts that we've been seeing for the last year or so, and especially the last few months, is trying to button up some functionality, hit some of those edge cases have been rough for some users, and ultimately just continue to fill out things like L2 constructs and maybe try to build out some L3s.I think what they're doing with Amplify is a good sign that they are trying to, sort of, reach across the aisle and work with other frameworks and work with other systems within AWS to make the experience better, shows their commitment to the CDK of making it really the first class citizen for doing IaC work in AWS.Corey: I think that that is a—that's a long road, and it's also a lot of work under the hood that's not easily appreciated. You've remarked at one point that my talk at the CDK Community Day was illuminating, if nothing else, if for no other reason than I dressed up as a legitimate actual cultist and a robe to give the talk—Matthew: Yeah. Loved it.Corey: Because I have deep-seated emotional problems. But it was fun. It talked a bit about my journey with it, where originally I viewed it as, more or less, this thing that was not for me. And a large part of that because I come from a world of sysadmin ops types, where, “I don't really know how to code,” was sort of my approach to this. Because I was reaff—I had that reaffirmed every time I talked to a developer. Like, “You call this a bash script? It's terrible.” And sure, but it worked, and it tied into a different knowledge set.Then, when I encountered the CDK for the first time, I tried to use it in Python, which at the time was not really well-supported and led to unfortunate outcomes—I do not know if that's still the case—what got me into it, in seriousness, was when I tried it a few months later with TypeScript and that started to work a little bit more clearly, with the caveat that I did not know JavaScript, I did not know TypeScript, I had to learn it as I went in service to the CDK. And it works really well insofar as it scratched an itch that I had. There's a whole class of problems that I don't have to deal with, which include getting someone who isn't me involved in some of that codebase, or working in environments where you have either a monorepo or a crap ton of tiny repos scattered everywhere and collaborating with other people. I cannot speak authoritatively to any of that. I will say it's incredibly annoying when I'm trying to update something written in the CDK, and then I have touched it in a year-and-a-half, and the first thing I have to do is upgrade a whole a bunch of dependencies, clear half a day just to get the warnings to clear before I can go ahead and deploy the things, let alone implement the tiny change I'm logging into the thing to fix.Matthew: Oh, yeah, yes. Yeah, the dependency updates are probably one of the most infuriating things about any Node.js system, and I don't think that I've ever run across any application project framework, anything in which doing dependency upgrades wasn't a nightmare. And I think it's because the Node.js community, more so than I've seen any other, doesn't care about semantic versioning. And unfortunately, the CDK doesn't technically care about semantic versioning, either, which makes it very tricky to do upgrades properly.Corey: There also seems to be the additional problem layered on top, which is all of the various documentation sources that I stumble upon, the official documentation, not terrific at giving real-world use case. It feels like it's trying to read the dictionary to learn how English works, not really its purpose. So, I find a bunch of blog posts, and all of them tend to approach this ecosystem slightly differently. One talks about using NPM. Another talks about Yarn.If you're doing anything that involves a web app, as seems to be increasingly common, some will say, “Oh, use WEBrick,” others will recommend using Vite. There's the whole JavaScript framework wars, and the only unifying best practice seems to be, “Oh, there's another way to do it that you should be using instead of the way you currently are on.” And if you listen to that, you wind up in hell.Matthew: Oh, horribly so. Yeah, the split in the ecosystem between NPM and Yarn, I think, has been incredibly detrimental to the overall comfort level in Node.js development. You know, I was an NPM guy for many, many years, and then actually, the CDK got me more using Yarn, simply because Yarn handles cross-library dependency resolution a bit different from NPM. And I just ran into fewer errors and fewer problems if I use Yarn along the way.But NPM then came a long way since then. Now, there's also a PNPM, which is good if you're using monorepos. But then if you're going to be using monorepos, there's another 15 tools out there that you can use for those sorts of things. And ultimately, I think it's going to be what is the thing that causes you the least amount of problems when dealing with them. And every single dependency issue that I've ever run into when upgrading any project, whether it be a web application, a back-end API, or the CDK, it's always unique enough that there isn't a one-size-fits-all answer to solving those problems.Corey: The most recent experience I had with the CDK—since you know, you're basically Mr. CDK at this point, whether you want to be or not, and this is what I do, instead of filing issues anywhere or asking for help, I drag people onto this show, and then basically assault them with my weird use cases—I'm in the process of building something out in the service of shitposting, because that is my nature, and I decided, oh, there's a new thing called the Dynamo table v2—Matthew: Yes.Corey: Which is great. I looked into it. The big difference is that it addresses it from the beginning as a global table, so you have optionality. Cool. Trying to migrate something that is existing from a Dynamo table to a Dynamo v2 table started throwing CloudFormation issues, so my answer was—this was pre-production—just tear down the stack and rebuild it. That feels like that would be a problem if this had been something that was actually full of data at this point.Matthew: There's a couple of ways that you could maybe go about it. Now, this is a very special case that you mentioned because you're talking about fundamentally changing the CloudFormation resource that you are creating, so of course, the CDK being an abstraction layer over top of CloudFormation and the Dynamo table v2 using the global table resource rather than just the table resource. If you had a case where you have to do that migration—and I've actually got a client right now who's very much looking to do that—the process would probably be to orphan the existing table so that you can retain the data and then using an import routine with CloudFormation to bring that in under the new resource. I haven't tried it yet—Corey: In this case, the table was empty, so it was easy enough to just destroy and then recreate, but it meant that I also had to tear down and recreate everything else in the stack as well, including CloudFront distributions, ACM certificates, so it took 20 minutes.Matthew: Yes. And that is one of the reasons why I often will stick any sort of stateful resource into their own stack so that if I have to go through an operation like this, I'm know that I'm not going to be modifying things that are very painful to drop and recreate, like, CloudFront distributions, which can take a half an hour or more to re-initialize.Corey: Yeah. So, that was fun. The problem got sorted out, but it was still a bit challenging. I feel like at some level, the CDK is hobbled by the fact that under the hood, it really just is just CloudFormation once all is said and done, and CloudFormation has never been the speediest thing. I didn't understand that until I started playing with Terraform and I saw how much more quickly it could provision things just by calling the service APIs directly. It sort of raises the question of what the hell the CloudFormation service is doing when it takes five times longer to do effectively the same thing.Matthew: Yeah, and the big thing that I appreciate about Terraform versus CloudFormation—speed being kind of the big win—is the fact that Terraform doesn't obfuscate or hide state from you. If you absolutely need to, you can go in and change that state that relates your Terraform definitions to the back-end resources. You can't do that with CloudFormation. So CloudFormation, did release few years ago, that import routine, and that was pretty good—not great, but pretty good; it's getting better all the time—whereas this was a complete and unneeded feature with Terraform because if it came down to the point where you already had a resource, and you just want to tie it to your IaC, you just edit a state file. And they've got their import routines and tie-in routines as well, but having that underlying state exposed was a big advantage, in my mind, to Terraform that I missed going to CloudFormation, and still to this day frustrates me that I can't do that underlying state change.Corey: It becomes painful and challenging, for better or worse.Matthew: Yep.Corey: But yeah, that was what I ran into. Things have improved, though. When I google various topics, I find that the v2 documentation comes up instead of the v1. That was maddening for a little while. I find that there are still things that annoy me, but they become less all the time, partially because I feel like I'm getting better at knowing how to search for them, and also because I think I'm becoming broken in the right ways that the CDK tends to expect.Matthew: Oh, like how?Corey: Oh, easy example here: I was recently trying to get something set up and running, and I don't know why this is the case, I don't know if it holds true and other programming languages, but I'm getting more used to the fact that there are two files in TypeScript-land that run a project. One is generally small and in a side directory that no one cares about, I think it's in a lib or the bin subdirectory. I don't remember which because I don't care. And then there are things you have to do within the other equivalent that basically reference each other. And I've gotten better at understanding that those aren't one file, for example. Though they seem to sure be a lot in all the demos, but it's not how the init process, when you're starting something new, spins up.Matthew: Yeah, this is the hell of TypeScript, the fact that Node.js, as a runtime, cannot process TypeScript files, so you always have to pass them through a compiler. This is actually one of the things that I like about using Projen for all of my projects instead of using CDK init to start them is that those baseline configurations handle the TypeScript nature of the runtime—or I should say, the anti-TypeScript nature of the runtime a little bit better, and you run into fewer problems. You never have to worry about necessarily doing build routines or other things because they actually use the ts-node runtime to handle your CDK files instead of the node runtime. And I think that's a big benefit in terms of the developer experience. It just makes it so I generally never have to care about those JavaScript files that get compiled from TypeScript. In the, you know, two years or so I've been using Projen, I never have to worry about a build routine to turn that into JavaScript. And that makes the developer experience significantly better.Corey: Yeah, I still miss an awful lot of things that I feel like I should be understanding. I've never touched Projen, for example. It's on my backlog of things to look into.Matthew: Highly recommend it.Corey: Yeah, I also am still in that area of… my TypeScript knowledge has not yet gotten to a point where I see the value of it. It feels like I've spent far more time fighting with the arbitrary restrictions that are TypeScript than it has saved me from typing errors in anything that I've built. I believe it has to come back around at some point of familiarity with the language, but I'm not there yet.Matthew: Got you. So, Python developer before this?Corey: Ish. Mostly brute force and enthusiasm, but yeah, Python.Matthew: Python, and I think you said bash scripting and other things that have no inherent typing built into it.Corey: Right.Matthew: Yeah, that is a problem, I think… that I thankfully avoided. I was an application developer for many years. My background and my experience has always been around strongly typed languages, so when it came to adopting the CDK, everything felt very natural to me. But as I've worked with people over the years, both internally at Defiance as well as people in the community that don't have a background in that, I've been exposed to how problematic TypeScript as a language truly can be for someone who has never had this experience of, I've got this thing and it has a well-defined shape to it, and if I don't respect that, then I'm going to bang my head against to these weird errors that are hard to comprehend and hard to grok way more than it feels like I'm getting value from it.Corey: There's also a lack of understanding around how to structure projects, in my case, where all right, I have a front-end and I have a back-end. Is this all within the context of the CDK project? And this, of course, also presupposes that everything I'm doing is effectively greenfield, in which case, great, do I use the front-end wizard tutorial thing that I'm following, and how does that integrate when I'm using the CDK to deploy it somewhere, and so on and so forth. It's stuff that makes sense once you have angry and loud enough opinions, but I don't yet.Matthew: Yeah, so the key thing that I tell people about project structure—because it does often come up a lot—is that ultimately, the CDK itself doesn't really care how you structure things. So, how you structure, where you put certain files, how you organize them, is your personal preference. Now, there are some exceptions to that. When it comes to things like Lambda functions that you're building or Docker files, there are probably some better practices you can go through, but it's actually more dependent on those systems rather than the CDK directly itself. So I go through, in the Advanced CDK course, you know, my basic starting directory structure for everything, which is stacks, constructs, apps, and stages all go into their own specific directories.But then once those directories start growing—because I've added more stacks, more constructs, and things—once I get to around five to maybe seven files in a directory, then I look at them and go, “Okay, how can I group these together?” I create subdirectories, I move those files around. My development tool of choice, which is WebStorm—JetBrains's long-running tool—handles the moving of those files for me, so all of my imports, all of my references automatically get updated accordingly, which is really nice, and I can refactor things as much as I want to without too much of a problem. So, as a project grows over time, my directory structure can change to make sure that it is readable, well organized, and understandable, and it's never been too much of a problem.Corey: Yeah, it's one of those things that does take some getting used to. It helps, I think, having a mentor of sorts to take you under their wing and explain these things to you, but that's a hard thing to scale as well. So, in the absence of that we wind up defaulting to oh, whatever the most recent blog post we read is.Matthew: Yeah. Yeah, and I think one of the truest, I think, and truthful complaints I've heard about the CDK and why it can be fundamentally very difficult is that it has no guardrails. It is a general-purpose languages, and general purpose languages don't have guardrails. They don't want to be in the way of you building whatever you need to build.But when it comes to an Infrastructure as Code project, which is inherently very different from an API or a website or other, sort of, more typical programming projects, having guardrail—or not having guardrails is a bad thing, and it can really lead you down some bad paths. I remember working with a client this last year who had leveraged context instead of properties on classes to hand configuration value down through code, down through stacks and constructs and things like that. And it worked. It functionally got them what they needed, up until a point, and then all of sudden, they were like, “Well, now we want to do X with the CDK, and we simply cannot because we've now painted ourselves into a corner.” And that's the downside of not having these good guard rails.And I think that early, they needed to do this early on. When the CDK was initially released, and it got popular back around the 0.4, 0.5 timeframe—I think I picked it up right around 0.4, too—when it officially hit a 1.0 release, there should have been a better set of guidelines and best practices published. You can go to the documents and see them, and they have been published, but it really didn't go far enough to really explain how and why you had to take the steps to make sure you didn't screw yourself six months later.Corey: It's sort of those one-way doors you don't realize you're passing through when you first start building something. And I find, especially when you follow my development approach of more or less used to be copying and pasting for various places, now it's copying and pasting from one place which is Chat-Gippity-4, then—although I've seen increasingly GitHub's Copilot has been great at this and Code Whisperer, in my experience, has not yet been worth the energy it takes to really go diving into it. Your mileage may of course vary on that. But I found it was not making materially better or suggestions on CDK stuff then Copilot was.Matthew: Yeah, I haven't tried Code Whisperer outside of the shell. I've been using Copilot for the last year and absolutely adore it. I think it has completely changed the way that I felt about coding. I saw writing code for the last couple of years as being very tedious and very boring in terms of there weren't interesting problems to solve, and Copilot, as I've seen it, is autocomplete on steroids. So, it doesn't keep me from having to solve the interesting problems; it just keeps me from having to type out the boring solutions, and it's the thing that I love about it.Now, hopefully, Code Whisperer continues to get better over time. I'm hoping all of Amazon's GenAI products continue to get better over time and I can maybe ditch a subscription to Copilot, but for now, Copilot is still my thing. And it's producing good enough results for me. Thankfully because I've been working with it for four years now, I don't rely on it to answer my questions about how to use constructs. I go back to the docs for those. If I need to.Corey: It occurs to me that I can talk about this now because this episode will not air until after this has become generally available, but what's really spanked it from my perspective has been Google's Duet. And the key defining difference is, as I'm in one of these files—in many cases, I'm doing something with React these days due to an escalating series of weird choices—and—Matthew: My apologies, by the way. My condolences, I should say.Corey: Well, yeah. Well, things like Copilot Chat are great when they say, “Oh yeah, assuming that you're handling the state this way in your component, now…” What I love about Duet is it goes, and it actually checks, which is awesome. And it has contextual awareness of the entire project, not just the three lines that I'm talking about, or the file that I'm looking at this moment. It goes ahead and does the intelligent thing of looking at some of these things. It still has some problems where it's confidently wrong about things that really shouldn't be, but okay, early days.Matthew: Sure. Yeah, I'll need to check that out a little bit more because I still, to this day, despise working with React. It is still my framework of choice because the ecosystem is so good around it. And so, established that I know that whatever problem I have, I'll find 14 blogs, and maybe one of them is the answer that I want, versus any other framework where it still feels so very new and so very immature that I will probably beat my head more than I want to. Web development now is a hobby, not a job, so I don't want to bang my head against a hobby project.Corey: I tend to view, on some level, that these AIs coding assistants are good enough to get me almost anywhere I need to go, to the point where a beginner or enthusiastic amateur will be able to get sorted out. And for a lot of what I'm building, that's all I really need. I don't need this to be something that will withstand the rigors of production at a bank, for example. One challenge I have seen with all these things is there's a delay in something being released and their training data growing to understand those things. Very often it'll wind up giving me recommendations for—I forget the name of it, but there was a state manager in React that the first thing you saw when you installed it was, “This has been deprecated. This is the new replacement.” And if you explicitly ask about the replacement, it does the right thing, but it just cheerfully goes ahead and tells you to use ancient stuff or apply poor security practices or the rest.Matthew: Yeah, that's very scary to me, to be honest because I think these AI development tools—for me, it's revitalized my interest in doing development, but where I get really, really scared is where they become a dependency in writing the right code. And every time I ever use Copilot to fill out stuff, I'm always double-checking, and I'm always making sure that this is right or that is right. And what I worry about is those developers who are maybe still learning some things, or are having to write in-line SQL on to their back-end and let Copilot, or Code Whisperer, or whatever tool they pick fill this stuff out, and that answer is based on a solution that works for a 10,000 record database, but fails horribly on a 100 million record database. And now all of a sudden, and you've got this problem that is just festering in through a dev environment, in through a QA environment, and even maybe into a prod environment, and you don't find out that failure until six months later, when some database table runs past its magical limit and now all of sudden, you've got these queries that are failing, they're crashing databases, they're running into problems, and this developer that didn't really know what they built in the first place is now being asked, “Why doesn't your code work,” and they just sort of have to go, “Maybe ChatGPT can tell me why my code doesn't work.” And that's the scariest part of me to these things is that they're a little bit too good at answering difficult questions with a simple answer. There is no, “It depends,” with these answers, and there needs to be for a lot of what we do in complex systems that, for example, in the AWS world, we're expected to build complex systems, and ChatGPT and these other tools are bad at that.Corey: We're required to build complex systems, and, on some level, I would put that onus on Amazon in many respects. I mean, the challenge I keep smacking into is that they're building—they're giving you a bunch of components and expecting you to assemble them all yourself to achieve even relatively simple things. It increasingly feels like this is the direction that they want customers to go in because they're bad at moving up the stack and develop—delivering integrated solutions themselves.Matthew: Well, so I would wonder, would you consider a relatively simple system, then?Corey: Okay, one of the things I like to do is go out in the evenings, and sometimes with a friend, I'll have a few too many beers. And then I'll come up with an idea for I want to redirect this random domain that I want to buy to someone else's website. The end. Now, if you go with Namecheap, or GoDaddy, or one of these various things, you can set that up in their mobile app with a couple of clicks and a payment, and you're done. With AWS, you have a minimum of six different services you need to work with, many of which do not support anything on a mobile basis and don't talk to one another relatively well. I built a state machine out of step functions that will do a lot of it for me, but it's an example of having to touch so many different things just for a relatively straightforward solution space that is a common problem. And that's a small example, but you see it across the board.Matthew: Yeah, yeah. I was expecting you to come up with a little bit of a different answer for what a simple system is, for example, a website. Everyone likes to say, “Oh, a static website with just raw HTML. That's a simple”—Corey: No, that's hard as hell because the devil is in the details, and it slices you to ribbons whenever you go down that path.Matthew: Exactly.Corey: No, I'm talking things that a human being would do without needing to be an expert in getting that many different AWS services to talk to one another.Matthew: Yeah, and I agree that AWS traditionally is very bad at moving up that stack and getting those things to work. You had mentioned at the very top of this about Amplify. Amplify is a system that I have tried once or twice, and I generally think that, for the right use case, is an excellent system and I really like a lot of what it does.Corey: It is. I agree. Having gone down that, building up my scavenger hunt app that I'll be open-sourcing at some point next year.Matthew: Yeah. And it's fantastic, but it has a very steep cliff where you hit that point where all of a sudden, you go, “Okay, I added this, and I added this, and I added this, and now I want to add this one other thing, but to do it, now all of a sudden, I have to go through a tremendous amount of work.” It wasn't just the simple push button that the previous four steps were. Now, I have this one other thing that I need to do, and now it's a very difficult thing to incorporate into my system. And I'm having to learn all new stuff that I never had to care about before because Amplify made it way too easy.And I don't think this is necessarily an AWS problem. I think this is just a fundamentally difficult software problem to solve. Microsoft, I spent years and years in the Microsoft world, and this was my biggest complaint about Microsoft was that they made extremely difficult things, far too simple to solve. And then once those systems became either buggy, problematic, misconfigured, whatever you want to call it, once they stopped working for some reason, the people who were responsible for figuring those answers out didn't have the preceding knowledge because they didn't need it. And then all of a sudden, they go, “Well, I don't know how to solve this problem because I was told it was just this push-button thing.”So, Amplify is great, and I think it's fantastic, but it is a very, very difficult problem to solve. Amazon has proven to be very, very good at building the fundamentals, and I think that they function very well as a platform service, as a building blocks. But they give you the Lego pieces, and they expect you to build the very complex Batmobile. And they can maybe give you some custom pieces here and there, like the fenders, and the tires, and stuff like that, but that's not their bread and butter.Corey: Well, even starting with the CDK is a perfect example. Like, you can use the CDK init to create a new project from scratch, which is awesome. I love the fact that that exists, but it doesn't go far enough. It doesn't automatically create a repo you store the thing in that in turn hooks up to a CI/CD process that will wind up doing the build and deploy. Instead, it expects to do that all locally, which is a counter pattern. That's an anti-pattern. It'll lead you down the wrong path. And you always have to build these things from scratch yourself as you keep going. At least that's what it feels like.Matthew: Yeah, it is. And I think that here at Defiance Digital, our job as an MSP is to talk to the customer and figure out, but what are those very specific things you need? So, we do build new CDK repos all the time for our customers. But some of our customers want a trunk base system. Some of them want a branching or a development branch base system. Some of them have a very complex SDLC process within a PR stage of code changes versus a slightly less complex one after things have been merged into trunk.So, we fundamentally look at it like we're that bridge between the two, and in that case, AWS works great. In fact, all SaaS solutions are really nice because they give us those building blocks and then we provide value by figuring out which one of those we need to incorporate in for our clients. But every single one of our clients is very different. And we've only got, you know, less than a dozen right now. But you know, I've got project managers and directors always coming back to me and saying, “Well, how do we cookie-cutter this process?” And you can't do it. It's just very, very difficult.Not in a small-scale. Maybe when you're really big, and you're a company like AWS who has thousands, if not potentially millions of customers, you can find those patterns, but it is a very fundamentally difficult problem to solve, and we've seen multiple companies over the last two decades try to do these things and ultimately fail. So, I don't necessarily blame AWS for not having these things or not doing them well.Corey: Yes and no. I mean, GitHub delivers excellent experience for the user, start to finish. There's—Vercel does something very similar over in the front-end universe, too, where it is clearly possible, but it seems that designing user interfaces and integrating disparate things together is not an Amazon's DNA, which makes sense when you view the two-pizza teams assembling to build larger things. But man, is that a frustration.Matthew: Yeah. I really wonder if this two-pizza team mentality can ever work well for products that are bigger than just the fundamental concepts. I think Amplify is pretty good, but if you really want something that is this service that works for 80% of customers, you can't do it with five people. You can't do it with six. You need to have teams like what GitHub and what Vercel and other things, where teams are potentially dozens of people that really coordinate things and have a good project manager and product owner and understand the problem very well. And it's just very difficult with these very, very small teams to get that going.I don't know what the future of AWS looks like. It feels like a very Microsoft in the mid-2000s, which is, they're running off of their existing customers, they don't really have a need to innovate significantly because they have a lot of people locked in, they would be just fine for years on years on end with the products they have. So, there isn't a huge driver for doing it, not like, maybe, GCP or Azure really need to start to continue to innovate stronger in this space to pick up more customers. AWS doesn't have a problem getting customers.And if there isn't a significant change in the mentality, like what Microsoft saw at the end of the 2000s with getting rid of Ballmer, bringing in Satya and really changing the mentality inside the company, I don't see AWS breaking out from this anytime soon. But I think that's actually a good thing. I think AWS should stick to just building the fundamentals, and I think that they should rely on their partners and their third parties to bridge that gap. I think Jeremy Daly at Ampt and what they're building over there is a fantastic product.Corey: Yeah. The problem is that Amazon seems to be in denial about a lot of this, at least with what they're saying publicly.Matthew: Yeah, but what they say publicly and how they feel internally could be very, very different. I would say that, you know, we don't know what they're thinking internally. And that's fine. I don't necessarily need to. I think more specifically, we need to understand what their roadmap looks like and we need to understand, you know, what, are they going to change in the future to maybe fill in some of these gaps.I would say that the problem you said earlier about being able to do a simple website redirect, I don't think that's Amazon's desire to build those things. I think there should be a third-party that's built on top of AWS, and maybe even works directly within your AWS account as a marketplace product for doing that, but I don't think that's necessarily in the benefit of AWS to build that directly.Corey: We'll see. I'm very curious to see how this unfolds because a lot of customers want answers that require things that have to be assembled for them. I mean, honestly, a lot of the GenAI stuff is squarely in that category.Matthew: Agreed, but is this something where AWS needs to build it internally, and then we've got a product like App Composer, or Copilot, or things where they try, and then because they don't get enough traction, it just feels like they stall out and get stagnant? I mean, App Composer was a keynote product announcement during last year's re:Invent, and this year, we saw them introduce the ability to step function editing within it, and introduce the functionality into your IDE, VS Code directly. Both good things, but a year's worth of development effort to release those two features feels slow to me. The integration to VS Code should have been simple.Corey: Yeah. They are not the innovative company that would turn around and deliver something incredible three months after something had launched, “And here's a great new series of features around it.” It feels like the pace of innovation and face of delivery has massively slowed.Matthew: Yeah. And that's the scariest thing for me. And, you know, we saw this a little bit with a discussion recently in the cdk.dev server because if you take a look at what's been happening with the CDK application for the last six months and even almost a year now, it feels like the pace of changes within the codebase has slowed.There have been multiple releases over the course of the last year where the release at the end of the week—and they hit a pretty regular cadence of a release every week—that release at the end of the week fixes one bug or adds one small feature change to one construct in some library that maybe 10% of users are going to use. And that's troublesome. One of the main reasons why I ditched the Terraform and went hard on the CDK was that I looked at how many issues were open on the Terraform AWS provider, and how many missing features were, and how slow they were to incorporate those in, and said, “I can't invest another two years into this product if there isn't going to be that innovation.” And I wasn't in a place to do the development work myself—despite the fact that you can because it's open-source and providers are forkable—and the CDK is getting real close to that same spot right now. So, this weekend—and I know this is going to come out, you know, weeks later—but you know, the weekend of December 10th, they announced a change to the way that they were going to take contributions from the CDK community.And the long and short of it right now—and there's still some debate over exactly what they said—is, we're not going to accept brand-new L2 constructs from the community. Those have to be built internally by AWS only. That's a dr—step in the wrong direction. I understand why they're taking that approach. Contributions in the CDK have been very rough for the last four or five months because of the previous policies they put into place, but this is an open-source product. It's supposed to be an open-source product. It's also a very complex set of code because of all of the various AWS services that are being hit by it. This isn't just Amplify, which is hitting a couple of things here and there. This is potentially—Corey: It touches everything.Matthew: It touches everything.Corey: Yeah, I can see their perspective, but they've got to get way better at supporting things rapidly if they want to play that game.Matthew: And they can't do that internally with AWS, not with a two-pizza team.Corey: No. And there's an increasing philosophy I'm hearing from teams of, “Well, my service supports it. Other stuff, that's not my area of responsibility.” The wisdom that I've seen that really encapsulates this is written on Colm MacCárthaigh's old laptop in 2019: “AWS is the product.” That's the truth. It's not about the individual components; it's about the whole, collectively.Matthew: Right. And so, if we're not getting these L2 constructs and these things being built out for all of the services that CloudFormation hits, then the product feels stalled, there isn't a good initiative for users to continue trying to adopt it because over time, users are just going to hit more and more services in AWS, not fewer as they use the products. That's what AWS wants. They want people to be using VPC Lattice and all the GenAI stuff, and Glue, and SageMaker, and all these things, but if you don't have those L2 constructs, then there's no advantage of the CDK over top of just raw CloudFormation. So, the step in the right direction, in my opinion, would have been to make it easier and better for outside contributions to get into CDK, and they went the opposite way, and that's scary.Now, they basically said, go build these on your own, go publish them on the Construct Hub, and if they're good, we'll incorporate them in. But they also didn't define what good was, and what makes a good API. API development is very difficult. How do you build a construct that's going to hit 80% of use cases and still give you an out for those other 20 you missed? That's fundamentally hard.Corey: It is. And I don't know if there are good answers, yet. Maybe they're going in the right direction, maybe they're not.Matthew: Time will tell. My hope is that I can try to do some videos here after the new year to try to maybe make this a better experience for people. What does good API design look like? What is it like to implement these things well so they can be incorporated in? There has been a lot of pushback already, just after the first couple of days, from some very vocal users within the CDK community saying, “This is bad. This is fundamentally bad stuff.”Even from big fanboys like myself, who have supported the CDK, who co-authored the CDK Book, and they said, “This is not good.” So, we'll see what happens. Maybe they change direction after a couple of days. Maybe this is— turns out to be a great way to do it. Only time will really tell at this point.Corey: Awesome. And where can people go to find out more as you continue your exploration in this space and find out what you're up to in general?Matthew: So, I do have a Twitter account at@mattbonig on Twitter, however, I am probably going to be doing less and less over there. Engagement and the community as a whole over there has been problematic for a while, and I'll probably be doing more on LinkedIn, so you can find me there. Just search for Matthew Bonig. It's a very unique name.I've also got a website, matthewbonig.com, and from there, you can see blog articles, and a link to my Advanced CDK course, which I'm going to continue adding sessions to over the course of the next few months. I've got one coming out shortly about the deadly embrace and how you can work through that problem with the deadly embrace and hopefully not be so scared about multi-stack applications.Corey: I look forward to that because Lord knows, I'm running into that one myself increasingly frequently.Matthew: Well, good. I will hopefully be able to get this video out and solve all of your problems very easily.Corey: Awesome. Thank you so much for taking the time to speak with me. I appreciate it.Matthew: Thank you for having me. I really appreciate it.Corey: Matthew Bonig, Chief Cloud Architect at Defiance Digital, AWS Dev Tools Hero, and oh so much more. I'm Cloud Economist Corey Quinn, and this is Screaming in the Cloud. If you've enjoyed this podcast, please leave a five-star review on your podcast platform of choice, whereas if you've hated this podcast, please leave a five-star review on your podcast platform of choice along with an angry comment that you will then have to wind up building the implementation for that constructs that power that comment yourself because apparently we're not allowed to build them globally anymore.Corey: If your AWS bill keeps rising and your blood pressure is doing the same, then you need The Duckbill Group. We help companies fix their AWS bill by making it smaller and less horrifying. The Duckbill Group works for you, not AWS. We tailor recommendations to your business, and we get to the point. Visit duckbillgroup.com to get started.
Goodbye mysterious military space plane, and good luck – wherever you're going; GitHub makes Copilot Chat generally available, letting devs ask questions about code Learn more about your ad choices. Visit megaphone.fm/adchoices
In today's episode of Tech Talks Daily, we delve into a crucial and timely topic at the intersection of AI and cybersecurity. Our guest is Arshan Dabirsiaghi, a renowned security researcher turned entrepreneur, whose unique journey from the helm of a successful software security unicorn to the founder of Pixee is as fascinating as it is inspiring. Arshan's story is not just about technological innovation; it's also a testament to the resilience and dreams of immigrants, as his father's immigration story vividly illustrates. The core of our discussion revolves around a burgeoning issue in the tech world: the increasing reliance on Large Language Models (LLMs) like GitHub's Copilot in software development. With an estimated 46% of code on GitHub now generated by LLMs, we're witnessing a seismic shift in how software is created. However, this shift brings with it a host of security challenges. Historically, developers have not been primarily focused on security, a gap that has led to numerous vulnerabilities and high-profile hacks. The integration of LLMs into the coding process is exacerbating this issue, creating a vast expanse of code that needs to be secured, far outpacing our current capabilities. Arshan discusses his latest venture, Pixee, and its flagship product, pixeebot. Pixeebot is not just another security tool; it represents a revolutionary step forward in the fight against software vulnerabilities. This free GitHub App acts like a virtual security engineer, not only identifying but also fixing code vulnerabilities. More than a mere band-aid solution, Pixeebot offers an educational component that could be vital for training both new programmers and, potentially, LLMs themselves. This episode is not just about Pixee or pixeebot, though. It's a broader conversation about the urgent need for solutions in a world where the ratio of code developed to code secured is becoming astronomically unmanageable. We explore the landscape of software development, the primary security concerns in this AI-augmented era, and the critical role of "virtual security engineers." We explore how AI and automation can scale secure code efforts across the software development lifecycle, from planning and threat modeling to code creation and production monitoring. As we navigate these discussions, we also touch on the broader implications for the industry and steps that companies and developers should take to adapt to this rapidly evolving landscape. Join us on this enlightening journey as we unravel the complexities and explore the innovative solutions at the forefront of AI and cybersecurity with Arshan Dabirsiaghi.
Claire Vo Tackles Monetization Strategy for AI Businesses and Protecting the Super ICs in Product This week, Unsolicited Feedback is thrilled to welcome Claire Vo to the virtual table. Claire, the CPO at Color and former CPO at Optimizely, is known for her prolific Product HotTakes on X! Join us as we dive into an engaging conversation with Claire and get ready for some hot takes as: 1️⃣ This week's trio analyze the real cost and pricing challenges of new AI products (starts at 10:37) 2️⃣ Brian & Fareed deliver some Unsolicited Feedback on Claire's views on managing efficient product teams (starts at 48:14) AI's Monetization Challenges Today's discussion starts with a Wall Street Journal article detailing how GitHub's Copilot is in the red due to the costs of AI. The debate is fascinating, but ultimately we walk away with three big takeaways:
Levi McCormick, Cloud Architect at Jamf, joins Corey on Screaming in the Cloud to discuss his work modernizing baseline cloud infrastructure and his experience being on the compliance side of cloud engineering. Levi explains how he works to ensure the different departments he collaborates with are all on the same page so that different definitions don't end up in miscommunications, and why he feels a sandbox environment is an important tool that leads to a successful production environment. Levi and Corey also explore the ethics behind the latest generative AI craze. About LeviLevi is an automation engineer, with a focus on scalable infrastructure and rapid development. He leverages deep understanding of DevOps culture and cloud technologies to build platforms that scale to millions of users. His passion lies in helping others learn to cloud better.Links Referenced: Jamf: https://www.jamf.com/ Twitter: https://twitter.com/levi_mccormick LinkedIn: https://www.linkedin.com/in/levimccormick/ TranscriptAnnouncer: Hello, and welcome to Screaming in the Cloud with your host, Chief Cloud Economist at The Duckbill Group, Corey Quinn. This weekly show features conversations with people doing interesting work in the world of cloud, thoughtful commentary on the state of the technical world, and ridiculous titles for which Corey refuses to apologize. This is Screaming in the Cloud.Corey: Welcome to Screaming in the Cloud. I'm Corey Quinn. A longtime friend and person has been a while since he's been on the show, Levi McCormick has been promoted or punished for his sins, depending upon how you want to slice that, and he is now the Director of Cloud Engineering at Jamf. Levi, welcome back.Levi: Thanks for having me, Corey.Corey: I have to imagine internally, you put that very pronounced F everywhere, and sometimes where it doesn't belong, like your IAMf policies and whatnot.Levi: It is fun to see how people like to interpret how to pronounce our name.Corey: So, it's been a while. What were you doing before? And how did you wind up stumbling your way into your current role?Levi: [laugh]. When we last spoke, I was a cloud architect here, diving into just our general practices and trying to shore up some of them. In between, I did a short stint as director of FedRAMP. We are pursuing some certifications in that area and I led, kind of, the engineering side of the compliance journey.Corey: That sounds fairly close to hell on earth from my particular point of view, just because I've dealt in the compliance side of cloud engineering before, and it sounds super interesting from a technical level until you realize just how much of it revolves around checking the boxes, and—at least in the era I did it—explaining things to auditors that I kind of didn't feel I should have to explain to an auditor, but there you have it. Has the state of that world improved since roughly 2015?Levi: I wouldn't say it has improved. While doing this, I did feel like I drove a time machine to work, you know, we're certifying VMs, rather than container-based architectures. There was a lot of education that had to happen from us to auditors, but once they understood what we were trying to do, I think they were kind of on board. But yeah, it was a [laugh] it was a journey.Corey: So, one of the things you do—in fact, the first line in your bio talking about it—is you modernize baseline cloud infrastructure provisioning. That means an awful lot of things depending upon who it is that's answering the question. What does that look like for you?Levi: For what we're doing right now, we're trying to take what was a cobbled-together part-time project for one engineer, we're trying to modernize that, turn it into as much self-service as we can. There's a lot of steps that happen along the way, like a new workload needs to be spun up, they decide if they need a new AWS account or not, we pivot around, like, what does the access profile look like, who needs to have access to it, which things does it need to connect to, and then you look at the billing side, compliance side, and you just say, you know, “Who needs to be informed about these things?” We apply tags to the accounts, we start looking at lower-level tagging, depending on if it's a shared workload account or if it's a completely dedicated account, and we're trying to wrap all of that in automation so that it can be as click-button as possible.Corey: Historically, I found that when companies try to do this, the first few attempts at it don't often go super well. We'll be polite and say their first attempts resemble something artisanal and handcrafted, which might not be ideal for this. And then in many cases, the overreaction becomes something that is very top-down, dictatorial almost, is the way I would frame that. And the problem people learn then is that, “Oh, everyone is going to route around us because they don't want to deal with us at all.” That doesn't quite seem like your jam from what I know of you and your approach to things. How do you wind up keeping the guardrails up without driving people to shadow IT their way around you?Levi: I always want to keep it in mind that even if it's not an option, I want to at least pretend like a given team could not use our service, right? I try to bring a service mentality to it, so we're talking Accounts as a Service. And then I just think about all of the things that they would have to solve if they didn't go through us, right? Like, are they managing their finances w—imagine they had to go in and negotiate some kind of pricing deal on their own, right, all of these things that come with being part of our organization, being part of our service offering. And then just making sure, like, those things are always easier than doing it on their own.Corey: How diverse would you say that the workloads are that are in your organization? I found that in many cases, you'll have a SaaS-style company where there's one primary workload that is usually bearing the name of the company, and that's the thing that they provide to everyone. And then you have the enterprise side of the world where they have 1500 or 2000 distinct application teams working on different things, and the only thing they really have in common is, well, that all gets billed to the same company, eventually.Levi: They are fairly diverse in how… they're currently created. We've gone through a few acquisitions, we've pulled a bunch of those into our ecosystem, if you will. So, not everything has been completely modernized or brought over to, you know, standards, if you will, if such a thing even exists in companies. You know [laugh], you may pretend that they do, but you're probably lying to yourself, right? But you know, there are varying platforms, we've got a whole laundry list of languages that are being used, we've got some containerized, some VM-based, some serverless workloads, so it's all over the place. But you nailed it. Like, you know, the majority of our footprint lives in maybe a handful of, you know, SaaS offerings.Corey: Right. It's sort of a fun challenge when you start taking a looser approach to these things because someone gets back from re:Invent, like, “Well, I went to the keynote and now I have my new shopping list of things I'm going to wind up deploying,” and ehh, that never goes well, having been that person in a previous life.Levi: Yeah. And you don't want to apply too strict of governance over these things, right? You want people to be able to play, you want them to be inspired and start looking at, like, what would be—what's something that's going to move the needle in terms of our cloud architecture or product offerings or whatever we have. So, we have sandbox accounts that are pretty much wide open, we've got some light governance over those, [laugh] moreso for billing than anything. And all of our internal tooling is available, you know, like if you're using containers or whatever, like, all of that stuff is in those sandbox accounts.And that's where our kind of service offering comes into play, right? Sandbox is still an account that we tried to vend, if you will, out of our service. So, people should be building in your sandbox environments just like they are in your production as much as possible. You know, it's a place where tools can get the tires kicked and smooth out bugs before you actually get into, you know, roadmap-impacting problems.Corey: One of the fun challenges you have is, as you said, the financial aspect of this. When you've got a couple of workloads that drive most things, you can reason about them fairly intelligently, but trying to predict the future—especially when you're dealing with multi-year contract agreements with large cloud providers—becomes a little bit of a guessing game, like, “Okay. Well, how much are we going to spend on generative AI over the next three years?” The problem with that is that if you listen to an awful lot of talking heads or executive types, like, “Oh, yeah, if we're spending $100 million a year, we're going to add another 50 on top of that, just in terms of generative AI.” And it's like, press X to doubt, just because it's… I appreciate that you're excited about these things and want to play with them, but let's make sure that there's some ‘there' there before signing contracts that are painful to alter.Levi: Yeah, it's a real struggle. And we have all of these new initiatives, things people are excited for. Meanwhile, we're bringing old architecture into a new platform, if you will, or a new footprint, so we have to constantly measure those against each other. We have a very active conversation with finance and with leadership every month, or even weekly, depending on the type of project and where that spend is coming from.Corey: One of the hard parts has always been, I think, trying to get people on the finance side of the world, the engineering side of the world, and the folks who are trying to predict what the business was going to do next, all speaking the same language. It just feels like it's too easy to wind up talking past each other if you're not careful.Levi: Yeah, it's really hard. Recently taken over the FinOps practice. It's been really important for me, for us to align on what our words mean, right? What are these definitions mean? How do we come to common consensus so that eventually the communication gets faster? But we can't talk past each other. We have to know what our words mean, we have to know what each person cares about in this conversation, or what does their end goal look like? What do they want out of the conversation? So, that's been—that's taken a significant amount of time.Corey: One of the problems I have is with the term FinOps as a whole, ignoring the fact entirely that it was an existing term of art within finance for decades; great, we're just going to sidestep past that whole mess—the problem you'll see is that it just seems like that it means something different to almost everyone who hears it. And it's sort of become a marketing term more so that it has an actual description of what people are doing. Just because some companies will have a quote-unquote, “FinOps team,” that is primarily going to be run by financial analysts. And others, “Well, we have one of those lying around, but it's mostly an engineering effort on our part.”And I've seen three or four different expressions as far as team composition goes and I'm not convinced any of them are right. But again, it's easy for me to sit here and say, “Oh, that's wrong,” without having an environment of my own to run. I just tend to look at what my clients do. And, “Well, I've seen a lot of things, and they all work poorly in different ways,” is not uplifting and helpful.Levi: Yeah. I try not to get too hung up on what it's called. This is the name that a lot of people inside the company have rallied around and as long as people are interested in saving money, cool, we'll call it FinOps, you know? I mean, DevOps is the same thing, right? In some companies, you're just a sysadmin with a higher pay, and in some companies, you're building extensive cloud architecture and pipelines.Corey: Honestly, for the whole DevOps side of the world, I maintain we're all systems administrators. The tools have changed, the methodologies have changed, the processes have changed, but the responsibility of ‘keep the site up' generally has not. But if you call yourself a sysadmin, you're just asking him to, “Please pay me less money in my next job.” No, thanks.Levi: Yeah. “Where's the Exchange Server for me to click on?” Right? That's the [laugh]—if you call yourself a sysadmin [crosstalk 00:11:34]—Corey: God. You're sending me back into twitching catatonia from my early days.Levi: Exactly [laugh].Corey: So, you've been paying attention to this whole generative AI hype monster. And I want to be clear, I say this as someone who finds the technology super neat and I'm optimistic about it, but holy God, it feels like people have just lost all sense. If that's you, my apologies in advance, but I'm still going to maintain the point.Levi: I've played with all the various toys out there. I'm very curious, you know? I think it's really fun to play with them, but to, like, make your entire business pivot on a dime and pursue it just seems ridiculous to me. I hate that the cryptocurrency space has pivoted so hard into it, you know? All the people that used to be shilling coins are now out there trying to cobble together a couple API calls and turn it into an AI, right?Corey: It feels like it's just a hype cycle that people are more okay with being a part of. Like, Andy Jassy, in the earnings call a couple of weeks ago saying that every Amazon team is working with generative AI. That's not great. That's terrifying. I've been playing with the toys as well and I've asked it things like, “Oh, spit out an IAM policy for me,” or, “Oh, great, what can I do to optimize my AWS bill?” And it winds up spitting out things that sound highly plausible, but they're also just flat-out wrong. And that, it feels like a lot of these spaces, it's not coming up with a plausible answer—that's the hard part—is coming up with the one that is correct. And that's what our jobs are built around.Levi: I've been trying to explain to a lot of people how, if you only have surface knowledge of the thing that it's telling you, it probably seems really accurate, but when you have deep knowledge on the topic that you're interacting with this thing, you're going to see all of the errors. I've been using GitHub's Copilot since the launch. You know, I was in one of the previews. And I love it. Like, it speeds up my development significantly.But there have been moments where I—you know, IAM policies are a great example. You know, I had it crank out a Lambda functions policy, and it was just frankly, wrong in a lot of places [laugh]. It didn't quite imagine new AWS services, but it was really [laugh] close. The API actions were—didn't exist. It just flat-out didn't exist.Corey: I love that. I've had some magic happen early on where it could intelligently query things against the AWS pricing API, but then I asked it the same thing a month later and it gave me something completely ridiculous. It's not deterministic, which is part of the entire problem with it, too. But it's also… it can help incredibly in some weird ways I didn't see coming. But it can also cause you to spend more time chasing that thing than just doing it yourself the first time.I found a great way to help it—you know, it helped me write blog posts with it. I tell it to write a blog post about a topic and give it some bullet points and say, “Write in my voice,” and everything it says I take issue with, so then I just copy that into a text editor and then mansplain-correct the robot for 20 minutes and, oh, now I've got a serviceable first draft.Levi: And how much time did you save [laugh] right? It is fun, you know?Corey: It does help because that's better for me at least and staring at an empty page of what am I going to write? It gets me past the writer's block problem.Levi: Oh, that's a great point, yeah. Just to get the ball rolling, right, once you—it's easier to correct something that's wrong, and you're almost are spite-driven at that point, right? Like, “Let me show this AI how wrong it was and I'll write the perfect blog post.” [laugh].Corey: It feels like the companies jumping on this, if you really dig into what we're talking about, it seems like they're all very excited about the possibility of we don't have to talk to customers anymore because the robots will all do that. And I don't think that's going to go the way you want to. We just have this minor hallucination problem. Yeah, that means that lies and tries to book customers to hotel destinations that don't exist. Think about this a little more. The failure mode here is just massive.Levi: It's scary, yeah. Like, without some kind of review process, I wouldn't ship that straight to my customers, right? I wouldn't put that in front of my customer and say, like, “This is”—I'm going to take this generative output and put it right in front of them. That scares me. I think as we get deeper into it, you know, maybe we'll see… I don't know, maybe we'll put some filters or review process, or maybe it'll get better. I mean, who was it that said, you know, “This is the worst it's ever going to be?” Right, it will only get better.Corey: Well, the counterargument to that is, it will get far worse when we start putting this in charge [unintelligible 00:16:08] safety-critical systems, which I'm sure it's just a matter of time because some of these boosters are just very, very convincing. It's just thinking, how could this possibly go the worst? Ehhh. It's not good.Levi: Yeah, well, I mean, we're talking impact versus quality, right? The quality will only ever get better. But you know, if we run before we walk, the impact can definitely get wider.Corey: From where I sit, I want to see this really excel within bounded problem spaces. The one I keep waiting for is the AWS bill because it's a vast space, yes, and it's complicated as all hell, but it is bounded. There are a finite—though large—number of things you can see in an AWS bill, and there are recommendations you can make based on top of that. But everything I've seen that plays in this space gets way overconfident far too quickly, misses a bunch of very obvious lines of inquiry. Ah, I'm skeptical.Then you pass that off to unbounded problem spaces like human creativity and that just turns into an absolute disaster. So, much of what I've been doing lately has been hamstrung by people rushing to put in safeguards to make sure it doesn't accidentally say something horrible that it's stripped out a lot of the fun and the whimsy and the sarcasm in the approach, of I—at one point, I could bully a number of these things into ranking US presidents by absorbency. That's getting harder to do now because, “Nope, that's not respectful and I'm not going to do it,” is basically where it draws the line.Levi: The one thing that I always struggle with is, like, how much of the models are trained on intellectual property or, when you distill it down, pure like human suffering, right? Like, this is somebody's art, they've worked hard, they've suffered for it, they put it out there in the world, and now it's just been pulled in and adopted by this tool that—you know, how many of the examples of, “Give me art in the style of,” right, and you just see hundreds and hundreds of pieces that I mean, frankly, are eerily identical to the style.Corey: Even down to the signature, in some cases. Yeah.Levi: Yeah, exactly. You know, and I think that we can't lose sight of that, right? Like, these tools are fun and you know, they're fun to play with, it's really interesting to explore what's possible, but we can't lose sight of the fact that there are ultimately people behind these things.Corey: This episode is sponsored in part by Panoptica. Panoptica simplifies container deployment, monitoring, and security, protecting the entire application stack from build to runtime. Scalable across clusters and multi-cloud environments, Panoptica secures containers, serverless APIs, and Kubernetes with a unified view, reducing operational complexity and promoting collaboration by integrating with commonly used developer, SRE, and SecOps tools. Panoptica ensures compliance with regulatory mandates and CIS benchmarks for best practice conformity. Privacy teams can monitor API traffic and identify sensitive data, while identifying open-source components vulnerable to attacks that require patching. Proactively addressing security issues with Panoptica allows businesses to focus on mitigating critical risks and protecting their interests. Learn more about Panoptica today at panoptica.app.Corey: I think it matters, on some level, what the medium is. When I'm writing, I will still use turns of phrase from time to time that I first encountered when I was reading things in the 1990s. And that phrase stuck with me and became part of my lexicon. And I don't remember where I originally encountered some of these things; I just know I use those raises an awful lot. And that has become part and parcel of who and what I am.Which is also, I have no problem telling it to write a blog post in the style of Corey Quinn and then ripping a part of that out, but anything that's left in there, cool. I'm plagiarizing the thing that plagiarized from me and I find that to be one of those ethically just moments there. But written word is one thing depending on what exactly it's taking from you, but visual style for art, that's something else entirely.Levi: There's a real ethical issue here. These things can absorb far much more information than you ever could in your entire lifetime, right, so that you can only quote-unquote, you know, “Copy, borrow, steal,” from a handful of other people in your entire life, right? Whereas this thing could do hundreds or thousands of people per minute. I think that's where the calculus needs to be, right? How many people can we impact with this thing?Corey: This is also nothing new, where originally in the olden times, great, copyright wasn't really a thing because writing a book was a massive, massive undertaking. That was something that you'd have to do by hand, and then oh, you want a copy of the book? You'd have to have a scribe go and copy the thing. Well then, suddenly the printing press came along, and okay, that changes things a bit.And then we continue to evolve there to digital distribution where suddenly it's just bits on a disk that I can wind up throwing halfway around the internet. And when the marginal cost of copying something becomes effectively zero, what does that change? And now we're seeing, I think, another iteration in that ongoing question. It's a weird world and I don't know that we have the framework in place even now to think about that properly. Because every time we start to get a handle on it, off we go again. It feels like if they were doing be invented today, libraries would absolutely not be considered legal. And yet, here we are.Levi: Yeah, it's a great point. Humans just do not have the ethical framework in place for a lot of these things. You know, we saw it even with the days of Napster, right? It's just—like you said, it's another iteration on the same core problem. I [laugh] don't know how to solve it. I'm not a philosopher, right?Corey: Oh, yeah. Back in the Napster days, I was on that a fair bit in high school and college because I was broke, and oh, I wanted to listen to this song. Well, it came on an album with no other good songs on it because one-hit wonders were kind of my jam, and that album cost 15, 20 bucks, or I could grab the thing for free. There was no reasonable way to consume. Then they started selling individual tracks for 99 cents and I gorged myself for years on that stuff.And now it feels like streaming has taken over the world to the point where the only people who really lose on this are the artists themselves, and I don't love that outcome. How do we have a better tomorrow for all of this? I know we're a bit off-topic from you know, cloud management, but still, this is the sort of thing I think about when everything's running smoothly in a cloud environment.Levi: It's hard to get people to make good decisions when they're so close to the edge. And I think about when I was, you know, college-age scraping by on minimum wage or barely above minimum wage, you know, it was hard to convince me that, oh yeah, you shouldn't download an MP3 of that song; you should go buy the disc, or whatever. It was really hard to make that argument when my decision was buy an album or figure out where I'm going to, you know, get my lunch. So, I think, now that I'm in a much different place in my life, you know, these decisions are a lot easier to make in an ethical way because that doesn't impact my livelihood nearly as much. And I think that is where solutions will probably come out of. The more people doing better, the easier it is for them to make good decisions.Corey: I sure hope you're right, but something I found is that okay we made it easy for people to make good decisions. Like, “Nope, you've just made it easier for me to scale a bunch of terrible ones. I can make 300,000 more terrible decisions before breakfast time now. Thanks.” And, “No, that's not what I did that for.” Yet here we are. Have you been tracking lately what's been going on with the HashiCorp license change?Levi: Um, a little bit, we use—obviously use Terraform in the company and a couple other Hashi products, and it was kind of a wildfire of, you know, how does this impact us? We dove in and we realized that it doesn't, but it is concerning.Corey: You're not effectively wrapping Terraform and then using that as the basis for how you do MDM across your customer fleets.Levi: Yeah. You know, we're not deploying customers' written Terraform into their environments or something kind of wild like that. Yeah, it doesn't impact us. But it is… it is concerning to watch a company pivot from an open-source, community-based project to, “Oh, you can't do that anymore.” It doesn't impact a lot of people who use it day-to-day, but I'm really worried about just the goodwill that they've lit on fire.Corey: One of the problems, too, is that their entire write-up on this was so vague that it was—there is no way to get an actual… piece of is it aimed at us or is it not without very deep analysis, and hope that when it comes to court, you're going to have the same analysis as—that is sympathetic. It's, what is considered to be a competitor? At least historically, it was pretty obvious. Some of these databases, “Okay great. Am I wrapping their database technology and then selling it as a service? No? I'm pretty good.”But with HashiCorp, what they do is so vast in a few key areas that no one has the level of certainty. I was pretty freaking certain that I'm not shipping MongoDB with my own wrapper around it, but am I shipping something that looks like Terraform if I'm managing someone's environment for them? I don't know. Everything's thrown into question. And you're right. It's the goodwill that currently is being set on fire.Levi: Yeah, I think people had an impression of Hashi that they were one of the good guys. You know, the quote-unquote, “Good guys,” in the space, right? Mitchell Hashimoto is out there as a very prominent coder, he's an engineer at heart, he's in the community, pretty influential on Twitter, and I think people saw them as not one of the big, faceless corporations, so to see moves like this happen, it… I think it shook a lot of people's opinions of them and scared them.Corey: Oh, yeah. They've always been the good guys in this context. Mitch and Armon were fantastic folks. I'm sure they still are. I don't know if this is necessarily even coming from them. It's market forces, what are investors demanding? They see everyone is using Terraform. How does that compare to HashiCorp's market value?This is one of the inherent problems if I'm being direct, of the end-stages of capitalism, where it's, “Okay, we're delivering on a lot of value. How do we capture ever more of it and growing massively?” And I don't know. I don't know what the answer is, but I don't think anyone's thrilled with this outcome. Because, let's be clear, it is not going to meaningfully juice their numbers at all. They're going to be setting up a lot of ill will against them in the industry, but I don't see the upside for them. I really don't.Levi: I haven't really done any of the analysis or looked for it, I should say. Have you seen anything about what this might actually impact any providers or anything? Because you're right, like, what kind of numbers are we actually talking about here?Corey: Right. Well, there are a few folks that have done things around this that people have named for me: Spacelift being one example, Pulumi being another, and both of them are saying, “Nope, this doesn't impact us because of X, Y, and Z.” Yeah, whether it does or doesn't, they're not going to sit there and say, “Well, I guess we don't have a company anymore. Oh, well.” And shut the whole thing down and just give their customers over to HashiCorp.Their own customers would be incensed if that happened and would not go to HashiCorp if that were to be the outcome. I think, on some level, they're setting the stage for the next evolution in what it takes to manage large-scale cloud environments effectively. I think basically, every customer I've ever dealt with on my side has been a Terraform shop. I finally decided to start learning the ins and outs of it myself a few weeks ago, and well, it feels like I should have just waited a couple more weeks and then it would have become irrelevant. Awesome. Which is a bit histrionic, but still, this is going to plant seeds for people to start meaningfully competing. I hope.Levi: Yeah, I hope so too. I have always awaited releases of Terraform Cloud with great anticipation. I generally don't like managing my Terraform back-ends, you know, I don't like managing the state files, so every time Terraform Cloud has some kind of release or something, I'm looking at it because I'm excited, oh finally, maybe this is the time I get to hand it off, right? Maybe I start to get to use their product. And it has never been a really compelling answer to the problems that I have.And I've always said, like, the [laugh] cloud journey would be Google's if they just released a managed Terraform [laugh] service. And this would be one way for them to prevent that from happening. Because Google doesn't even have an Infrastructure as Code competitor. Not really. I mean, I know they have their, what, Plans or their Projects or whatever they… their Infrastructure as Code language was, but—Corey: Isn't that what Stackdriver was supposed to be? What happened with that? It's been so long.Levi: No, that's a logging solution [laugh].Corey: That's the thing. It all runs together. Not it was their operations suite that was—Levi: There we go.Corey: —formerly Stackdriver. Yeah. Now, that does include some aspects—yeah. You're right, it's still hanging out in the observability space. This is the problem is all this stuff conflates and companies are terrible at naming and Google likes to deprecate things constantly. And yeah, but there is no real competitor. CloudFormation? Please. Get serious.Levi: Hey, you're talking to a member of the CloudFormation support group here. So, I'm still a huge fan [laugh].Corey: Emotional support group, more like it, it seems these days.Levi: It is.Corey: Oh, good. It got for loops recently. We've been asking for basically that to make them a lot less wordy only for, what, ten years?Levi: Yeah. I mean, my argument is that I'm operating at the account level, right? I need to deploy to 250, 300, 500 accounts. Show me how to do that with Terraform that isn't, you know, stab your eyes out with a fork.Corey: It can be done, but it requires an awful lot of setting things up first.Levi: Exactly.Corey: That's sort of a problem. Like yeah, once you have the first 500 going, the rest are just like butter. But that's a big step one is massive, and then step two becomes easy. Yeah… no, thank you.Levi: [laugh]. I'm going to stick with my StacksSets, thank you.Corey: [laugh]. I really want to thank you for taking the time to come back on and honestly kibitz about the state of the industry with me. If people want to learn more, where's the best place for them to find you?Levi: Well, I'm still active on the space normally known as—formerly known as Twitter. You can reach out to me there. DMs are open. I'm always willing to help people learn how to cloud better. Hopefully trying to make my presence known a little bit more on LinkedIn. If you happen to be over there, reach out.Corey: And we will, of course, put links to that in the [show notes 00:30:16]. Thank you so much for taking the time to speak with me again. It's always a pleasure.Levi: Thanks, Corey. I always appreciate it.Corey: Levi McCormick, Director of Cloud Engineering at Jamf. I'm Cloud Economist Corey Quinn, and this is Screaming in the Cloud. If you've enjoyed this podcast, please leave a five-star review on your podcast platform of choice, whereas if you've hated this podcast, please leave a five-star review on your podcast platform of choice, and along with an insulting comment that tells us that we completely missed the forest for the trees and that your programmfing is going to be far superior based upon generative AI.Corey: If your AWS bill keeps rising and your blood pressure is doing the same, then you need The Duckbill Group. We help companies fix their AWS bill by making it smaller and less horrifying. The Duckbill Group works for you, not AWS. We tailor recommendations to your business and we get to the point. Visit duckbillgroup.com to get started.
This series on artificial intelligence explores recent breakthroughs of AI, its broader societal implications and its future potential. In this presentation, Pamela Samuelson, professor of Law and Information at UC Berkeley, discusses whether computer-generated texts and images fall under the copyright law. She says that early on, the consensus was that AI was just a tool, like a camera, so humans could claim copyright in machine-generated outputs to which they made contributions. Now the consensus is that AI-generated texts and images are not copyrightable for the lack of a human author. The urgent questions today focus on whether ingesting in-copyright works as training data is copyright infringement and whether the outputs of AI programs are infringing derivative works of the ingested images. Four recent lawsuits, one involving GitHub's Copilot and three involving Stable Diffusion, will address these issues. Samuelson has been a member of the UC Berkeley School of Law faculty since 1996. She has written and spoken extensively about the challenges that new information technologies pose for traditional legal regimes, especially for intellectual property law. She is a member of the American Academy of Arts & Sciences, a fellow of the Association for Computing Machinery (ACM), a contributing editor of Communications of the ACM, a past fellow of the John D. & Catherine T. MacArthur Foundation, a member of the American Law Institute, and an honorary professor of the University of Amsterdam. Series: "The Future of AI" [Science] [Business] [Show ID: 38859]
This series on artificial intelligence explores recent breakthroughs of AI, its broader societal implications and its future potential. In this presentation, Pamela Samuelson, professor of Law and Information at UC Berkeley, discusses whether computer-generated texts and images fall under the copyright law. She says that early on, the consensus was that AI was just a tool, like a camera, so humans could claim copyright in machine-generated outputs to which they made contributions. Now the consensus is that AI-generated texts and images are not copyrightable for the lack of a human author. The urgent questions today focus on whether ingesting in-copyright works as training data is copyright infringement and whether the outputs of AI programs are infringing derivative works of the ingested images. Four recent lawsuits, one involving GitHub's Copilot and three involving Stable Diffusion, will address these issues. Samuelson has been a member of the UC Berkeley School of Law faculty since 1996. She has written and spoken extensively about the challenges that new information technologies pose for traditional legal regimes, especially for intellectual property law. She is a member of the American Academy of Arts & Sciences, a fellow of the Association for Computing Machinery (ACM), a contributing editor of Communications of the ACM, a past fellow of the John D. & Catherine T. MacArthur Foundation, a member of the American Law Institute, and an honorary professor of the University of Amsterdam. Series: "The Future of AI" [Science] [Business] [Show ID: 38859]
This series on artificial intelligence explores recent breakthroughs of AI, its broader societal implications and its future potential. In this presentation, Pamela Samuelson, professor of Law and Information at UC Berkeley, discusses whether computer-generated texts and images fall under the copyright law. She says that early on, the consensus was that AI was just a tool, like a camera, so humans could claim copyright in machine-generated outputs to which they made contributions. Now the consensus is that AI-generated texts and images are not copyrightable for the lack of a human author. The urgent questions today focus on whether ingesting in-copyright works as training data is copyright infringement and whether the outputs of AI programs are infringing derivative works of the ingested images. Four recent lawsuits, one involving GitHub's Copilot and three involving Stable Diffusion, will address these issues. Samuelson has been a member of the UC Berkeley School of Law faculty since 1996. She has written and spoken extensively about the challenges that new information technologies pose for traditional legal regimes, especially for intellectual property law. She is a member of the American Academy of Arts & Sciences, a fellow of the Association for Computing Machinery (ACM), a contributing editor of Communications of the ACM, a past fellow of the John D. & Catherine T. MacArthur Foundation, a member of the American Law Institute, and an honorary professor of the University of Amsterdam. Series: "The Future of AI" [Science] [Business] [Show ID: 38859]
This series on artificial intelligence explores recent breakthroughs of AI, its broader societal implications and its future potential. In this presentation, Pamela Samuelson, professor of Law and Information at UC Berkeley, discusses whether computer-generated texts and images fall under the copyright law. She says that early on, the consensus was that AI was just a tool, like a camera, so humans could claim copyright in machine-generated outputs to which they made contributions. Now the consensus is that AI-generated texts and images are not copyrightable for the lack of a human author. The urgent questions today focus on whether ingesting in-copyright works as training data is copyright infringement and whether the outputs of AI programs are infringing derivative works of the ingested images. Four recent lawsuits, one involving GitHub's Copilot and three involving Stable Diffusion, will address these issues. Samuelson has been a member of the UC Berkeley School of Law faculty since 1996. She has written and spoken extensively about the challenges that new information technologies pose for traditional legal regimes, especially for intellectual property law. She is a member of the American Academy of Arts & Sciences, a fellow of the Association for Computing Machinery (ACM), a contributing editor of Communications of the ACM, a past fellow of the John D. & Catherine T. MacArthur Foundation, a member of the American Law Institute, and an honorary professor of the University of Amsterdam. Series: "The Future of AI" [Science] [Business] [Show ID: 38859]
This series on artificial intelligence explores recent breakthroughs of AI, its broader societal implications and its future potential. In this presentation, Pamela Samuelson, professor of Law and Information at UC Berkeley, discusses whether computer-generated texts and images fall under the copyright law. She says that early on, the consensus was that AI was just a tool, like a camera, so humans could claim copyright in machine-generated outputs to which they made contributions. Now the consensus is that AI-generated texts and images are not copyrightable for the lack of a human author. The urgent questions today focus on whether ingesting in-copyright works as training data is copyright infringement and whether the outputs of AI programs are infringing derivative works of the ingested images. Four recent lawsuits, one involving GitHub's Copilot and three involving Stable Diffusion, will address these issues. Samuelson has been a member of the UC Berkeley School of Law faculty since 1996. She has written and spoken extensively about the challenges that new information technologies pose for traditional legal regimes, especially for intellectual property law. She is a member of the American Academy of Arts & Sciences, a fellow of the Association for Computing Machinery (ACM), a contributing editor of Communications of the ACM, a past fellow of the John D. & Catherine T. MacArthur Foundation, a member of the American Law Institute, and an honorary professor of the University of Amsterdam. Series: "The Future of AI" [Science] [Business] [Show ID: 38859]
In this episode, Chris and Andrew have a candid discussion about their programming experiences, the demanding nature of their jobs, and the joy and complexity of coding. They have a conversation on challenges with dependencies, the new branch settings on GitHub, TypeScript, JavaScript, and the functionality and benefits of using JSDoc. They also dive into the importance of flexibility in code, the evolution of coding practices, their preference for smart editors that provide real time updates, and the topic on the use of AI tools in programming is discussed and whether AI assists or inhibits the developer's thought process. Also, Andrew tells us about Prefab, a cool Rails tool he recently discovered and found very useful. Hit download to hear more! [00:00:35] Andrew tells us he has an app to monitor his activity and sometimes finds himself working for 11 hours straight, and Chris reminisces about the early days of learning to code and the excitement of late night programming. [00:04:58] Chris was struggling with dependencies in his work and considers writing his own basic glob functionality. [00:11:38] The guys discuss the utility of new branch settings on GitHub, and Andrew tells us he made his own commitlit config and updated his prettier config on his GitHub. [00:12:52] They move onto the topic of JavaScript and TypeScript, bringing up JSDoc, and Andrew explains the functionality and benefits of using JSDoc. He shares his discovery that JSDoc can be used to add TypeScript functionality without writing TypeScript, primarily using type comments. [00:16:47] Chris notes that this approach allows for middle ground between JavaScript and TypeScript, enhancing editor hints without the complexity of a fully typed language. [00:22:50] Chris tells us his journey began in college where he learned multiple languages such as Ruby, Python, C, and Visual Basic. He emphasizes the importance of flexibility in code, allowing it to evolve over time. [00:25:18] Andrew shares his dislike for Sorbet and talks about his preference for Solargraph in VS Code, a language server that uses YARD docs for typing. He's found this useful in his work, particularly when refactoring. [00:27:55] We hear about the greatest code Andrew's ever written, and Chris and Andrew discuss the use of dynamic languages and how it's crucial not to lose the essence of languages like Ruby by over-imposing typing. [00:33:49] Chris discusses the use of AI tools in programming, such as GitHub's Copilot, and notes that while they're useful in generating codes, but they may limit the developer's thought process since they tend to rely on AI's suggestion without thinking through the problem. [00:37:26] Andrew explains why he showed Chris some documentation he generated from ChatGPT 4, and they both agree that AI-powered tools can make documentation more efficient. [00:46:53] Andrew talks about his experience with Product Hunt, and a very useful Rails tool he recently discovered called prefab.cloud, which allows developers to target their Rails logs for specific user issues.[00:53:12] Chris and Andrew discuss the difficulty of dealing with Twitter API and Reddit API pricing, lamenting the high costs for developers. They also talk about their frustrations with companies that acquire and shut down successful third-party apps instead of supporting them.Panelists:Chris OliverAndrew MasonSponsor:HoneybadgerLinks:Jason Charnes TwitterChris Oliver TwitterAndrew Mason TwitterAndrew's commitlint-config Tailwind CSS v3.3: Extended color palette, ESM/TS support, logical properties, and moreUp your JavaScript autocomplete game using JSDocs.YARDJSDoc supportGitHub CopilotKonnor Rogers TwitterPrototyping signatureProduct HuntPrefab Feature: Dynamic Log Levels (YouTube)PrefabHad a call with Reddit to discuss pricingApollo
GitHub Copilot the good the bad, and the ugly, Windows on Mac BING on the down fall, Top countrie in europe for Junoior devs and students Welcome to WCQ, in this episode: GitHub's Copilot improving its AI model and capabilities but old problems still frustrate DEV's. Microsoft Windows now Officially suportetd on Mac's with Apple silicon, but also takes a huge hit in the stock market after BING looses controle. Junior devs and students are favoring this European country for study and starting their careers. --- Send in a voice message: https://podcasters.spotify.com/pod/show/menyhart-b-norbert9/message
In today's episode Paul and Jack get into using AI to help write code for software. Is it useful? Is it accurate? Can it be used to write entire applications? And most important of all, will OpenAI tools like Github's CoPilot eventually replace developers and take their jobs?
This week we discuss Cloud Earnings, ChatGPT Prompts and the OpenTelemetry controversy. Plus, thoughts on refrigerating eggs… Watch the YouTube Live Recording of Episode 400 (https://youtube.com/live/3lko4YjndKY?feature=share) Runner-up Titles You don't want to toy with food poisoning Do you put all your eggs in one basket? The answer to this and every question is ChatGPT This is just Bing Bullshit as a Service It doesn't matter if it's right, it's fine Bad dog The answer to every question is ChatGPT Linux under the desktop Rundown Why Does the U.S. Refrigerate Eggs When Much of the World Doesn't? (https://www.organicvalley.coop/blog/why-does-us-refrigerate-eggs/) Earnings and Outlook Cloud Giants Update (https://twitter.com/jaminball/status/1621260249016434691?s=46&t=E1TVgOcjzgZuJPndlhI9NA) Red Hat OpenShift making money (https://twitter.com/adamhjk/status/1618795275665162247?s=56&t=lB7BRczZa4_zVz6n4aAjIg) Gartner: Overall IT Spend Has Slowed. But Software? That's Still Growing. (https://www.saastr.com/gartner-overall-it-spend-has-slowed-but-software-still-growing/) Cloud Earnings (https://www.cnbc.com/2023/02/02/amazon-aws-earnings-q4-2022.html) The Big Tech Rebound Is Underway (https://www.bigtechnology.com/p/the-big-tech-rebound-is-underway) Cloud leaders Amazon, Google and Microsoft show the once-booming market is cooling down (https://www.cnbc.com/2023/02/04/amazon-google-microsoft-show-slowing-growth-in-cloud-infrastructure.html) The Four Horsemen of the Tech Recession (https://stratechery.com/2023/the-four-horsemen-of-the-tech-recession/) Microsoft offers lackluster guidance, says new business growth slowed in December (https://www.cnbc.com/2023/01/24/microsoft-msft-earnings-q2-2023.html) FY23 Q2 - Press Releases - Investor Relations - Microsoft (https://www.microsoft.com/en-us/investor/earnings/fy-2023-q2/press-release-webcast) The On-Premises Empire Strikes Back At AWS (https://www.nextplatform.com/2023/02/06/the-on-premises-empire-strikes-back-at-aws/) A.I. OpenAI has hired an army of contractors to make basic coding obsolete (https://www.semafor.com/article/01/27/2023/openai-has-hired-an-army-of-contractors-to-make-basic-coding-obsolete) Google has developed a music-making AI bot (https://mashable.com/article/google-ai-bot-music) Why does ChatGPT constantly lie? (https://noahpinion.substack.com/p/why-does-chatgpt-constantly-lie) Who will compete with ChatGPT? Meet the contenders (https://venturebeat.com/ai/who-will-compete-with-chatgpt-meet-the-contenders-the-ai-beat/) OpenAI API (https://platform.openai.com/ai-text-classifier) Infrastructure-as-Code Generator (https://github.com/gofireflyio/aiac) Code-generating platform Magic challenges GitHub's Copilot with $23M in VC backing (https://techcrunch.com/2023/02/06/magic-dev-code-generating-startup-raises-23m/) Microsoft to Invest $10 Billion in OpenAI, the Creator of ChatGPT (https://www.nytimes.com/2023/01/23/business/microsoft-chatgpt-artificial-intelligence.html) Google Calls In Help From Larry Page and Sergey Brin for A.I. Fight (https://www.nytimes.com/2023/01/20/technology/google-chatgpt-artificial-intelligence.html) Claims Datadog asked developer to kill open source data tool (https://www.theregister.com/2023/02/02/datadog_opentelemetry_tool_dorman/) Everybody Gets Fired Eventually (https://www.thecloudcast.net/2023/02/everybody-gets-fired-eventually.html) (The Cloudcast Podcast) This FTX Slide has been nominated as Slide of the Year (https://assets.bwbx.io/images/users/iqjWHBFdfxIU/iD_V.CWTliQc/v0/-1x-1.png) Relevant to your Interests Slicing Cash Flows for Better Ratings (https://www.bloomberg.com/opinion/articles/2023-01-18/slicing-cash-flows-for-better-ratings#xj4y7vzkg) Twitter Manager: Daily Revenue Has Dropped 40%, 500 Top Advertisers Have Left (https://www.theinformation.com/articles/twitter-manager-daily-revenue-has-dropped-40-500-top-advertisers-have-left?utm_source=newsletter&utm_medium=email&utm_campaign=newsletter_axioslogin&stream=top) $NOW CEO Bill McDermott on 2023 IT Spend (https://twitter.com/upholdings/status/1616103812372267008?s=46&t=WKIJg71CxhnkC9pPlPnHPg) Amazon to Wind Down Charity-Donation Program AmazonSmile (https://www.wsj.com/articles/amazon-to-wind-down-charity-donation-program-amazonsmile-11674144274) HPE and Oracle Solaris suit ends with hushed settlement (https://www.theregister.com/2023/01/19/hpe_and_oracle_lawsuit_ends/) Cloud growth slowing as customers get a dose of cost reality (https://www.theregister.com/2023/01/19/cloud_growth_slowdown_as_customers/) How We Learned to Be Lonely (https://www.theatlantic.com/family/archive/2023/01/loneliness-solitude-pandemic-habit/672631/) Kevin Kelly: The Case for Optimism (https://www.warpnews.org/premium-content/kevin-kelly-the-case-for-optimism/) Activist investor Elliott sets its sights on Salesforce (https://www.axios.com/2023/01/23/activist-elliott-salesforce-benioff) AWS expanding site of infamously flaky US-EAST-1 region (https://www.theregister.com/2023/01/23/aws_expanding_infamous_useast1_region/) Amazon-Stripe partnership accelerates ecommerce and streamlines online payments (https://stripe.com/en-es/newsroom/news/amazon-and-stripe) Undo — Chartr: Data Storytelling (https://read.chartr.co/newsletters/2023/1/23/undo) VMware 2023 Predictions: Platform Engineering Improves Developer Experience, Tech Layoffs Solve Enterprise Talent Gaps (https://vmblog.com/archive/2023/01/24/vmware-2023-predictions-platform-engineering-improves-developer-experience-tech-layoffs-solve-enterprise-talent-gaps.aspx) LastPass owner GoTo says hackers stole customers' backups (https://techcrunch.com/2023/01/24/goto-customer-backups-stolen-lastpass/) Subject: Focusing on our short- and long-term opportunity - The Official Microsoft Blog (https://blogs.microsoft.com/blog/2023/01/18/subject-focusing-on-our-short-and-long-term-opportunity/) Slack's second chance (https://open.substack.com/pub/mostlycloudy/p/slacks-second-chance?r=2d4o&utm_medium=ios&utm_campaign=post) Internal Developer Portal: What It Is and Why You Need One (https://thenewstack.io/internal-developer-portal-what-it-is-and-why-you-need-one/) Microsoft Outlook and Teams down for thousands around world (https://www.bbc.com/news/technology-64397643) U.S. Accuses Google of Abusing Monopoly in Ad Technology (https://www.nytimes.com/2023/01/24/technology/google-ads-lawsuit.html?smid=nytcore-ios-share&referringSource=articleShare) Microsoft set to face EU antitrust probe over video calls (https://www.politico.eu/article/microsoft-european-union-antitrust-video-calls-software-giant/?utm_source=newsletter&utm_medium=email&utm_campaign=newsletter_axioslogin&stream=top) Replacing a SQL analyst with 26 recursive GPT prompts | Patterns (https://www.patterns.app/blog/2023/01/18/crunchbot-sql-analyst-gpt/) Defying logic, Apple announces 2nd-gen HomePod for $299 (https://www.macworld.com/article/1476747/homepod-2nd-gen-audio-siri-feaures-sensors.html) ADS-B Exchange Sells Up, Contributors Unhappy (https://hackaday.com/2023/01/26/ads-b-exchange-sells-up-contributors-unhappy/) Confluent : Message to Confluent Employees from Jay Kreps - Form 8-K (https://www.marketscreener.com/quote/stock/CONFLUENT-INC-124047168/news/Confluent-Message-to-Confluent-Employees-from-Jay-Kreps-Form-8-K-42820152/) FBI shuts down ransomware gang that targeted schools and hospitals (https://www.washingtonpost.com/national-security/2023/01/26/hive-ransomware-fbi-doj) Reduce Kubernetes spend with these 10 Kubecost alternatives | TechTarget (https://www.techtarget.com/searchitoperations/tip/Reduce-Kubernetes-spend-with-these-10-Kubecost-alternatives) The ‘Enshittification' of TikTok (https://www.wired.com/story/tiktok-platforms-cory-doctorow/) Why Corporate America Still Runs on Ancient Software That Breaks - Odd Lots (https://omny.fm/shows/odd-lots/why-corporate-america-still-runs-on-ancient-softwa) Why are so many tech companies laying people off right now? (https://www.theverge.com/2023/1/26/23571659/tech-layoffs-facebook-google-amazon) Salesforce Announces Appointment of Three New Independent Directors (https://investor.salesforce.com/press-releases/press-release-details/2023/Salesforce-Announces-Appointment-of-Three-New-Independent-Directors/default.aspx?utm_source=newsletter&utm_medium=email&utm_campaign=newsletter_axioslogin&stream=top) 1Password announces multiple improvements coming soon to its iOS app (https://9to5mac.com/2023/01/30/1password-announces-multiple-improvements-coming-soon-to-its-ios-app/) Identity management platform Saviynt secures $205M in debt, appoints new CEO (https://techcrunch.com/2023/01/31/identity-management-platform-saviynt-secures-205m-in-debt-appoints-new-ceo/) Artifact (https://artifact.news/) GitHub says hackers cloned code-signing certificates in breached repository (https://arstechnica.com/information-technology/2023/01/github-says-hackers-cloned-code-signing-certificates-in-breached-repository/) Introducing Hermes, An Open Source Document Management System (https://www.hashicorp.com/blog/introducing-hermes-an-open-source-document-management-system) Introducing Helios, HashiCorp's New Design System (https://www.hashicorp.com/blog/introducing-helios-hashicorp-s-new-design-system) Kubernetes is great, but it's been a 7 year distraction (https://newsletter.cote.io/p/kubernetes-is-great-but-its-been?utm_source=post-email-title&publication_id=50&post_id=100430955&isFreemail=true&utm_medium=email) Former Ubiquiti dev pleads guilty to trying to extort his employer (https://www.bleepingcomputer.com/news/security/former-ubiquiti-dev-pleads-guilty-to-trying-to-extort-his-employer/) Charted: Hardest hit in tech layoffs (https://www.axios.com/newsletters/axios-login-040e9788-23b3-4353-912c-6c9750e3e82f.html?chunk=2&utm_term=emshare#story2) Silicon Valley needs to stop laying off workers and start firing CEOs (https://www.businessinsider.com/fire-blame-ceo-tech-employee-layoffs-google-facebook-salesforce-amazon-2023-2?r=US&IR=T) Visa vs. AMEX (https://twitter.com/anshgupta64/status/1619538351127937027) Musk's Twitter Has Just 180,000 U.S. Subscribers, Two Months After Launch (https://www.theinformation.com/articles/musks-twitter-has-just-180-000-u-s-subscribers-two-months-after-launch) Coté ponders IBM what-if in AI (https://newsletter.cote.io/p/catatonic-leadership?utm_source=substack&publication_id=50&post_id=97661373&utm_medium=email&utm_content=share&triggerShare=true&isFreemail=true) Appliance makers sad that 50% of customers won't connect smart appliances (https://arstechnica.com/gadgets/2023/01/half-of-smart-appliances-remain-disconnected-from-internet-makers-lament/) Broadcom's VMware battle plan is to challenge hyperscalers (https://www.theregister.com/2023/02/01/broadcom_vmware_update/) PagerDuty Layoffs Affect 7 Percent Of Workforce (https://www.crn.com/news/cloud/pagerduty-layoffs-affect-7-percent-of-workforce?utm_source=newsletter&utm_medium=email&utm_campaign=newsletter_axioslogin&stream=top) Meta Pressures Average-Rated Employees to Up Their Game (https://www.theinformation.com/articles/meta-pressures-average-rated-employees-to-up-their-game) Spotify to Shed 6% of Its Work Force in Latest Round of Tech Layoffs (https://www.nytimes.com/2023/01/23/business/spotify-layoffs.html) The Job Market for Remote Workers Is Shrinking (https://www.wsj.com/articles/the-job-market-for-remote-workers-is-shrinking-11674526943) Big Tech Is Really Bad at Firing People (https://www.wired.com/story/google-meta-big-tech-is-bad-at-firing/) Zoom layoffs impact 15% of staff (https://techcrunch.com/2023/02/07/zoom-layoffs-impact-15-of-staff/) The Newer Geography of Jobs (https://arpitrage.substack.com/p/the-newer-geography-of-jobs?utm_source=direct&utm_campaign=post&utm_medium=web) Nonsense Missing radioactive capsule found in Australia (https://www.bbc.com/news/world-australia-64481317) Boeing delivers its final 747 jet today, ending a run of more than 50 years (https://www.npr.org/2022/12/08/1141578966/boeing-747-last-jet) King Charles will not appear on new Australia $5 note (https://www.bbc.com/news/business-64493849) Donkey Kong cheating case rocked by photos of illicit joystick modification (https://arstechnica.com/gaming/2023/02/did-billy-mitchell-use-this-illicit-joystick-to-set-a-donkey-kong-high-score/) Sponsor The New Stack — Subscribe to The New Stack Makers Podcast (https://thenewstack.io/podcasts/). Conferences Southern California Linux Expo, (https://www.socallinuxexpo.org/scale/20x) Los Angeles, March 9-12, 2023 Matt (https://www.socallinuxexpo.org/scale/20x/presentations/kubernetes-cloud-cost-monitoring-opencost-optimization-strategies) & Cote (https://www.socallinuxexpo.org/scale/20x/presentations/lessons-learned-7-years-running-developer-platforms)! Use Discount Code: DEVOP And, get 50% with the code SPEAK. Coté and Matt arranging a live recording. PyTexas 2023, Austin, TX April 1 - 2, 2023 (https://www.pytexas.org) DevOpsDays Birmingham, AL 2023 (https://devopsdays.org/events/2023-birmingham-al/welcome/), April 20 - 21, 2023 DevOpsDays Austin 2023 (https://devopsdays.org/events/2023-austin/welcome/), May 4-5 SDT news & hype Join us in Slack (http://www.softwaredefinedtalk.com/slack). Get a SDT Sticker! Send your postal address to stickers@softwaredefinedtalk.com (mailto:stickers@softwaredefinedtalk.com) and we will send you free laptop stickers! Follow us on Twitch (https://www.twitch.tv/sdtpodcast), Twitter (https://twitter.com/softwaredeftalk), Instagram (https://www.instagram.com/softwaredefinedtalk/), Mastodon (https://hachyderm.io/@softwaredefinedtalk), LinkedIn (https://www.linkedin.com/company/software-defined-talk/) and YouTube (https://www.youtube.com/channel/UCi3OJPV6h9tp-hbsGBLGsDQ/featured). Use the code SDT to get $20 off Coté's book, Digital WTF (https://leanpub.com/digitalwtf/c/sdt), so $5 total. Become a sponsor of Software Defined Talk (https://www.softwaredefinedtalk.com/ads)! Recommendations Brandon: (https://www.homedepot.com/p/Husky-5-Tier-Industrial-Duty-Steel-Freestanding-Garage-Storage-Shelving-Unit-in-Black-90-in-W-x-90-in-H-x-24-in-D-N2W902490W5B/319132842)Hand Mirror (https://handmirror.app) Matt: StarFive VisionFiveV2 (https://www.kickstarter.com/projects/starfive/visionfive-2) RISC V has arrived! Photo Credits Header (https://unsplash.com/photos/dTgyj9okQ_w) CoverArt (https://labs.openai.com/s/1twM82RtWf5pjWk9fWJ7g0qS)
On this episode of Ruby for All, Julie tells us she's working on a new app and she's calling it “Today,” which is going to help her organize her day-to-day tasks. We're also continuing with our February series talking about different object types in Ruby and our favorite methods with them. Today, we're talking about the Ruby Hashes, such as merge, fetch, dig, .new, values, transform values, reject, key?, and compact. Hash is so important for Ruby developers, because the more you know, the better you can write. Julie tells us how she couldn't grasp the Hash object when she first was learning Ruby, and Andrew shares his journey of learning other programming languages before learning Ruby and how it helped him appreciate Ruby. After today, he's happy to know when to use dig now! Julie and Andrew hope this episode helps you like it's helped them! Download this episode now find out more! [00:01:13] Since Julie's been building a new app for herself to stay organized daily, she tells us about playing around with ChatGPT, and Andrew explains ChatGPT is trained better on source code and other things.[00:03:10] Andrew talks about GitHub's Copilot and what it does.[00:03:55] Our February series is continuing with talking about different object types in Ruby and we're starting with a Hash, which is a dictionary light collection of unique keys and their values. Also called Associative Arrays, they're similar to Array, but where an array uses integers its index, a hash allows you to use an object type. Julie wonders if the key can be any object.[00:10:29] Andrew goes into Hash merge, which returns a new Hash formed by merging each of the other hashes into a copy of self, and he explains why you would merge.[00:12:26] Andrew uses this next one constantly, Hash fetch, and this one returns the value for a given key if found. Julie seems to like this one, and if you're building a lot of components, you should check this out. [00:15:13] Julie brings up Hash dig, which extracts the nested values. We also learn Andrew doesn't use Dig a lot because he can never remember when he's supposed to use it! [00:16:45] The next one is Hash.new, which returns a new empty hash object. Julie and Andrew tell us more about this one. If anyone has a use case for Hash.new and passing in, please let us know. [00:20:20] Hash values at is the next one, and this returns a new array containing the values for the given keys. Andrew thinks he could use this more than he does. [00:22:34] Julie explains Hash transform values, which returns a new hash object, and each entry has a key from self, a value provided by the block. How can you use this?[00:24:28] Next one is Hash reject, which returns a new hash object whose entries are all of those from self for which the block returns false or nil. Julie asks Andrew if we're rejecting the keys, values, or either.[00:26:14] We made it to the last two for today! Andrew and Julie discuss Hash key? and Hash compact. Julie likes compact because it's nice to be able to remove anything with no values.Panelists:Andrew MasonJulie J.Sponsors:HoneybadgerAvoLinks:Andrew Mason TwitterAndrew Mason WebsiteJulie J. TwitterJulie J. WebsiteGitHub CopilotHash mergeHash fetchHash digHash newHash values atHash transform valuesHash rejectHash key?Hash compact
We debate if GitHub's Copilot enables automated code laundering after a developer makes a startling discovery. Then we dispense some seriously old-school wisdom.
We debate if GitHub's Copilot enables automated code laundering after a developer makes a startling discovery. Then we dispense some seriously old-school wisdom.
We debate if GitHub's Copilot enables automated code laundering after a developer makes a startling discovery. Then we dispense some seriously old-school wisdom.
Paige is the director of Machine learning and machine learning operations, aka MLOps, at GitHub. Before that, she was a principal product manager at Microsoft and also worked on DeepMind and Google Brain. Paige has had over a decade of experience with machine learning and data science as a practitioner. Check out my new project awesomecodereview.com workshop!Links:Retweet and like to win access to GitHub Codespace, including CopilotTiferet's work, using machine learning to detect security vulnerabilities in source code.VS Code's Python extension and Jupyter extension.Copilot website (make sure to download the Copilot Nightly extension, to get the latest features!)Applied Machine Learning Scientist – Microsoft job opening here!Github – Use it for your work and tell us how we can improve! Shownotes:[00:01 – 10:53] Opening Segment Check out my latest project: Awesome Code Reviews!Visit https://www.awesomecodereviews.com/ to find articles about code reviews, best practices, code review checklist, news about the latest research and code reviews, and workshops and courses about this topicGet a chance to try out GitHub Codespaces and other extensions like GitHub Copilot!Like and retweet today's episode, and for an additional chance to win, you can also leave a comment about what kind of data science work you're currently doing or what you like to doThe responsibilities of a director of machine learning and machine learning operationsDemystifying the process of reviewing complicated data science code[10:54 – 20:54] A Helpful Collaborator As You Write CodesHow GitHub Copilot becomes your partner and collaborator when writing codesIt is an extension for VS Code and generates source codeLearning from test cases and how code reviewers can perform a better jobAcquiring accurate code snippets through understanding the specific requirementsThe strive for consistent performance across every single kind of language[20:55 – 35:25] Expanding Feature Capabilities for Optimal FunctionalityThe beginning of deep learning techniques applicationThis targets detecting security vulnerabilities through code reviewsIt also provides recommendations for extracting functions from blocks of codeEncouraging consistency in names and stylesTake note: Microsoft is hiring!Striking the balance with deep understanding of data-driven and quantitative approachesData can tell us about users who are already using our tools, but not about those who haven't tried them yetThe key is to remain curious and constantly seek to better understand users[35:26 – 37:52] Closing SegmentPaige's recommendation for youTry out GitHub for your machine learning projects!Final wordsResources Mentioned: Retweet and Linke this tweet to win access to GitHub codespaces and copilotAwesome Code Reviews - Visit for helpful information and courses for you to try!Applied Machine Learning Scientist - Microsoft job opening here!Github - Use it for your work and tell us how we can improve!Tiferet's work, using machine learning to detect security vulnerabilities in source code.VS Code's Python extension and Jupyter extension.Copilot website (make sure to download the Copilot Nightly extension, to get the latest features!Let's Connect! You can connect with me, Dr. McKayla on Instagram, Twitter and Youtube to look into engineering software, and learn from experienced developers and thought leaders from around the world about how they develop software!LEAVE A REVIEW + help someone who wants to know more about the engineering software world. Your ratings and reviews help get the podcast in front of new listeners.
Collaborate on code, a 3D print stl-file or CAD drawing or on a document. Github is at the root of all of this. Now the worlds largest collaboration tool and full of features you might not have heard of. Together with Jeff Beehler from Github we talk you trough the basis of Github, find out its latest and greatest features but also how inner source can act as a quality gatekeeper for the outside world. More information on Github is found on https://github.com. You can build your own Octocat here https://myoctocat.com. A live editor for your mermaid diagrams as used in Github's Copilot: https://mermaid-js.github.io/mermaid-live-editor/. Collaboration is key and you can learn all about it in this Technology Labs conversation. We always start with a couple of tech updates. Here are the links to what we discussed: Include diagrams in your Markdown files with Mermaid | The GitHub Blog https://github.blog/2022-02-14-include-diagrams-markdown-files-mermaid/ Ford makes it easier to 3D-print your own accessories for the Maverick https://www.theverge.com/2022/2/16/22936380/ford-maverick-cupholders-3d-print-accessories-cad-fits SpaceX lost 40 satelites because of electro-magnetic storm https://www.space.com/spacex-starlink-satellites-lost-geomagnetic-storm
Alexey Palazhchenko joins Natalie to discuss the implications of GitHub's Copilot on code generation. Go's design lends itself nicely to computer generated authoring: thanks to go fmt, there's already only one Go style. This means AI-generated code will be consistent and seamless. Its focus on simplicity & readability make it tailor made for this new approach to software creation. Where might this take us?
Alexey Palazhchenko joins Natalie to discuss the implications of GitHub's Copilot on code generation. Go's design lends itself nicely to computer generated authoring: thanks to go fmt, there's already only one Go style. This means AI-generated code will be consistent and seamless. Its focus on simplicity & readability make it tailor made for this new approach to software creation. Where might this take us?
Josh and Kurt talk about GitHub Copilot. What can we learn from a report claiming 40% of code generated by Copilot has security vulnerabilities? Is this the future or just some sort of strange new thing that will be gone as fast as it came? Show Notes GitHub Copilot Copilot research paper
The biggest news this week (and will likely trump any sort of news for the next couple of weeks in the Microsoft space) is that Azure has a vulnerability dubbed “ChaosDB” that exposed its customers keys to the world, leaving every single CosmosDB customer's database data exposed for the taking. There's a technical deep-dive into this vulnerability as well. I hope the Azure team is wearing their brown pants.This is as bad as it gets. Good news though! They gave out a bounty of $40,000 to the finder of this vulnerability. Which values this vulnerability as akin to a Tesla Model 3 — and not even a fully decked out one.Apply rounded corners in desktop apps for Windows 11. In some cases, rounded corners will be applied to your applications automatically, in others, here's what you can do to make them rounded. As Apple intended.Razer Bug lets you become a Windows 10 admin by plugging in a mouse. This is a pretty easy exploit to… well.. exploit, so if you're using Razer mouses in a corporate context, you may want to rethink that decision.The real names of features in Visual Studio. It's a bit inside baseball, but still a wonderful walkthrough.David Fowler writes to tell us that New .NET 6 APIS [are] driven by the developer community. In this blog post, David details new APIs available in .NET 6, and highlights the fact that well, they were authored by members of the community. I'm a fan of Parallel.ForEachAsync, as that seems rather useful for my needs.This is your warning: Get out of the Dev Channel for Windows 11 unless you want to experience some turbelance. If you want stability, use the beta channel or get out of the insider program entirely. If you want to see new builds of Windows 11 that may have the stability of Windows Vista, stay in the Dev channel.Nicole Miller-Abuhakmeh is the new Community Manager for the .NET Foundation. This is a wonderful choice for CM, congrats Nicole and the .NET foundation.Looks like there's another tactic available to exploit Proxyshell vulnerabilities. A few weeks ago, a researcher showed off an exploit of Microsoft Exchange Server dubbed ‘ProxyShell' and it seems like the gift that keeps on giving to attackers. Bottom line: keep your Exchange servers up to date.In .NET 6, FirstOrDefault(), LastOrDefault() and SingleOrDefault() now let's you specify a default value. Sadly it has to be a compile-time constant so you can't have something like new Random().Next() available.Microsoft Ignite is November 2-4, 2021 and is virtual again this year because people can't bother to vaccinate.Github's Copilot can get you in trouble 40% of the time and if you're the type to use AI to write code, maybe you deserve to have problems.Using SignalR in your Blazor applications This is an nice pairing of technologies. Like Chardonnay and Brie, or Hotdog and Chili. Ketchup is forbidden, Mustard is recommended, however.And I say this with a twing of irony, but that's it for what happened Last Week in .NET.
Caleb is the maintainer of several popular open source projects and frameworks including Alpinejs and Livewire, and is also an avid user of GitHub's CoPilot. Also, he's living the dream - writing open source full time. We talk about declarative, imperative, moving from SPAs and APIs back to simpler server-oriented design, design architecture, code style and linting, and how Caleb's achieved the near-impossible task of monetizing open source in a way people love. Panel Aimee KnightAJ O'Neal Guest Caleb Porzio Sponsors DigitalOceanRaygun | Click here to get started on your free 14-day trialDev Influencers Accelerator Links Twitter: Caleb Porzio ( @calebporzio ) Picks Aimee- GitHub | RobinCsl/awesome-js-tooling-not-in-jsAJ- How to Rip Blu-Rays with a LibreDriveAJ- My Top Anime PicksCaleb- 3Blue1Brown - YouTube Contact Aimee: Aimee Knight – Software Architect, and International Keynote SpeakerGitHub: Aimee Knight ( AimeeKnight )Twitter: Aimee Knight ( @Aimee_Knight )LinkedIn: Aimee K.aimeemarieknight | InstagramAimee Knight | Facebook Contact AJ: AJ ONealCoolAJ86 on GITBeyond Code BootcampBeyond Code Bootcamp | GitHubFollow Beyond Code Bootcamp | FacebookTwitter: Beyond Code Bootcamp ( @_beyondcode ) Special Guest: Caleb Porzio .
Caleb is the maintainer of several popular open source projects and frameworks including Alpinejs and Livewire, and is also an avid user of GitHub's CoPilot. Also, he's living the dream - writing open source full time. We talk about declarative, imperative, moving from SPAs and APIs back to simpler server-oriented design, design architecture, code style and linting, and how Caleb's achieved the near-impossible task of monetizing open source in a way people love. Panel Aimee KnightAJ O'Neal Guest Caleb Porzio Sponsors DigitalOceanRaygun | Click here to get started on your free 14-day trialDev Influencers Accelerator Links Twitter: Caleb Porzio ( @calebporzio ) Picks Aimee- GitHub | RobinCsl/awesome-js-tooling-not-in-jsAJ- How to Rip Blu-Rays with a LibreDriveAJ- My Top Anime PicksCaleb- 3Blue1Brown - YouTube Contact Aimee: Aimee Knight – Software Architect, and International Keynote SpeakerGitHub: Aimee Knight ( AimeeKnight )Twitter: Aimee Knight ( @Aimee_Knight )LinkedIn: Aimee K.aimeemarieknight | InstagramAimee Knight | Facebook Contact AJ: AJ ONealCoolAJ86 on GITBeyond Code BootcampBeyond Code Bootcamp | GitHubFollow Beyond Code Bootcamp | FacebookTwitter: Beyond Code Bootcamp ( @_beyondcode ) Special Guest: Caleb Porzio .
Our latest episode with a summary and discussion of last week's big AI news! On this episode, more controllable GAN, more controllable language models, AI for wildfires and reading lips, being critical of human oversight of AI, surveillance by AI in China, and some fun AI weirdness. This week: Google Survey Explores Methods for Making DL Models ‘Smaller, Faster, and Better' Machine learning models that detect COVID-19 on chest X-rays are not suitable for clinical use GitHub and OpenAI launch a new AI tool that generates its own code What's Going on With Amazon's “High-Tech” Warehouse Robots? How Twitter hired tech's biggest critics to build ethical AI LinkedIn's job-matching AI was biased. The company's solution? More AI. GAN Theft Auto is a snippet of GTA 5 made by AI Find this and more in our text version of this news roundup: https://lastweekin.ai/p/122 Music: Deliberate Thought, Inspired by Kevin MacLeod (incompetech.com)