After attending a few different software conferences, I’ve begun to appreciate the skill involved in giving a good public presentation, and just how rare it is to encounter. I’m not claiming to be an expert, the extent of my formal public speaking “training” consists of a half-semester course in college, and I wouldn’t rate my ability as anything beyond “competent enough to present something to the office.” That said, I think we’ve all seen enough bad presentations to have noticed a few things they all have in common. My goal here is to offer some things that I’ve noticed from good presentations in the hopes of encouraging people to start emulating some better habits.
There’s a line that I wrote in my recent post on social networks that’s been sticking around my head ever since I typed it: “Venmo is a much more creative social application than Mastodon is.” That line got me thinking about just what makes a social application…”social”, and I’m starting to think that a lot of what we term “social” applications aren’t really “social,” but something else entirely.
I’ve been thinking about just what it would take to create the type of media operation I described in “The future of journalism won’t look anything like today’s journalism” – specifically what pieces are still needed to get this type of operation off the ground, what pieces already exist, etc. As I think more on it, the more it seems that most of the individual components, with the exception of delivering content in a format other than the article, already exist. The biggest impediment to adopting these tools is likely attitude, namely organizations being so used and attached to how they’ve been doing things that they’re not thinking about approaching this from a completely blank slate.
Following what’s probably a very predictable course of operational maturity, my team at work started out manually uploading jars onto VMs, maybe with a few simple services, scripts, and setup tricks to keep the manual steps for deploying software to a minimum. As the amount of code we wrote and maintained grew, we started to focus on automating more and more of our code deployments, with an emphasis both on rolling deployments (so there’s no visible downtime to users), and on increasing reliability by reducing the number of steps we could possibly mis-type or forget. Since our code was heavily deployed on AWS anyways, OpsWorks seemed like the perfect setup for us. So far, while it isn’t actually perfect, it’s been a good tool for getting our app deployments and instance configuration more automated, which is what we really needed.
So a while back I had a fondness for ranting about social networks on this blog. Lately, I’ve had the urge to revisit that trend and spend some more time ranting about social networks on this blog. Why? Well, I’ve been using Mastodon some recently, and that’s got me thinking about my whole concept of what social networks (and the apps built on top of them) should be. And while I’m not going to try to claim that a relatively minor (compared to the other social networking apps out there) app is the future of social networking, looking past the app to some of the design decisions show a lot of things that make me happy about the trend in how some of these newer apps are getting built.
Automatic software testing is an interesting thing. Books have been written on the topic, libraries have been built to try to bring the practice to traditionally hard-to-automate sections of testing, and in some places, it’s so important it’s the first code that gets written. There’s a lot of different philosophies about how it should work, but in my experience, it’s probably an area where the less religious you are about it, the better it’s likely to work for you.
I’ve noticed several new blog posts on journalism and its future over the last couple of months. Couple this with listening to This Week In Google regularly along with following Jeff Jarvis’s blog, and the question of what journalism is going to evolve into (and the journalism that makes it to several years from now will have changed dramatically from how they operate today) has been on my mind of late. The more I consider it, the less I think journalism’s ultimate destination will be recognizable as what we have available today.
Not too long ago, my friend Warren wrote an article proposing some campaign finance reforms. This got me thinking about whether or not there’s a reliable to way of dealing with monetary donations to political candidates that both encourages integrity once a candidate reaches office, and can stand up to legal challenges. Personally, I think there is, but to do so we’re going to have to approach the situation from a different angle.
For a while, I worked for a manager that wore a lot of different hats on our team, including that of “product manager.” Sadly, that meant he was often really busy and thus hard to pin down to get a product answer from. He knew that this was an issue, and wanted to get a full-time product manager for our team. At the time, I was thrilled about the idea. Fast forward a few months, and a little reorganization later, and our team now has a dedicated product manager, and I’m regretting my earlier enthusiasm. There seems to be a disconnect between product people and developers, so for any product managers reading this, here’s a few tips to help improve your interactions with developers.
By now, a lot of us have read Susan Fowler’s tale of her year at Uber. It’s certainly not the first time Uber’s been accused of misconduct, and to be honest, the only thing that was surprising in Fowler’s post was just how institutionalized this behavior was, and just how hard so many different people at the company work to defend it. Fowler’s post describes a company that is being run wrong in just about every way imaginable, and it seems Uber’s most noteworthy success is not having been sued out of existence already.