Reimagining the Car with Electricity

I ordered a Tesla Model Y awhile ago. I was a little anxious about the cost, but my wife calmed me down and I’m getting a little excited to have it come. Supposedly it will arrive in late Aug or early Sept. Now I need to do some garage cleanup and wiring to get ready.

The other day I ran across this piece on Volvo’s “pure” EVs and their work on a new concept vehicle. It’s a neat idea, though without many details. Just a sketch, which looks a lot like what Tesla has done.

To be fair, I don’t love the look of the Tesla. It’s streamlined and I’m sure low drag, but it lacks some of the visual appeal of the 911, the Corvette, or even a modern Lexus. I didn’t buy this car because it’s visually stunning. Instead, I bought it because it’s really a computer on wheels, with tech that’s well thought out and is updated in a DevOps style on a regular basis.

I looked at a number of other electric cars. However, most of them are cars that have added batteries to them, with a lot of the rest of the car the same, and relatively little thought on how cars are changing. I also don’t trust most other manufacturers to update their software often, or well. I expect they’ll want you to visit a dealer, or they will make minor changes to correct bugs rather than introduce interesting new features, like “dog mode”. One other trick I saw recently was “Joe Mode”, which lowers the volume of alerts. My X5 does the opposite, raising volume when I raise the radio volume, which is incredibly annoying. It’s a design choice, which I hate. BMW wants to tell me how things should work often, whereas Tesla gives me more choice, at least, more choice I like.

I’ve been watching the software for awhile. Glenn Berry has one, as well as a couple others. I’ve watched online, and I see very few issues with the software. Some, but not a lot. And they fix them. I don’t have a lot of confidence in other manufacturers that they’ll do as well, at least not initially. I saw this with my Prius. Toyota tech was way more solid on hybrids than others initially.

I’ve been impressed in many ways with how Tesla has grown and adapted over time, truly reinventing how a car could work. I don’t love every decision, and I have no desire for a “yoke” instead of a wheel, but I do like where they are now. Ahead of other manufacturers.

I expect this to change in a decade, but for now, I look forward to only worrying about brakes and tires, and not needing to mess with gas, oil, spark plugs, air filters, etc.

I’m also going to start doing car updates again, with a comparison between my X5, which I could have kept, and how the Tesla compares.

Posted in Blog | Tagged | 2 Comments

Daily Coping 9 Jul 2021

I started to add a daily coping tip to the SQLServerCentral newsletter and to the Community Circle, which is helping me deal with the issues in the world. I’m adding my responses for each day here. All my coping tips are under this tag. 

Today’s tip is to shift your mood by doing something you really enjoy.

It’s been a semi-quieter week this week. Coming off the holiday weekend, and with the summer time being somewhat slower, I was able to get work done without a lot of pressure on deadlines or out of band requests from other individuals.

This week I took a break during lunch to swim. I enjoy it, and I hadn’t done much since I had COVID last year. However, with the warmer weather, and outdoor pools opening, I made it a point to get out and swim this week.

Posted in Blog | Tagged , , | Comments Off on Daily Coping 9 Jul 2021

Daily Coping 8 Jul 2021

I started to add a daily coping tip to the SQLServerCentral newsletter and to the Community Circle, which is helping me deal with the issues in the world. I’m adding my responses for each day here. All my coping tips are under this tag. 

Today’s tip is to avoid saying must or should today.

My wife reminds me that “should” is a cognitive trap for an individual. I try to avoid saying, or thinking that I should do things and rather look at what are real obligations or responsibilities and what are things I would like to do.

This past weekend was a long, holiday weekend, and I had plans to handle some tasks. I worked through some, partially in most cases, but I was able to complete a task. In any case, I didn’t put myself in the place to say I should get more done, or I must get something done.

Instead, I worked on the tasks in front of my, listening to my body, mood, and family, being satisfied with a good effort and the state of my progress.

I had wondered if I could get three Juniper bushes cut down, but in two days, I got two done and then enjoyed another day with my family. The state of things (until this weekend).

20210704_144805

Posted in Blog | Tagged , , | Comments Off on Daily Coping 8 Jul 2021

How Do You Decide to Rollback?

One of the constant questions I get from Redgate customers is about rolling back database changes. We build software to help you deploy changes, but what about rollbacks? I think I’ve heard this in almost every conversation I’ve had on this topic in the last 5 years. It’s one reason that Flyway has undo, though with some caveats. Please don’t expect this works magically like a restore operation.

These is a complex topic, and one that can be way harder than a rollback for application changes. In fact, everyone wants it to be simple, but I don’t think it ever will be. There is a big reason for that: data. Undoing data changes can be impractical, especially in if there are lots of changes.

The question I’d like you to ask yourself, and give me thoughts about, is when do you decide to rollback. How can you make that decision in a production system? Are there criteria or guidelines you use? Do you ask someone else? Maybe another aspect of this situation is how you decide to roll forward instead of rolling back.

I was listening to some MVPs discuss this awhile back and one of the main criteria that one person brought up was data changes. This individual said if no data had changed, they just undid everything. However, once data changed, they were likely in a roll forward scenario where they needed to fix code quickly.

That’s often the big factor for me. Once data is changed (or added), then we often can struggle to rollback. If we have an application that needs a new column, and we add it, if there software has a problem, we may not be able to roll back because the old software doesn’t work with the new column. We don’t want to delete the column, at least not until we save the data. These are the problems.

The easy rollbacks are when the deployment fails and transactions undo the work, or we just quickly undo everything we did. That’s an easy decision, but I rarely find this sort of issue. Instead, usually we find certain data breaks our application or the logic is improperly implemented.

I look forward to your ideas and thoughts here, but I do have some advice. One thing I always tell customers is that you want to deploy often, so that you are ready to fix something you broke. That’s important. The other thing that simplifies life is to never add and delete objects in the same deployment. This goes for everything. If I add new first and last name columns, but keep the old fullname column, if I’ve broken something, I still have the old columns and data. I can rollback easier. If everything works, I can always delete the fullname column later. Following these concepts has made my life much easier when I made database changes.

Steve Jones

Posted in Editorial | Tagged , | Comments Off on How Do You Decide to Rollback?