Category: Editorial

  • Are Windows Containers a Good Choice?

    I like containers. I think they’re the future of the SQL Server data platform. I also think this is likely on Linux, with Linux versions of SQL Server. You might disagree, and that’s fine, but that is where I see this moving over time.

    Why? I ran across a great post from Joey D’Antoni of DCAC that outlines one reason: Kubernetes. This is the way we will start to orchestrate SQL Server instances in the future, whether disparate or scaled-out, and this is really Linux technology. If you go Linux, with Kubernetes and containers, you’ll be able to easily move your systems as needed from your data center to developer machines (perhaps with SQL Provision from Redgate), to the Azure cloud, or over to the AWS cloud, a partner Kubernetes install, etc. It’s flexible.

    Windows Kubernetes will be less flexible. Inherently because less people use it, while more and more people are using, supporting and deploying Kubernetes on Linux.

    This won’t happen soon, as I think it’s 5-10 years before a good majority of SQL Server moves to 2019+ and containers become more mainstream for app and data work, but this shift is starting.

    This also doesn’t mean Windows goes away. I really like Windows. I’m comfortable with it, and I plan on having a Windows laptop for the forseeable future. What’s more, I can run Linux containers on Windows, thanks to the WSL. Even Microsoft sees containers with Linux as a future on Windows.

    Like Joey, I don’t want to dismiss or denigrate any work for Windows containers. I think it’s a good idea, and certainly some people will want to run their Windows apps in Windows containers. I just don’t think it’s the future for the data platform.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • The AI Manager

    One of the advantages of a computer is that it will handle repetitive tasks very well. That’s one reason the DevOps world pushes for automation of simple tasks, like compiling code or copying files between machines. We know the software will perform the task the same way every time, giving us a reliable, repeatable process. Even in many AI systems, the structure of the program ensures some level of reliability, though the actual actions or results may vary dramatically based on the inputs.

    For some tasks, this is great. If we have a system watching for a change in code to rebuild the application, that’s certainly a job for a computer rather than a human. If a sensor needs to be checked and an action taken if it exceeds a value, certainly the watching ought to be done by software, though the actions may or may not be something we want a system to do without human input.

    In some sense, I likewise think that the use of AI to manage workers is a bad idea. This was something I read about in Manna, which seemed exxagerated when I first perused the story. Now it seems that some of this is coming true in this story about workers in a call center being manager by an AI system. There is a software on their machines that tracks their activity, the way they interact with customers, and more. If there are potential problems, the software tries to give them messages about how to alter their behavior. Many employees aren’t bothered by this, but I wonder if that will be the case over time, especially if this software starts to affect employment and pay decisions.

    I think this is micromanagement at a level I’d never want to work under. I know that some of these jobs are akin to factory jobs that make widgets, with employees doing the same thing over and over again. However, there also is some creativity and thought required, otherwise I’d assume an AI could just do the whole job. That might be coming, and I wouldn’t be surprised to see it, but as long as humans are working here, there ought to be plenty of human oversight.

    Could you see this in our industry? Maybe AI reminders that you’re slow to close a ticket, or not committing enough, or even that you’re not doing enough testing. It’s crazy to think that there could be software that companies use to manage developers and other technology staff.  My guess is most of you think this would be a poor idea, but I could see this becoming used in help desks and infrastructure at some point. If it works there, who knows what types of AI software might be deployed by companies.

    Perhaps more worrisome for many is that if this becomes a trend, this might affect the middle management levels in companies more than workers. One manager might do the job of 10s,  or even 100s, which is its own societal implications if we use less people as supervisors. Maybe this would make for more efficient companies, and hopefully, less meetings. I don’t know if I think that’s a good evolution of software being used to manage a process.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • DevOps and OSS Can Scale

    Microsoft has changed quite dramatically in the last decade, in many ways. One of the more surprising ways to me is their embracing of open source software, while still building products that customers want and use. This is quite a change from the Microsoft that I knew back in the early 90s when I started working with SQL Server. Open Source software was seen as a complete anathema to the Microsoft way.

    One of the very interesting ways that Microsoft works in the open is their use of GitHub as a VCS (version control system) for many projects. From .NET to Azure Data Studio to the new virtual kubelet code, thousands of Microsoft engineers are writing and committing code in a very transparent way. Not all their products are here, but there are more than I would have ever expected.

    Part of the challenge of using a (formerly) third party platform is the infrastructure and administration of users. Microsoft has a scale issue here that most us do not deal with. While we work with dozens or hundreds of developers, they deal with thousands. There’s a good blog post about how they’ve scaled up to ensure 25,000+ developers can work.

    The post has lots of information, both at a high, conceptual level as well as at a detailed, technical level in places. Some of the big themes I see in the post is that automation is important, and that there are tools that facilitate the collaboration of their developers by sharing information, triggering notices and reminders, and by enabling the discovery of others. Collaboration is a huge part of DevOps, and the more software can encourage this while reducing the burdens of tedious work, the better the system works.

    None of this works without a culture change. If Microsoft can do this with thousands of developers and thousands more non-technical staff, any of us can. Microsoft has grown in the recent years to be one of the more valuable companies on the planet. Many of our organizations can learn from this by adopting DevOps, but not just in name or at a technical level. The technical tools are easy, but to get your organization to perform better, you need to ensure culture grows with the Three Ways and a team environment. Let your management know that you can all do better, but only if they truly embrace all the concepts of DevOps, teamwork, feedback, and learning from our previous actions to drive continuous improvement.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • The Changing Nature of Data

    Are addresses sensitive or private information? It’s a good question to ask since many of us have address data in our databases. I asked this recently at a SQL in the City event and the room was split. I come down on the side of “no”, for addresses in and of themselves. After all, the domain of addresses is known. It’s public information in most every country.

    A few people pointed out that while the address isn’t private data, when it’s linked to a particular person, it is private. It’s not the address, but the linkage. To me this should give data modelers pause when trying to set up a schema, whether set in an RDBMS or a schema on read in some other type of data store. Separating the user from the address, and having a link that doesn’t necessarily disclose private information can reduce the surface area of sensitive data in your system.

    A second question: have you ever worried about your name being on a door or mailbox? I know some people in larger cities have, but that might be a minority. As I’ve visited friends, a name is often valuable to see on a mailbox, especially in my rural area where houses aren’t very visible from a road. That might change, or need to change. An article in the Washington Post notes that in Vienna names are being replaced with numbers. The linkage to an actual person is being removed in response to a complaint. It this overkill? I don’t know, but it is worth thinking about.

    Google Street View and similar services might be affected. The service blurs faces, but it might need to start blurring addresses or even houses. I’m not sure I think that the images are problematic from a privacy perspective, but I also know that the ability to harvest data remotely and create linkages occurs at a scale and with a creativity that I would never have imagined.

    Could a set of thieves search for people posting a vacation notice, image search for a house and then start correlating those images with Google Street View to find addresses? Sure, though arguably a search of public records for ownership might be easier. Many people rent, so maybe this is a bigger issue than I think? I’m not sure, and really, trying to determine how criminals might use data hurts my head.

    I do try not to be too paranoid, but I do get concerned about data privacy. The stories of abuse I hear in the world are truly stunning. The creativity of criminals is scary. I don’t know where to draw the lines, but I do think that we should neither be cavalier with data nor paranoid. There’s a balance to be found, but one that needs debate and deep thought, not casual dismissal or overreaching concern. I hope as a society that we move in the direction of careful consideration as we derive some framework for both the protection and use of personal data.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.