Media as Table Stakes with Peter Cooper
Play • 48 min
About Peter Cooper
Founder and editor-in-chief of Cooper Press. Programmer, indexer of all the programming links, former O'Reilly conference chair, and general nerd.

Links Referenced

Announcer: Hello, and welcome to Screaming in the Cloud with your host, Cloud Economist 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: Gravitational is now Teleport because when way more people have heard of your product than your company, maybe that’s a sign it’s a time to change your branding. Teleport enables engineers to quickly access any computing resource, anywhere on the planet. You know, like VPNs were supposed to do before we all started working from home, and the VPNs melted like glaciers. Teleport provides a unified access plane for developers and security professionals seeking to simplify secure access to servers, applications, and data across all of your environments without the bottleneck and management overhead of traditional VPNs. This feels to me like it’s a lot like the early days of HashiCorp’s Terraform. My gut tells me this is the sort of thing that’s going to transform how people access their cloud services and environments. To learn more, visit

Corey: This episode is sponsored by a personal favorite: Retool. Retool allows you to build fully functional tools for your business in hours, not days or weeks. No front end frameworks to figure out or access controls to manage, just ship the tools that will move your business forward fast. Okay, let's talk about what this really is. It's Visual Basic for interfaces. Say I needed a tool to, I don't know, assemble a whole bunch of links into a weekly sarcastic newsletter that I send to everyone. I can drag various components onto a canvas: buttons, checkboxes, tables, etc. Then I can wire all of those things up to queries with all kinds of different parameters: post, get, put, delete, et cetera. It all connects to virtually every database natively, or you can do what I did, and build a whole crap ton of Lambda functions, shove them behind some API’s gateway and use that instead. It speaks MySQL, Postgres, Dynamo—not Route 53 in a notable oversight, but nothing's perfect. Any given component then lets me tell it which query to run when I invoke it. Then it lets me wire up all of those disparate APIs into sensible interfaces. And I don't know front end. That's the most important part here: Retool is transformational for those of us who aren't front end types. It unlocks a capability I didn't have until I found this product. I honestly haven't been this enthusiastic about a tool for a long time. Sure they're sponsoring this, but I'm also a customer and a super happy one at that. Learn more and try it for free at That's, and tell them Corey sent you because they are about to be hearing way more from me.

Corey: Welcome to Screaming in the Cloud. I'm Corey Quinn. I'm joined this week by someone slightly offbeat from our normal guest list: Peter Cooper, editor in chief of Cooperpress. Peter, welcome to the show.

Peter: How's it going? ‘offbeat’ is probably one of the best things I've been called. So, thanks for that.

Corey: Exactly. We do our best here. So, normally, I talk to folks who are building things out of technology, for lack of a better term. Maybe it's JavaScript, maybe its cloud provider stuff. Regardless, it's terrible because it all involves computers. You have built, I guess for lack of a better term, something of a media empire, a subject near and dear to my heart. What do you do?

Peter: I guess I’ve kind of just become a meta-programmer in a way. And I don't mean that in the technical form of ‘metaprogramming,’ but I develop things to share them with other developers, essentially. So, I run a media company that publishes primarily email newsletters, so things like JavaScript Weekly, and Ruby Weekly. And you just take a technology and you put ‘Weekly’ on the end—other than AWS, obviously because that's your gig—you put ‘Weekly’ on the end, and I tend to come up at some point or another. So, we publish these for software developers. But yeah. It's kind of a meta-process. I've been the developer, I've done all of that stuff, and I continue to do that stuff for my company. But yeah, I've gone very meta.

Corey: You've been doing this longer than I have—I hope—because realistically, I'm looking at your subscriber counts versus mine, like JavaScript Weekly, according to your website, has 140,000 subscribers. At the time I'm recording this, I’ve got roughly 22,000. So, yeah, you definitely have been building a larger audience than I have, but I suspect you've been doing it longer. I got my start on this in mid-2017.

Peter: Yeah, and actually, your numbers are out of date, probably because you looked on the wrong place because we just don't maintain our website whatsoever. So—

Corey: Yes.

Peter: —on the actual website, it will say the actual live number, which I think is something like 172, somewhere in that, kind of, ballpark now. So, yeah.

Corey: And because of production delays, I'm sure that number will be out of date as well.

Peter: Yeah, things aren't growing as much as they used to. I can tell you that much. But yeah. [laugh].

Corey: You hit a certain point where, one, population limits become a concern. And, two, it's always been challenging for me to figure out what to do about growth on the newsletter. When I wind up talking to people about where they've come from when they sign up for this, it’s, “Oh, my friend told me about it.” That's great. I've mentioned this on stage in front of thousands of people during talks I've given and gotten a couple hundred signups as a boost, but it's very hard to get people in large numbers to do these things that suddenly cause massive inflections. I look at the growth over the past three years, and everything's been a pretty steady curve.

Peter: Yeah, it's definitely changed for us over the years. When we began, we could look at it and say, all right, we're growing X percent per quarter or whatever, but after a certain period of time, after a few years, it began growing in a much more linear way. And so, when you're growing linearly, so let's say you're adding 1000 subscribers a month, just to pick an arbitrary number, but you're losing, you're getting the churn of say, I don't know, 1 percent per month, I don't even—I—that's a good number or not. 

But let's say you're losing 1 percent per month, well, eventually your list will get to the size where 1 percent per month is equal to that 1000 people that you've added. So you eventually, with any list, if you're growing in a linear way, you eventually reach this plateau and you don't see a lot of growth at that point. And we've actually reached that point on one of our publications. So, it's something that we knew was going to happen, but yeah, as I say we did start ten years ago so it's going to happen at some point or another with certain technologies.

Corey: On some level, that also becomes a non-issue. It feels like, sure, I sell sponsorships, obviously, in the things that I do, but it's not directly tied to number of people reading it. That serves as a baseline for what you wind up fixing it to, but if we were to magically I don't know, multiply the number of readers or listeners that I have by 100, I'm not going to be able to multiply what I'm charging for ads by 100 because there's maybe three companies in this entire space that could conceivably pay that. And I generally spend most of my time making fun of two of them. So, at some point, you wind up with a growth stops mattering to some extent.

Peter: To some extent, yeah. I think, if you had an email newsletter, for example, that was for billionaires only, and you had, say, 50 people on that list, you're going to be getting some serious sponsorship opportunities on that list just by virtue of the fact of the people that are on there. And you can scale that down to other things. So, if you had a list that was all CTOs, you had, like, the top, I don't know, let's say 200 CTOs in the world all on this one list, that would be super valuable, and that’d be making tons more money than either of us are, or would ever dream to do. So, it's not actually about the size of a list, it's about the quality to a certain extent. 

So, that's where I see—your list—so let's say I've got JavaScript Weekly with 172,000, or whatever, that's a very—there’s lots of weird disparate groups within that. You can't just say that all people that are working with Node or they're all working with jQuery, or they're all doing enterprise-level development because they're not, whereas at least with your list about the whole AWS thing is that you pretty much know they're probably going to be using AWS or they used AWS in some way or another, and that is a very commercial thing to use, and so they're not afraid of spending money, which obviously, is your whole shtick, you want to spend less money, but then, of course, that means they're spending money, so they're not scared to do that. Whereas my audience, you don't know if they want to spend money or not. So—

Corey: Oh, yeah.

Peter: —there is a difference in value between the groups.

Corey: You look at the typical sponsor for a lot of what I do, they're monitoring, observability companies. These are folks that are trying to sell things to an audience where the long-term value of a given customer is astronomical, so if one lead converts and becomes a customer, then it pays for an entire year's worth of sponsoring my nonsense, and then some. So, the ROI is ridiculously high. But if I were to sit here and look at it through the optics of just viewing it as raw numbers of who listens, or who subscribes, the sponsorship prices are obscene. And it's easy to look at it from a place of who in the world would ever pay this? Well, people who have that problem: people who are looking to get in front of a technically sophisticated audience who generally block ads and are somewhat skeptical. It works. It's the strangest thing. I mean, I thought when I first started that, oh, no one would ever click on an ad in something like this, and go ahead and then buy something from it. I am provably wrong on that.

Peter: Yeah, I mean, we walk a real tightrope with this, actually, in that, one of my things that I had always from the beginning of running the company is that I wasn't actually setting out to sell advertising; I was actually setting out to sell my own courses. So, that's why I started the email newsletter because I was running a Ruby course each month that I would sell tickets to and do, like, a virtual online thing—which now everyone's doing, but ten years ago, this was reasonably new—and I was selling that each month making about out, I don't know, $10,000 or whatever for the course, and then I would just keep promoting it on the newsletter and fill it up. But eventually, I got bored of doing that and I began to accept some of these inquiries for sponsorship and put them on. And I always wanted to make sure that I didn't price it in such a way that it was prohibitive for people that sell things that aren’t, they can sell one unit and that's tens of thousands of dollars of worth to that company. I also want to be able to sell sponsorships to companies that might sell things that are much lower, kind of, dollar value. 

And so, one of our first sponsors actually was a site that sold a template for Rails apps. I can't remember exactly what it was called, but it was, like, a Rails template thing, anyway, and they sold tons of copies of this after one sponsorship of our newsletter and they didn't pay a lot. At the time, it was a few hundred dollars or something, but they sold thousands of dollars of this thing. And I thought, I always want to have that experience where just a single one- or two-person band can come to me and say, “We want to run something; we don’t want to spend more than $1,000, $2,000 maybe.” Depends where you going out their risk profile and everything, but we still want to always be able to cater to that type of customer. 

And we've actually managed to keep there, and that means we've left a lot of money on the table. And yeah, so that's always a balance I'm trying to find I do think of it as a bit like being on a tightrope. I could fall one way, and just say, let's take the big, let’s say, IBM Cloud money because they've come up a few times in conversations I've had about being very prolific with their spending, let's say. But then, the same time, I don't want to just hand it all over to a company that can just buy all our inventory. I want to have those one-man-band, one-woman-band type things in the mix as well. I just think it makes it nicer for the readers, and they actually enjoy reading that type of stuff.

Corey: I would agree with you. I mean, I came at this from a very different perspective. I had to be talked into starting a newsletter at all. But when I first started my consultancy, it was I had to keep up with everything Amazon announced. That got me 80 percent of the way towards having the stuff I needed. 

And it was, “All right. I'll send this out and see if anyone else finds it interesting.” It turns out that that's the thing people tend to know me for the best. And that became sort of the stepping stone that led to this ridiculous thing. I couldn't do it again if my life depended on it. 

What I do see is that a lot of newsletters have started not as a labor of love, but as a, “Oh, I'm going to go ahead and make money out of this thing,” and people are coming at it from day one. First, they're probably making better choices about a monetized newsletter than I am. I mean, the way that I've done this, there's no way I could ever have someone else step in and write it for a protracted period of time just because it's so tied to my personality. Whereas other folks, if you're doing just the facts style, well, that's super easy. Just find someone who can opine intelligently about a topic, which is way easier.

Peter: Yeah. I mean, it probably sounds cliché. But for me, publishing has always been in my blood to some extent or another. I began the school newspaper when I was at my early schooling. And I published a fanzine on Usenet in the ’90s, about programming and doing stuff like that, so doing that as a teenager. 

And I didn't actually see it as being unusual to build up an audience and have something to say to that audience, so I was very much into blogging and really heavily into that in its earliest days, and tumblelogging, and LiveJournal, and all that type of thing. And, yeah, I kind of would do this anyway, so that's actually what's happened with all the different things I've done. I've been doing the publishing anyway, and then some sort of money-making activity has come along on the back end and appeared in front of me. And it's like, “Oh, actually, I can turn my little fun hobby into something that makes money.” 

And that's the thing that actually, kind of, keeps me on the straight and narrow because I guess if that didn't turn up after a few years, I'd be on to the next thing I'd be doing TikTok or something by now. And yeah, that type of thing. If I was a billionaire or something, I'd just be on a different social network each week just playing around with it, see how it works. But yeah, the money kind of keeps me doing the email. Like I might have not still been doing it now if I didn't need to, but it keeps me honest. I like to say that about money is it's not always a bad thing, it's something that can actually keep you on the straight and narrow and going in a certain direction, which I think is good.

Corey: I find that doing it for money definitely helps me power through slumps, where it's, I don't want to really write a newsletter this weekend, I'd like to let it slip but—

Peter: Exactly.

Corey: —on the other side of it, it's well what I'd also like to do? That's right, continue to wind up having food come in. So, I'm going to go ahead and actually power through writing it, and get it out there, and not have to issue a whole bunch of refunds to people. And that, in turn, is great. Most weeks, it's not like that. It's much better from my perspective, to be able to, I guess, have that forcing function that allows me to get it out when I need to. But most of the time, it is a labor of love. I still enjoy it because I get to see how far I can go with these things.

Peter: Exactly. And I guess you're also consulting at the same time, so—

Corey: Oh, very much so.

Peter: —and you’re doing the podcast as well, so you've actually got your finger in several different pies, I guess.

Corey: Well, having staff absolutely helps. That's a lesson I learned from you about a year or two ago when we last spoke in person. Yeah, back when that was a thing people did without it being a deadly risk. And yeah, it turns out that now I have two podcasts going on, the AWS Morning Brief. And, of course, the Screaming in the Cloud that we are currently recording, but the Last Week in AWS newsletter is also going out multiple times a week now. 

It's a question of all right, how do I expand this into something even more than it already is? And it's always been a bit of a tension because we are a consulting company first and foremost. We're not a media company, but the media is our marketing, which in turn means that because it is profitable on media, that means that our cost of customer acquisition on the consulting side becomes a negative number. It's marketing we don't pay for; in fact, we get paid for doing it. It's a weird world.

Peter: Yeah. I mean, you're doing DevRel, almost, for what it is that you normally provide in your day-to-day work.

Corey: I would consider it DevRes done right.

Peter: Yeah. I've seen, actually, a few people saying recently that this type of DevRel stuff, this type of content marketing, whatever, it's basically table stakes now. If you're a technology company, this is going to be happening at some point or another. Like, maybe 20 years ago, you would have been doing SEO all the time, and focusing on that, and getting your keywords right and all that type of thing. Now, it’s, you know, this whole new world is what people are producing media and talking a lot, and talking to each other, and sharing stuff and this is, kind of, just table stakes, now.

Corey: Yeah. But what's weird is the number of people I talked to who are convinced that they have nothing to say, they could not start a newsletter themselves and get any traction, maybe you're right, but I would put myself right in that category, too, when I got started. Try it and see. Now, there are things I would have done radically differently for going down this path myself, but now that I know what I know, I would do it very differently, but I don't know that there's so much that I would have changed that it would have resulted in a materially different outcome.

Peter: Yeah, it's a different time now, though I would say, is one thing compared with ten years ago is that ten years ago, I could just turn around and say, “Oh, I'm doing a weekly newsletter about JavaScript.” And I suddenly got a lot of interest, a lot of people on Twitter were—very prolific people in the JavaScript world at that time were tweeting and saying, “Oh, it's great. Someone's finally doing this, blah, blah, blah.” Well, now if someone turns around and says, “Oh, I'm launching a newsletter about something,” like, their friends, and maybe some of their industry contacts will be like, “Oh, that's cool you're doing that,” and sign up. 

But I don't think you get quite the same reaction that we did, just because it was novel at the time, and no one was putting their efforts into that direction. So, I would kind of struggle, I think, to do what we're doing now if I was launching it right now, just because there's so much—not necessarily competition for the exact thing that we do—because there's a lot more competition for your attention nowadays. I think everyone's figured out that that is part of the game now. It's about keeping people's attention, and fostering attention, and coming up with ways to get people's attention, and people were a little bit more naive about that type of thing ten years ago, especially in the developer space.

Corey: I absolutely agree with you. Part of the thing that made the whole thing work for me has been that it's easy enough to—for me, at least—to get out there and grab people's attention because I say the quiet part out loud. The fact that I structured my consultancy so I have no vendor relationships with any vendor in the space—including AWS—means that I don't have to worry about censoring what I say out of fear of offending anyone in that sense—in a corporate sense. Obviously, punch up, never down. Offending people is a whole separate argument. 

And because I have staff that handles the sales for sponsorships and the editorial pipeline stuff, I don't see who's sponsoring something until after I have already written it so I don't have to worry about it flavoring the content, which means that I get to keep my voice. No one has ever complained, as a sponsor, about why did you say something that wasn't very nice about us when we're sponsoring you? “Because I've been very upfront about this, the entire time,” was always my planned response, but I never had to give it. No one cares. It becomes a very, I guess, straightforward and easy way of maintaining my authenticity, to the point where I could theoretically shut down consulting, decide this whole boondoggle was a mistake, and just do media going forward. What scares me going down that path, though, is how do you avoid losing the technical experience that gives you authenticity and just becoming a talking head?

Peter: Yes, exactly. I've seen a lot of people have this problem, actually, especially in the screencasting space in, particularly, the Ruby world. So, I used to know most of the people in the Ruby world, it's definitely not true now. I've fallen out—not fallen out. That makes it sound bad, but, kind of, I’m just not in that game all the time anymore. 

But some of the people I did know that were doing weekly screencasts, and they turned that into their business where it's like, “You're going to pay me $9 a month, and you'll get these screencasts or whatever,” a lot of them just burned out or got to a point where it was like, they were saying, “I’m not doing this on a day-to-day basis for customers and for people that perhaps I don't necessarily like and have to come up with solutions that are imperfect, and I'm not learning these hard lessons anymore because I'm working this idealized, kind of, ‘here's the perfect way to do X, Y, and Z.’” and they weren't getting that real-life experience that they could put into the video. So, once they've done a certain number, they just kind of burned out. Like, “I’ve told you everything that I need to know; I've told you all my wisdom; this is the end.” 

And yeah, that is something that could happen, and that's something that I'm really quite aware of in my own work is that I'm constantly researching things and trying things out for what I'm doing, but I don't necessarily have the day-to-day experience of running a giant Postgres cluster in production, let's say, or how to migrate stuff from AWS to Azure or vice versa. That’s stuff that I know of, and that I talk to people about, but it's not something I've actually done for myself so this goes back to my point about being very meta in what I do, is… I’m meta in that sense, as well as that I pick up stories and I learn stuff almost like a reporter essentially, but I've not had that lived experience.

Corey: Yeah. I wouldn't expect that it's something that's a particularly common occurrence, but the fear of that's always been there. But what sort of reassures me on some level is that although I have no plans to stop consulting anytime soon, for obvious reasons, no one is able to use everything in AWS to its fullest potential, full stop. We've launched this past the point where I can talk convincingly about AWS services that don't exist and not get called out on it by AWS employees, because no one has it all in their head. They never do. No one does. So, the idea of explaining these things to people is absolutely valuable to a whole bunch of folks who—that is, I think, the reason that people keep coming back for my nonsense even on weeks where I'm not particularly brilliant or scintillating.

Peter: Yeah, I think there's a lot of parallels, actually, with this type of work, with things like anthropology and archaeology. And I know it sounds a little bit sort of highfalutin, as it were, but there is a lot involved in analyzing a space and being aware of the different things that are happening with it, but also the history that led up to where things are now. So, one area that perhaps you have a positive point on all of what we've just said is that you will have seen the growth of some of these services and why certain services just kind of fell by the wayside. So, like SimpleDB, for example, you got that story in your head, which allows you to make those jokes about a service like SimpleDB, that people coming into AWS now, well they go and look at the list of services, they see SimpleDB and think, oh, this looks cool. It's got a simple API. 

And I've done this as well because I wrote an article about three months ago, “Using SimpleDB with Ruby,” even though you probably shouldn't be using SimpleDB. It kind of works, and it does its job, and I can see some use cases for it. But you have that story, and I guess that's also what I have is when I'm looking back at JavaScript, I was posting on the JavaScript Usenet group in 1996, like back when it was beginning, and so even though I've not been programming in JavaScript every single week since then—I kind of do it on and off—I still got that story, and I know where JavaScript was at that point, and how things have built up, and I can tell that story in an authentic way. And I must admit, a lot of software developers don't necessarily do that. I really respect what full-time software developers do, but they don't always have that background story, unless they're, like, 50, 60 years old, and they've really just been doing it the whole time.

Corey: You’ve got an incredibly complex architecture, which means monitoring it takes a dozen different tools. We all know the pain and New Relic wants to change that. They’ve designed everything you need in one platform, with pricing that’s simple and straightforward; no more counting hosts. You can get one user and 100 gigabytes per month, totally free. Check it out at Observability made simple.

Corey: Right. And I guess that's part of the authenticity, is people who have experience and know the space, who can speak authoritatively about some areas, but then it turns into—like, as technology evolves, as it always does, those stories start to lose some element of relevance. And it'll happen to me someday, the same way it happens to other folks. Right now I'm able to keep up, but at some point, if JavaScript continues to eat the world, well, I've never been great with it, and I don't anticipate that changing anytime soon. At some point, the industry is going to pivot in a way that I can't follow directly. And then a question of “what do I do?” becomes an open question. That said, we don't see a whole lot of contractions in our space.

Peter: No.

Corey: It is continually expanding, and there's always going to be niches, finding those edge cases between other things are really where I've always been able to make success happen, like blending tech and finance on the consulting side, and blending my ongoing love affair with the sound of my own voice and making fun of things means that this podcast and the newsletter tend to work out. But it's definitely an experience. When you started, were you planning on doing this as a business, or was this something that you just did on a lark to see what would happen?

Peter: I meandered through pretty much from the very start. So, I mean, if you just rewind all the way back to when I was 16, I actually finished school when I was 16 because that's how it worked here at the time: you went to, kind of like, an intermediate college at 16 until you were 18, and if you wanted to go to university and whatever, but I didn't want to do that. I wanted to get out and work straight away. So, I left at 16 and got a job with what was then called a new media company. So, they were building websites and so on, back in the ’90s and I just went from there. 

So, I have no serious educational qualifications to be fair. And yeah, everything I've done since then has been almost like a side project that's turned into something that's successful. So, I went into doing blogging, and I went into doing freelance writing about stuff and all this type of thing. But I basically just done something for fun, and then someone's like, “Oh, actually we want this. Would you like to do it?” 

And this happened when I was blogging. I had Apress, the publishing company, came to me and said, “Oh, do you want to write a Ruby book?” And I wrote a Ruby book. So, I launched a blog to promote the Ruby book, and then people wanted to sponsor the blog because it did really well, and then the blog turned into an email newsletter, and then people wanting to sponsor the email newsletter. So, then that's turned into this company. And—

Corey: Yeah. “Can we give you money to talk about it?”

Peter: Yes.

Corey: “Can you give me money? Of course, you can give me money. How much money are we talking about?” And that's how it started.

Peter: Yeah, it's just like messing around, really. And that comes from a place of privilege, to be fair. And I've had the opportunities to do some of this stuff, and I've had the time on my hands to just play around with things and people approach me in that way. But yeah, at the same time, there's not a lot of design to it.

Corey: Yeah. And at some point, I keep iterating forward, and learning things that I would do differently, and talking to other folks. What always surprises me is when I talk to other DevRel types—if you'll forgive the term—in the space, there's always a bit of a hand-waving dismissiveness about what I've been doing about how, “Oh, yeah, your results aren't typical, and it won't work for other people.” Well, why the hell not? I have magic on this side. I just started off and stuck with it long enough that it turned into something. But I was running this thing at a loss for six months.

Peter: Yeah, I would actually love for you to speak to him, and I don't know if you've done this yet, not in any of the episodes that I've listened to, at least, but actually speak to what you might call a proper analyst, like one of these very, very high paid people that works at, like, Gartner or whatever. And I don't really understand their market, but they seem to have, kind of, taken some of the elements of the types of things that we do—which is building stories up about technologies, and how technology is joined together, and which one you should use and which ones you shouldn’t—and they've turned it into a billion-dollar business. Now, I look at them perhaps the way that some developers might look at us about like, “Oh, what do they know?” And, you know, how do they make this into a business? Well, I look at what I call profit analysts in that way. I don't understand how their business works whatsoever, and I've asked some, and they’ll, “Oh yeah, like, big companies give us loads of money to tell us—we can tell them what we think.” And I'm like, “Well, that sounds like a really cool job. I want in on that.” So, [laugh] yeah, I'd love to know more about that stuff.

Corey: Yeah, I think that there's a lot of secret sauce that goes into that, and part of the challenge at the big analyst firms have is, on some level, what they do is great. It provides validation around directions big companies are going to go, where mistakes to back out of cost billions. The other side of that, though, is I've never yet met an analyst firm that approaches things the way that I do, which is, “Okay, I listen to the vendors who are building things. Cool. I talk to the customers who are using it. Great.” 

And that's what analyst firms all do, but then I take it one step further and I build something with it myself, once it hits a certain point of interest for me, and everyone sort of stares at me like I'm a lunatic whenever I say that. But yeah, someone actually said to me once at an analyst event was, “If you can write code, why don't you go do that, instead of this whole media analyst thing? It pays better.” First, are you sure about that? Secondly, how can you effectively work in advising people technology, if you don't know the reality of how it works? I've never fully grasped that.

Peter: You know what? You've just hit on a really big point there that, actually, I think affects so many things that happen in the broader developer space, but, like, where you're not just a software developer, but all the things outside of that—like being a DevRel, and being in marketing, and analysts, and so on—which is that being a software developer right now does tend to pay, or more obviously has a bigger reward, if you're willing to put in the effort, than doing all of these ancillary things, and that actually takes away a lot of opportunity for those other areas to get some really top talent. So, in all the areas that I'm in, it's actually really hard for me to find curators, or anyone that can, kind of like, replace me within the business because anyone who is, let's say, a particularly good JavaScript developer, they're going to be going to Amazon or wherever it is, and earning $150,000 a year plus being a JavaScript developer. Or they're going to go and create a startup of their own because they want that autonomy. They've got all of these different options; they're not going to go and work for a publishing company that maybe had to pay them towards that amount of money, but not quite get there, if you see what I mean. 

And that seems to be an issue in so many areas of the industry. Like, why it's not always the best developers, or the best people writing the books, or publishing the books, or writing for the magazines, or all that type of thing, or even producing the videos. I know so many great YouTube-based developers who produce really good videos, but there's probably other developers that are earning two, three hundred thousand dollars a year that could probably do it a little bit better, and probably have more war stories, and types of things like that. So, yeah, I think that's really touched on a point that a lot of companies run into is that there is a lot of talent out there, but it does kind of gravitate towards the purely software development roles, or the management roles, or the FANG roles, as you might call them.

Corey: Oh, yeah. Part of the trick, too, that I think people lose sight of is that because it would take them forever to sit and write the newsletter. Because I know; I've been there. When I started this, it took me a full day's worth of work to sit there, and read everything, and understand it, and copy and paste into Google Docs, and write the snark and the rest. Now it takes me 20 to 30 minutes every week because I built a bunch of automated systems around this. 

And sure, what I built is horrible, but it both gives me exposure to the technologies I'm talking about, and makes it harder for me to screw things up, like forgetting to put the sponsor link in, as I did a few times in the early days, or not having a linter so the actual link didn't work, and validating that the actual destination was sending correct responses. And there was a lot of painful stuff, but now it's really getting there to a point where I'm pretty satisfied with how the automation works. Now, the next trick is, of course, getting it to be something that someone else could manipulate without me.

Peter: Oh, absolutely. And I guess you've also touched on the idea of programming as literacy, which I think is another important thing. It's probably a little bit off-topic for this conversation, but I think is very, very important, in that if everyone learns to program to some extent to improve their jobs, then you're going to see massive change in the world. And we're doing on a much smaller scale. We’re making tools because we know how to build software that actually increase the efficiency of our businesses, but just imagine if almost anyone could do that, imagine if the person down at the local hardware store could—oh, they've not got an app to track certain things are in their business, they can just put something together, and they can do that, then yeah, I think the world would be a very different place.

Corey: I think we're going to get there. I think that is the inevitable direction that we're heading in.

Peter: Yeah, the whole no-code thing that's going on at the moment. That’s—

Corey: Yeah, if I want to build something today, and I have a business idea, and I'm fresh out of school, or coming in from working at a hardware store, for example. Great. Today, I have to go to a boot camp and learn how a bunch of this stuff works. What if I didn't? What if it was, I basically put my idea together in some relatively accessible way, and that's enough to get off the ground and get started and start serving customers? 

Sure, you're right. I'm never going to be able to scale that thing to a hyperscale, works at massive web-scale properties, but sometime between my ridiculous idea and becoming a Fortune 500 component, then there's going to be some evolution in there. And most things never need the scale like that.

Peter: No, absolutely. Totally agree.

Corey: So, I can't shake the feeling that there's a lot of opportunity that is being missed right now.

Peter: Yeah. And I think once we figure out a way forward as a society, culture, or even just as an industry to do that, we're going to see some massive productivity gains. But it's always hard to see; you might be able to see this point somewhere off in the future, it's really hard to figure out how can we reach that point. Totally obviously once you do that type of thing, you obviously end up reaching a different point than you expected to reach. That just seems to be how our industry goes. [laugh].

Corey: Yeah. That's the hardest part is getting started. When I started the newsletter, for example, I didn't know any of this stuff worked; I was mostly making it up as I went along. And, all right, I'm reading a lot of AWS releases. 

A lot of these are just nonsense. No one actually cares that a service that no one ever heard of is in a region that you're not sure it exists or not. So, how do you skim out the stuff that's actually worth talking about, and ignore the rest? And again, that's opinionated and biased, and it's my own position and no one else's, and that's okay. 

But there's an element of, just start writing and get started. You learn from your audience, you get less feedback on any of these things than I would have expected. So, you can still to this day, hit reply to my newsletter, and it winds up in my inbox, but almost no one does, which is why that works.

Peter: Yeah, that's true for us as well, actually. You can do that on any of ours. And I'm sending almost 500,000 emails a week, and the amount of replies we get is actually quite minimal. I do get a fair few that I have to work through sort of each weekend because I haven’t got the time during the week. But it's mostly people submitting stuff and saying, oh check this out, blah, blah, blah, and actually come in they're very valuable, and I always reply to people, and let people know what we're doing and everything. But yeah, if you think like, 500,000 people, it's not like I'm getting 1000 replies each week. I wouldn't be able to cope with that. [laugh].

Corey: Yeah, that becomes a problem.

Peter: Yeah.

Corey: So, as far as what you would do differently, if you were starting over, what tips do you have for someone who would be starting out today. You have an idea to start a newsletter. Where should they begin?

Peter: I think there's some different ways that I would go about it now than the way I went about it. So, the way I went about it was very matter of fact, factual. And I guess that's what you did to an extent in the early days as well, but I think something that you've done that we've not managed to do is you've managed to put some character into it over time. So, you've got your mascot, you've got the way that you speak to people, and the way that you make jokes, and you have this level of irreverence. I think that is actually much more important if you're launching something now than if you were doing it ten years ago, where I could get away with that dry, kind of like, “Here's the news. Bye.” Type thing. Nowadays, you do need to put a little bit of yourself in, and it doesn't have to necessarily be a character that everyone likes. It actually helps you out if there's a certain portion of an audience that is going to be like—

Corey: Oh, I get hate mail from time to time—

Peter: Yeah, exactly.

Corey: —and I’m perfectly okay with that. Great, it's not for everyone and that's fine.

Peter: Yeah, I think that's actually beneficial nowadays because generally if you have people that really dislike your shtick, let's say, then you're generally going to have some hardcore fans as well. And building up that level of hardcore fan is actually really important now compared to how it was ten years ago where I could just build a generic audience up. And that's where I've actually got some problems is that I've got such a weird, wide range of people—which is good because it's kind of diverse, in a way—but they don't all necessarily share my personal sense of humor or sensibility, or even accept some of my views about things. So, for example, when we did some issues where we mentioned the Black Lives Matter thing, for example, and we went into depth about why that was important and stuff like that, we got some really nasty emails coming back saying, “Oh, this is a political thing, blah, blah, blah.” And, okay, people can have their opinions about things. 

But I would have appreciated the fact that if you've been subscribed to something that I've been writing for several years, that you could at least accept the fact that I might have an opinion that you disagree with, and that's kind of, okay. I can deal with my readers having opinions that I don't like as long as they're not ramming them down my throat. And it's a shame that we couldn't get to that point. But the thing about being really upfront with your character and saying, “Look, this is who I am, this is how I'm going to talk. This is what I believe in. Off we go. Let's publish something.” 

It’s that the audience kind of self-selects to a certain extent. You're not going to get some really dry business type who can't handle your sense of humor subscribing, once they’ve seen what you have to say, and they've seen the mascot and all that type of thing. So, get that character in, and tell stories. You know, that's something that, again, we have really failed at over the years. We've gone very dry, we don't necessarily tell the story. And one of the things that you've done is you've brought on that extra podcast—I must admit, I can't keep up the names of all these different shows—but you've got the podcast—

Corey: [laugh]. On some level, I've made a mistake with that. I really should have everything unified around a central brand, and I didn't because I wanted to go in different directions. If I call this the Last Week in AWS podcast, I never would be able to talk to people who were not themselves focused on AWS. I've had a bunch of GCP employees and Azure folks on the show. That would never have happened if this were AWS branded.

Peter: Yes. So, stories is, you know, just really important nowadays. And I know a lot of people that read different newsletters just to see the opening paragraph, almost, each week from the person that writes the newsletter, even if they're not interested in the topic. It's like, “Oh, I just want to know what so-and-so is going to just start out with and say this week,” or this month, or whatever, even if I don't read the rest of the thing. Whereas we go very dry. We're, like, “This is the biggest headline. Bam, you should know this.” 

But I think having some of those stories like you tell, you tell stories about your own business, and you do this on Twitter, you do it in email, you do it in podcast, and doing that is very important. So, yeah, I'm just going to pick two things I would do now very differently, it's, get that character in and be yourself to a certain extent, or… maybe in the TV and media sense of just, like, be a magnified, caricatured version of yourself. Like, they put makeup on people just to go on TV to make them look more like themselves, kind of just do that with how you write, and how you speak, and so on. And yeah, do the same with storytelling. Even if you don't have the most exciting stories, people just find stories very compelling nonetheless. They don't have to be super exciting, they just have to be something that's relevant to the person that's enjoying the story. So, yeah, stories and character: just follow those old, kind of, trusted things. Don't necessarily just go in completely dry, factual, like we've tended to do.

Corey: Yeah. I think there's an absolute definite problem here that people lose sight of the fact that it's all storytelling. I think cloud marketing across the board misses this, where you have to paint a picture for people, you have to be engaging, you have to be fun because let's not kid ourselves, this stuff is pretty freakin’ dry otherwise.

Peter: I guess you would probably say the same thing about if we were advising people on what their Twitter strategy is because I imagine most people listening to this podcast have a Twitter account, or have a LinkedIn account, or have something of that nature. And I have had a Twitter account, pretty much since Twitter began. And so, I've actually kept mine reasonably dry over time—again, this is a problem that I seem to have—but yours has more character, and a lot of the people that I follow on Twitter, nowadays, they have strong characters and they're not afraid to let it loose on various topics of the day with hot takes, and so on. And that seems to be where a lot of the growth is coming now. 

It's people that can tell a story and relate their lives and their experiences to other people in a—it doesn't have to be entertaining way, but it has to be a way that makes you turn around and take notice. And you've done that really well, and I'm seeing a lot of people doing that very well. It's something that I think needs to be done. So, it's not just on a medium like an email newsletter, or a blog,…
Azure DevOps Podcast
Azure DevOps Podcast
Jeffrey Palermo
Jérôme Laban on Multi-Platform DevOps - Episode 123
This week, Jeffrey is joined by Jérôme Laban, CTO of the open-source Uno Platform, and a 4x recipient of the Microsoft MVP award. The Uno Platform is a framework that aims to improve the development cycle of cross-platform apps using Windows, iOS, Android, and WebAssembly using Mono and Xamarin. It is also Open Source (Apache 2.0) and available on GitHub. In this conversation, Jérôme shares their DevOps success story and all of the thought that went into creating a complete DevOps environment for a platform that targets a multitude of computing environments. He also shares details of its creation, what developers should know about it, gives advice, and shares invaluable resources. Topics of Discussion: [:38] Be sure to visit AzureDevOps.Show for past episodes and show notes. [1:02] About The Azure DevOps Podcast and Jeffrey’s offer to speak at virtual user groups. [1:10] Clear Measure is hiring! Be sure to check out the link in the show notes. [1:33] About today’s guest, Jérôme Laban! [1:49] Jeffrey welcomes Jérôme to the podcast. [1:58] About Jérôme’s career background and what has led him to become the CTO of the Uno Platform. [4:03] Regarding the Uno Platform, what should people be looking for now vs. what they should be looking for in the future for cross-platform and mobile development? [8:00] Jérôme walks listeners through the creation of the Uno Platform. [13:44] Jérôme elaborates on the design of the Uno Platform and the branching strategy that they put in place at the front-end. [15:08] The Uno Platform has enabled automated builds upon pull request creation. How many tests are they able to fit into that and what duration does that pull request build take on the feature branch? [16:28] Is there a short cycle build for smaller issues such as a spelling error? [17:41] Jérôme explains what happens in the environment after the pull request is accepted and merges into master. [20:25] A word from Azure DevOps Podcast’s sponsor: Clear Measure. [20:56] Do you fully deploy to target platforms on the pull request build process? [22:08] Jérôme discusses Calculator.Platform.Uno. [24:11] Jérôme received the codebase for the calculator from the Windows team. Did he also receive the test cases for it as well? And did those port over? [25:28] With Uno, will WinForms applications and WPF desktop applications just be able to be “slid” into WebAssembly and URL launched? [27:09] With Uno, how many different types of test frameworks are there and what are they? [30:24] Is the state-of-the-art for web still Selenium? What about mobile? [31:05] Does the Xamarin UI test cover Android and iOS? [31:13] What would you use for UI testing for WebAssembly? [32:38] If people are interested in this cross-platform UI testing do they need to use Uno Platform? [33:33] For developers that are developing new applications now, what technologies and frameworks should they be investing in and which should they be letting go as we look ahead into the future? [36:13] Jeffrey thanks Jérôme for joining the podcast. [36:45] Where to get in touch with Jérôme and learn more about the Uno Platform. Mentioned in this Episode: Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! — Click here to download the .NET DevOps for Azure ebook! Jeffrey Palermo’s Youtube Jeffrey Palermo’s Twitter — Follow to stay informed about future events! The Azure DevOps Podcast’s Twitter: @AzureDevOpsShow Uno Platform Uno Platform Discord Community @UnoPlatform on Twitter Jérôme Laban’s Twitter @jlaban Jérôme Laban’s Blog Blazor .NET 5.0 NuGet Xamarin Calculator.Platform.Uno Selenium GitVersion Mergify Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.
38 min
Software Defined Talk
Software Defined Talk
Software Defined Talk LLC
Episode 281: That’s a thing, I don’t need to read about it
This week we discuss VMware CEO Pat Gelsinger jumping to Intel and what is going on with DevSecOps. Plus, lots advice on picking movies both you and your partner will enjoy. Rundown VMware CEO → Intel What’s the latest Solarwinds hack news? Coté is figuring out “DevSecOps” - or is it “DevOpsSec”? Relevant to your interests M&A Red Hat to Acquire Kubernetes-Native Security Leader StackRox ( F5 to acquire @Volterra_ ( VMware/Intel VMware has the strategy and culture to thrive after CEO Pat Gelsinger's exit to Intel ( VMware Names Zane Rowe As Interim CEO ( Prodigal Son Gelsinger Returns As Intel CEO ( Bitcoin and Blockchain Is blockchain coming to your bank? ( 85% of Italian Banks Are Exchanging Interbank Transfer Data on Corda - CoinDesk ( Lost Passwords Lock Millionaires Out of Their Bitcoin Fortunes ( Don’t Forget Your Bitcoins ( RISC-V BeagleBoard BeagleV ( Raspberry PI Why We Love the Raspberry Pi ( Buy a Raspberry Pi Zero W – Raspberry Pi ( Solarwinds Details on SolarWinds Hack ( SolarWinds hires former Trump cyber security chief Chris Krebs ( NYT JetBrains story, I'm calling it - the story was irresponsibly released. ( Deplatforming Parler accuses Amazon of breaking antitrust law in suspending hosting services. ( Parler Finds Refuge With the Far-Right's Favorite Webhost ( Parler loses data ( Parler’s amateur coding could come back to haunt Capitol Hill rioters ( The balkanization of the cloud is bad for everyone ( Decentralization Is A Necessity Now ( It happened. Twitter shut down @realDonaldTrump for good ( State of the World 2021 ( Goodreads plans to retire API access, disables existing API keys | Joe's website ( ‘Your Cock Is Mine Now:’ Hacker Locks Internet-Connected Chastity Cage, Demands Ransom ( Video games have replaced music as the most important aspect of youth culture | Sean Monahan ( Intel CEO Bob Swan to be replaced with VMWare's Pat Gelsinger ( WhatsApp gives users an ultimatum: Share data with Facebook or stop using the app ( First Oracle said it powered Zoom. Then AWS claimed it. Now Zoom says it uses co-located kit ( Poland plans to make censoring of social media accounts illegal ( Dropbox to cut workforce by 11% ( Nonsense I'm glad you have passed the certification! I just don't want to see it. ( Coté in TikTok ( Sponsors strongDM — Manage and audit remote access to infrastructure. Start your free 14-day trial today at: ( Now Hiring Jordi wants you to work at Tricentis ( Michael wants to be a Solution Architect at Cloudbees ( More info in SDT Slack ( see channel #jobs Conferences Call for Papers ( ends on Jan. 31st for DevOpsDay Texas on March 2nd. ( SDT news & hype Join us in Slack ( Send your postal address to ( and we will send you free laptop stickers! Follow us on Twitch (, Twitter (, Instagram ( and LinkedIn ( Brandon built the Quick Concall iPhone App ( and he wants you to buy it for $0.99. Use the code SDT to get $20 off Coté’s book, ( Digital WTF (, so $5 total. Become a sponsor of Software Defined Talk (! Recommendations Matt: Apple TV’s Ted Lasso ( Brandon: Possessor ( Coté: Descript (, so far. Bear app ( Don’t spike your mind during family time with inserting work. Photo Credit ( Photo Credit (
1 hr 2 min
Streaming Audio: A Confluent podcast about Apache Kafka
Streaming Audio: A Confluent podcast about Apache Kafka
Confluent, original creators of Apache Kafka®
Change Data Capture and Kafka Connect on Microsoft Azure ft. Abhishek Gupta
What’s it like being a Microsoft Azure Cloud advocate working with Apache Kafka® and change data capture (CDC) solutions? Abhishek Gupta would know! At Microsoft, Abhishek focuses his time on Kafka, Databases, Kubernetes, and open source projects. His experience in a wide variety of roles ranging from engineering, consulting, and product management for developer-focused products has positioned him well for developer advocacy, where he is now. Switching gears, Abhishek proceeds to break down the concept of CDC starting off with some of the core concepts such as "commit logs." Abhishek then explains how CDC can turn data around when you compare it to the traditional way of querying the database to access data—you don't call the database; it calls you. He then goes on to discuss Debezium, which is an open source change data capture solution for Kafka. He also covers some of the Azure connectors on Confluent, Azure Data Explorer, and use cases powered by the Azure Data Explorer Sink Connector for Kafka. EPISODE LINKS * Streaming Data from Confluent Cloud into Azure Data Explorer * Integrate Apache Kafka with Azure Data Explorer * Change Data Capture with Debezium ft. Gunnar Morling * Tales from the Frontline of Apache Kafka DevOps ft. Jason Bell * MySQL CDC Source (Debezium) Connector for Confluent Cloud * MySQL, Cassandra, BigQuery, and Streaming Analytics with Joy Gao * Join the Confluent Community Slack * Learn more with Kafka tutorials, resources, and guides at Confluent Developer * Live demo: Kafka streaming in 10 minutes on Confluent Cloud * Use *60PDCAST* to get an additional $60 of free Confluent Cloud usage (details)
43 min
The Cloudcast
The Cloudcast
Cloudcast Media
An Event-Driven Apps Look Ahead for 2021
James Urquhart (@jamesurquhart, Global Field CTO @VMware, O’Reilly Author) talks about event-driven application architectures, how it's changing real-time business models, and technology stack driven the evolution.  *SHOW: *483 *SHOW SPONSOR LINKS:* * BMC Wants to Know if your business is on its A-Game * BMC Autonomous Digital Enterprise * Datadog Security Monitoring Homepage - Modern Monitoring and Analytics * Try Datadog yourself by starting a free, 14-day trial today. Listeners of this podcast will also receive a free Datadog T-shirt. * Okta - You should not be building your own Auth * Learn how Okta helped Cengage improve student success rates during COVID. *CLOUD NEWS OF THE WEEK *- *CHECK OUT OUR NEW PODCAST - **"CLOUDCAST BASICS"* *SHOW NOTES:* * Flow Architectures - The Future of Event Streaming & Event-Driven Integration * The Cloudcast Eps.43 - James Urquhart * The Cloudcast Eps.344 - Bringing AI to the Edge ( * The Cloudcast Eps.334 - The Future of Edge Computing (Derek Collison, Synadia) *Topic 1 *- Welcome back to the show. We’ve known you for quite a while, going back to working together on very early Cloud stuff. You’ve always enjoyed being focused on complex, distributed systems. Tell us what you’re focused on these days.  *Topic 2 *- Let’s talk about this concept of “event-driven” and flow. Where did it come from, what does it do, why is it valuable to application designers? *  * *Topic 2a *- What is a “flow” and how is it related to event-driven? *Topic 3 *- Events are data. We’ve had relational databases for data, and then we had NoSQL or eventually-consistent databases for data. Are events a new type of data, or a new way to deal with data in a different context?  (channels, replays, etc.) *Topic 4 *- Can we talk through an example of an event-driven application, or an event-driven integration between multiple organizations? How is it new/different? What unique capabilities does it bring now?  (Kafka, IoT, API Gateways, etc.) *Topic 5 *- Cloud made IT self-service. Serverless made Ops become on-demand. If I’m a business leader, what does event-driven give us?*  * *Topic 6 *- Where are we in the maturity of event-driven architectures? What might be some of the next stages coming in 2021 or 2022?   *FEEDBACK?* * Email: show at thecloudcast dot net * Twitter: @thecloudcastnet
43 min
Python Bytes
Python Bytes
Michael Kennedy and Brian Okken
#216 Container: Sort thyself!
Sponsored by Datadog: Special guest: Jousef Murad, Engineered Mind podcast (audio, video) Watch on YouTube Brian #1: pip search. Just don’t. * pip search [query] is supposed to “Search for PyPI packages whose name or summary contains [query]” * The search feature looks like it’s going to be removed and the PyPI api for it removed. * Alternative, and better approach, just manually look at and search for stuff. * Right now it does this: $ pip search pytest ERROR: Exception: Traceback (most recent call last): ... [longish traceback ommited] --- xmlrpc.client.Fault: [Fault -32500: "RuntimeError: PyPI's XMLRPC API has been temporarily disabled due to unmanageable load and will be deprecated in the near future. See for more information."] * The Python Infrastructure status page says, as of Jan 12: “Update - The XMLRPC Search endpoint remains disabled due to ongoing request volume. As of this update, there has been no reduction in inbound traffic to the endpoint from abusive IPs and we are unable to re-enable the endpoint, as it would immediately cause PyPI service to degrade again.” * This started becoming a problem in mid December. * The endpoint was just never architected to handle the scale it’s getting now. * There’s a current issue “Remove the pip search command”, open on pip. * The commend thread is locked now, but you can read some of the history. * I personally don’t understand the need to hammer search with a CI system or other. * Probably should be using a local cache or local pypi mirror for an active/aggressive CI system. * If you have scripts or jobs that run pip search , it ain’t gonna work, so probably best to remove that. Michael #2: QPython - Scripting for Android with Python * Python REPL on Android - interesting * Scripting Android tasks with Python - more interesting * Free, open source app that is ad supported. * Some people have commented that their phone is their only “computer” * With SL4A features, you can use Python programming to control Android work: * Android Apps API, such as: Application, Activity, Intent & startActivity, SendBroadcast, PackageVersion, System, Toast, Notify, Settings, Preferences, GUI * Android Resources Manager, such as: Contact, Location, Phone, Sms, ToneGenerator, WakeLock, WifiLock, Clipboard, NetworkStatus, MediaPlayer * Third App Integrations, such as: Barcode, Browser, SpeechRecongition, SendEmail, TextToSpeech * Hardwared Manager: Carmer, Sensor, Ringer & Media Volume, Screen Brightness, Battery, Bluetooth, SignalStrength, WebCam, Vibrate, NFC, USB Jousef #3: Thesis: Deep Learning assistant for designers/engineers * PyTorch (3D) / TensorFlow * The thesis: what is it actually about & goal of the thesis * Libraries mainly used: numpy, pandas * (Reinforcement Learning & GANs) Brian #4: sortedcontainers * Thanks to Fanchen Bao for the topic suggestion. * Pure-Python, as fast as C-extensions, sorted collections library. >>> from sortedcontainers import SortedList >>> sl = SortedList(['e', 'a', 'c', 'd', 'b']) >>> sl SortedList(['a', 'b', 'c', 'd', 'e']) >>> sl *= 10_000_000 >>> sl.count('c') 10000000 >>> sl[-3:] ['e', 'e', 'e'] >>> from sortedcontainers import SortedDict >>> sd = SortedDict({'c': 3, 'a': 1, 'b': 2}) >>> sd SortedDict({'a': 1, 'b': 2, 'c': 3}) >>> sd.popitem(index=-1) ('c', 3) >>> from sortedcontainers import SortedSet >>> ss = SortedSet('abracadabra') >>> ss SortedSet(['a', 'b', 'c', 'd', 'r']) >>> ss.bisect_left('c') 2 * “All of the operations shown above run in faster than linear time.” * Types: * SortedList * SortedKeyList (like SortedList, but you pass in a key function, similar to key in Pythons sorted function.) * SortedDict * SortedSet * Great documentation and tons of performance metrics in the docs. Michael #5: Łukasz Langa Typed Twitter Thread * Let’s riff on typing for a bit. * Here is my philosophy: If I have to type more than three characters to complete a symbol in my editor, something is wrong. * e.g. to go from email_service. → email_service.send_account_email() I should only need to type .sae then tab/enter. These types of things are vastly better because of type hints. * Python type hints are more malleable than even TypeScript. * Lukasz is addressing this comment: Controversial take: Types in a Python code-base are a net negative. * Points * put enough annotations and tooling connects the dots, making plenty of errors evident. * The most common to me at least is when a None creeps in. * The second bug often caught by type checkers is on the "return" boundary: one of your code paths forgets a return. * squiggly lines in your editor * Microsoft is now developing powerful type checking and code completion for Python in VSCode. This effort employs a member of the Python Steering Council, and possibly also the creator of Python himself soon. You think they would settle for "illusion of productivity"? Jousef #6: * Point Cloud operations → open3d Extras: Michael: * via Francisco Giordano Silva: On Brian's ref to using numpy all for array element-wise comparison, also please check out numpy.allclose method. Allows you to compare two arrays based on a given tolerance. Brian: * Just this: 2021 is exhausting so far. * Test & Code has shifted to every other week to allow time for other projects I’m working on. * This is probably a short term change. But I don’t know for how long. It’s definitely not going away though. Just slowing down a bit. Jousef: Engineered Mind podcast
36 min
AWS TechChat
AWS TechChat
Shane Baldacchino
Episode 79 - re:Invent 2020 - App Dev, Containers & Database Wrap
In this episode of AWS TechChat we continue with part two of our four part re:Invent 2020 series with this episode covering all Application Development, Containers, and Database announcements. For our developer community, we talked about: * Using CodeGuru’s new Security detectors to help you find and remediate security issues in your code * Python support for CodeGuru’s in preview * We shared another new service, DevOps Guru in preview, for measuring and improving an application’s operational performance * Lambda now supports up to 10 GB of memory and 6 vCPU cores and a billing granularity reduction down to 1ms * Amazon API Gateway now supports integration with Step Functions StartSyncExecution for HTTP APIs * Appflow simplifies cloud app integrations for connect customers with Customer Profiles * Similarly, Appflow can provide similar app integrations with those 3rd party apps to HoneyCode. * For those Amplify users, deploy Fargate containers through the Amplify CLI and you get a new AdminUI to boot that deploys all the underlying bits for you. * AWS Proton to bridge the gap between platform and development teams In containers we kicked it off with EKS. * First, cluster add-ons managed through the EKS console, CLI, or API. * Run EKS on premises with EKS Distribution * EKS on Fargate now has built in logging with Fluent Bit under the hood * You can now see all your Kubernetes resources in the EKS console without needing extra tools * Public registries for your container images with ECR public and the ECR public gallery * Use your existing containers as a lambda package format * ECS Deployment Circuit Breaker is in preview to stop deployments from getting worse and auto-rollback In database land we covered * Bablefish, not the mythological creature, but a translation layer between Aurora PostgresSQL and Microsoft SQL. * v2 of Aurora Serverless has arrived, considerably faster and scales in a fraction of second, with scaling so fast it is perfect for those event driven applications. * Data Exchange adds revision access rules for governing access * RDS Service Delivery Partners for when you want someone to build, deploy, and manage your RDS deployments * RDS Cross-Region backups comes to RDS for Oracle * Share data across Redshift clusters with data sharing in preview and pull data from partners directly via the RedShift Console. * RedShift Federated query comes to RDS for MySQL and Aurora MySQL * Redshift Automatic Table Optimization to keep your data warehouse running in tip top shape automatically. * Move RedShift clusters easily across Availability Zones. * JSON supports in preview for RedShift * Finally, AQUA comes to RedShift in Preview as a caching layer to speed up queries. Stay tuned as we cover all aspects of re:invent 2020 in our coming multi-part re:Invent update
52 min
More episodes
Clear search
Close search
Google apps
Main menu