Category: Editorial

  • Long Term WFH

    I’m not sure I’ve accepted that we’re still in a work from home pandemic that is going to continue for the next six months. It does weigh on me at times, and I’ve struggled to cope with the same four walls the last few weeks, mostly because I don’t think I’ve accepted this fact. Redgate’s offices are closed for the rest of the year, with no real plans to open anything anytime soon. Many people are pleased with the current status, and we’re hiring people on a regular basis.

    Is long term work from home the thing that many companies will adopt? Certainly some can’t, and lots of jobs around the world don’t lend themselves to remote work, but for those of us in technology, it’s possible. Lots of our management has realized this, and plenty of people like it. Disappointing for me, and maybe for some of you, but good for lots of others. Certainly I see more and more companies every week extending their WFH practice.

    Is this a good thing? There is some research coming out about how the longer term status is affecting people. People are working more, and having difficulties unplugging from work. This is creating some of the burnout issues we saw in the tech boom of the 1990s and early 2000s. There’s an interesting thread at Hacker News about finding some way to disconnect from work, with some creative suggestions. Especially nice to flip through and pick/choose them to try, especially if you are space constrained.

    The upside of remote work is that we can live anywhere and work for a company. Basecamp has done this for years. The downside is that your physical proximity to your company is not an advantage. If you aren’t a high performer, perhaps your company will look to find someone in another city or country that can do a better job. Stress about job security and certainly there is pressure (implicit or explicit) that employers might bring on you to do more, stand out, even come back to work sooner than you like. These are all potential issues for employees, and they are the downsides of remote work.

    Finding some balance and getting away from work is important. I know vacation and holiday is hard in some locations and situations, but it is important. I know I need to take 4-5 more days of holiday this month to meet the 60% guideline Redgate has set for the end of September. I’m not sure I can go anywhere, but if nothing else, I’ll just try to do something different around the house. If you have holiday, you should find a way to take it. Even spending a couple days reading a book for enjoyment or cooking a meal for your family, or anything non-work related can be a good break.

    I’ve worked from home for nearly two decades, and overall I love it, but I also like going to see customers, clients, and my co-workers at Redgate. I do hope that we adopt some of the good remote work habits after this pandemic, but I also hope that we go back to some of the older, “normal” way of working where I get to see people.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • The Evolution of Windows

    I like Windows 10. I’ve used every Windows version since 3.1, abandoning Windows 98, Windows ME, and Windows 8. That last versions I used very briefly, didn’t like it, and quickly returned to the previous version. I thought Windows 7 was amazing, using less hardware resources for the first time ever, and I’ve enjoyed Windows 10 since I upgraded. In fact, I think at this point I’ve built 4 or 5 different Windows 10 machines from scratch.

    I don’t change hardware, but Windows 10 has evolved, essentially growing without changing versions. It had its 5th anniversary recently, and I was surprised to see a few articles like this one, that all talked about Windows 10 not being a success. News to me, since I’ve been happy with it.

    It’s interesting that the article talked about some of the promises of Windows 10 not being fulfilled. I don’t know about the “free” aspect of it, though I do think Cortana was a bit of a failure. I didn’t use it much, but I think the always listening and the issues with Siri/Alexa/etc. for speech platforms is an issue. I don’t know many people that aren’t geeks using Cortana, but perhaps this just isn’t a useful thing in a non-phone OS? There are a few other things, but you’ll need to read the article for yourself.

    What I’ve noticed is that the evolution of the OS has faded a bit into the background. I do worry about updates, but I worry about lots of software updates. While quality has improved, the chance of being down is always disconcerting. While I haven’t had any Windows 10 update issues across my 3 machines, or even any Android updates across the last 3 phones in 4-5 years, I still worry.

    I also think the evolution of adding the Windows Subsystem for Linux is cool. I don’t run a lot of native Linux stuff, but I do run Linux containers for SQL Server and I SSH into systems once in awhile, so I appreciate the native tools rather than some Windows port.

    I do think we may get to the point where SQL Server versions fade a bit, with patches adding features, but I don’t know we completely get away from versions. I think there’s too much revenue from major upgrades, and since customers rarely want to make that investment, both for financial and time resources, means that I think we’ll continue to get new major versions of SQL Server periodically, unlike Windows.

    The one thing I’d like to see if SQL Server stop evolving the database structure, and allowing the restore of a SQL Server 2021 database on a SQL Server 2019 instance, assuming no new keywords are used. I don’t know if we’ll see that, but I know many people would like that.

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • The Challenges of Resetting Databases

    I was working on a demo recently where we had a database in version control and a development database. This was a team environment, with a few of us making changes and syncing them across our dev systems using git. We had some advanced technology with our dev environments in containers, Flywaydb, and GitHub. Once we had our scenarios working, someone wanted to reset our git repo and capture a new database image.

    However, when we reset the repo back, we had some issues with the database. In this case, there were changes in the database that didn’t exist in the repo, giving us a mismatch. Not a big problem, but cleaning things out to get the db to match the repo, without putting those changes into the repo, was a challenge.

    A developer I was working with got a little frustrated, because when working in C#, there is no state. If we reset the repo and sync our local copy, we have everything ready to go. However, a database repo isn’t the same because there is often a database that exists separately.

    This is the main challenge when working with databases, relational or otherwise, in a development environment. Experiments, bug fixes, even testing data changes persist over time. Resetting data to repeat tests, or even automating tests, can be hard.

    This is one reason I think containerization and subsetting of production datasets will become very important over time as we try to ensure we can react to business requirements and keep our teams coordinated. These technologies ensure we always have a known starting point for our databases. At least at any particular moment. We certainly need to update this foundation as we deploy changes to databases.

    Hopefully Microsoft, more vendors, and us as developers help advance these technologies, as well as help all developers build more skills. I’m grateful to Andrew Pruski, Anthony Nocentino, and others for the information they share about containers and databases. Hopefully we see more people engaging in these areas over time.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • Microservices

    Recently I wrote about software trends from 2019 and how applicable they might be today. One of those was microservices, which I don’t see implemented that often with relational databases. I do see developers wanting to use them, but I don’t see them often with a RDBMS backend.

    I did see a piece on microservices, which mirrors that view. Lots of talk about the architecture, but not a lot of implementation. O’Reilly did a survey in Feb 2020, just before the world changed, and the found that only 10% reported complete success, but 54% felt mostly successful, and 92% some success. That’s better than I thought.

    The respondents are self-selecting, so it’s not surprising that there might be some success. It’s not surprising that a third of these people are moving over half of their legacy systems to this architecture. That doesn’t mean they’ll be successful in the move, or that they’ll continue.

    They also note that containers are important, and I think this might be more the nature that containers lend themselves to microservices. The companies I’ve know that heavily use containers tend to use microservices, almost as if the two technologies reinforce each other.

    I think culture plays an important part in any success, and if I were in an organization, I’d focus on this. Perhaps just like DevOps, with a small team proving some success and using that as evidence to start convincing others to move. However, I’d also need to have a good argument about why we should rewrite applications, or even bet heavily on a new architecture. I’ve yet to see a good reason why microservices work well with an RDBMS, but I’m open to someone convincing me.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.