Author: way0utwest

  • Come See the Future of Database DevOps at SQL Sat Austin

    I’ll be coming to SQL Saturday #890 – Austin in just over a week. Austin is a great technology town, and this should be one of the larger SQL Saturday events. I know traffic is tough, but the event is at St Edwards University, which isn’t downtown, so hopefully some of you can come.

    I’ve got two talks, and I’m excited about both. I’m doing a DevOps talk about the overview of how to incorporate the database into a DevOps flow. This has been a popular talk across the last few years, and I’ve given it at the Summit a couple of times.

    The other talk is one I’m more excited. The Future of Database Development with Containers is a look at how we might use SQL Server in software development in the future. It’s something Microsoft has shown some ideas with, but I’ve got some cool Redgate technology to show off as well, with a database-as-a-service from the Foundry.

    Register today and come see me and a few other fantastic sessions.

    If you want more training, there is a great pre-con on Friday as well. You can learn Data Science with Chris Hyde and add to your skillset. It’s good preparation if your company wants to perform more complex data analysis.

  • Balancing Hard and Soft Skills

    Many of us would prefer that the technology industry were a strict meritocracy. One where we get opportunities and are compensated according to our skills. We learn to code better, or manage more systems, and we’re seen as more valuable (and rewarded appropriately). Or maybe many of us would prefer that things stay the same, since we might worry that we’d be paid less because our skills aren’t as sharp as our co-workers or our competition for that next job.

    In any case, we don’t work in a strict meritocracy, but if we did, we might recognize that it’s not just your programming skills that are being measured. In this piece on hard and soft skills, the author notes that the importance of soft skills is both more and less serious than we might imagine. If that sounds contradictory, it is, but read the article and you’ll see that this is a complex issue.

    The main point from the author is one that we’ve realized at Redgate for some time, and it’s why we’re constantly refocusing our efforts on teamwork. Most modern systems are too complex to be built by one person, which means a group of people need to work together. DevOps asks us to build a culture of collaboration and communication, which are critical soft skills. It matters less and less if you’re an amazing developer that can’t work with others for some reason.

    I do think that the more you advance in your career, the more important these skills become as your job is not just code. It’s also helping shape the direction of software, teaching others, and sharing what you know. If you don’t have the skills to interact well with others, then I suspect your ceiling may be lower than you like. Or worse, your tenure shorter than you’d prefer.

    At Redgate, we do embed a lot of customer research, discussions, and more inside development teams.  At times, I think we do too much, but then I stop and think about the teams I’ve worked with that didn’t do this. They didn’t necessarily code quicker, certainly lacked understanding and empathy, and certainly didn’t make more customers happy. We’re trying to adopt more soft skills inside the company, while learning to build better software. We still value technical programming skills, but not necessarily above teamwork. More alongside teamwork.

    To build a team, we need to value those in the team, and work with them, not against them. Those are skills that can certainly help us in our career, as well as skills that help any organization learn to operate more smoothly, with more retention. At least, more retention of those that have strong soft skills.

    Steve Jones

    Listen to the podcast at Libsyn

  • Getting Started with Spawn

    I’m excited that the Redgate Foundry is working on some cool projects. The Future of DevOps is one and part of that work is with Spawn. I’ve played with this a little, and I wanted to write about a few adventures I’ve had.

    First, you need an account as Spawn is hosted and there is a login. The idea here is that the service (hosted now, but could be on premise) handles all of the complexity of databases in containers, spinning them up and managing them, with you just connecting to an endpoint to use the database. We can spin up SQL Server, PostgreSQL, MongoDB, MySQL, and Redis in this fashion. It’s truly a Database-as-a-Service (DBaaS).

    Spawn on Windows

    For once, this is easier, or I think it is. I downloaded the spawnctl.exe CLI and then put it in a folder in my path. For me, I have a “utilities” folder where I drop stuff and that’s where this lives. I can check this working with a version parameter.

    2019-06-21 14_30_24-cmd

    So far, so good. Now we need to log in. I like integrated authentication schemes, and this one works well. I start with a “spawnctl auth” call from the command line.

    2019-06-21 14_32_40-cmd - spawnctl  auth

    This pauses and opens a web browser window. It’s here I need to log in. We support Github and Microsoft, but have mostly been using Github for our demo work.

    2019-06-21 14_32_46-redgatefoundry.com

    Once I click that, since I have a Github session elsewhere, I’m logged in and I get a code back.

    2019-06-21 14_33_08-redgatefoundry.com

    I paste that back in the cmdline and I am authenticated. From here, I can then see what images I have. As you can see, there are both MSSQL and PostgreSQL images for me.

    2019-06-21 14_33_55-cmd

    I also have a few containers from my demo work.

    2019-06-21 14_35_10-cmd

    Let’s make a new container and connect to it. I’ll use Azure Data Studio, since I can connect to both SQL Server and PostgreSQL.

    Logging In

    To get a database, I’ll use a CREATE verb and the DATA-CONTAINER noun, along with an image. When this runs, I get a note this container is being created, then I get a response with login information.

    2019-06-21 14_42_51-cmd

    Let’s put that in ADS. I can copy/paste my credentials into a connection dialog and then hit Connect.

    2019-06-21 14_43_52-SQLQuery_1 - disconnected - CoolADSNotebooks - Azure Data Studio

    As you can see, I’m connected.

    2019-06-21 14_44_21-● SQLQuery_1 - instances.spawn.cc,53231.master (sa) - CoolADSNotebooks - Azure D

    I see the demo database we’ve been using and the tables in there. How this works is worthy of more posts, but for now, this is pretty cool.

    2019-06-21 14_45_04-● SQLQuery_1 - instances.spawn.cc,53231.master (sa) - CoolADSNotebooks - Azure D

    I can do the same thing with PostgreSQL. Create a container.

    2019-06-21 14_48_00-cmd

    Then connect (need to specify the port in Advanced)

    2019-06-21 14_51_57-Window

    And query:

    2019-06-21 14_52_59-● SQLQuery_1 - instances.spawn.cc.postgres (spawn_admin_bsiw) - CoolADSNotebooks

    Pretty cool. Simple, easy, and I think about as fast and easy as any other cloud database. Here, though, I am spinning up a container from an image template. That’s valuable for dev work, and I’ll talk about that in the future.

  • CCPA Preparation

    There’s an old Ron White joke about a small airport also being the tire repair center and hair salon. I thought about that when I saw a law firm became a software developer. I don’t know what other enterprise might make a fun trio of businesses, but perhaps a sunglasses shop? Divorces, software, and a new look?

    The CCPA (California Consumer Privacy Act). takes effect in less than a year. This is a law based on the GDPR, and the first strong attempt to regulate data in the United States. I think it’s a good move, though I’m sure large corporations like Google and Facebook will fight it and find exceptions that allow them to play fast and loose with information about many of us humans. I also think, like the GDPR, this will force many smaller companies to better secure, manage, and handle the data they process about companies. I wouldn’t surprise if this also brings about quite a bit of work for consultants and software vendors that help others better classify, protect, and manage their data.

    A new product released by a law firm is designed to help other organizations in a number of ways, based on the knowledge and experiences of the lawyers that have worked in privacy law and compliance for years. They spun off a software development company who built an application that assists with four areas that organizations struggle with: compliance with consumer requests, mapping information flow, generating policy documents, and training employees.

    I’ve worked in a few companies that needed to do most of those things to comply with some standard or regulation. It’s not a difficult task, but it is complex, it’s hard to stay organized, and it’s hard to ensure that everyone understands how the new processes work. While an Excel spreadsheet can track everything you need, once you get beyond a trivial number of employees and systems, the entire system becomes unworkable.

    Instead, some organized system needs to be in place that helps keep all your employees coordinated. I don’t necessarily recommend buying software over building it in many situations, but here I would. There are lots of moving parts when trying to organize your data practices, lots of legal rules that you have to understand, and software is likely much cheaper than legal advice. Your employees will need to learn how to use new software, buy into new processes, and alter workflows, but capturing and documentation is the first step. Once you start to have a handle on what information you store, you can then decide what to do with the data.

    Steve Jones

    Listen to the podcast at Libsyn