ASF 002: Greg Low interview

ASF 002: Greg Low interview


Dr Greg Low is well known in the SQL Server community, an internationally recognized consultant, trainer and author of a number of Microsoft white papers, blog posts. Greg holds a PhD in computer science, Microsoft Regional Director for Australia, a Data Platform MVP and first two MCM (Microsoft Certified Master) for SQL Server in the world.
Dr Greg Low is the CEO of SQL Down Under and hosts the podcast under the same title.
Outside his work, Greg’s current passion is learning to read, write, and speak Mandarin Chinese.

This talk was recorded during the SQLDay 2017 in Wrocław, on Wednesday 17th May.

What was the first version of SQL Server which Greg has started working with? What is the counterpart for Uber in China? And what does do one of his favourite companies in the world?
“Ask SQL Family” podcast discloses all answers for these non-technical questions.


Damian Widera: We’ve been talking to Brent already about the MCM and he told us that you’ve been the instructor. And he said that those three weeks was really great time for him to spend with the entire group and the instructor. It was the nicest time for him to work with SQL server and amazing people.

Greg Low: Yeah, completely incredible group of people. And the thing that I liked is that I ended up probably teaching it about maybe eight times so it was about four times a year over a couple of years and the people who were in the early sessions they were mostly Microsoft people. There might be eighteen people or three people each time who weren’t working in Microsoft. Most of them were mostly premier field engineers from different parts of the world. And so each of the regions around the world was able to send somebody along and I had that person come. And then the rest was product support people. That were the main ones that were there. But it’s really interesting now because now I know so many premier field engineers and product support people and it’s pretty amazing where they all end up over the years. It’s great.

Kamil Nowinski: I just want to go back to the beginning and explain why we are doing this interview and for who it is. The idea is that we would like to show you not only as a professional but also as a normal, common person, to show your habits etc. Just to give people a different look.

GL: I totally agree. When I do a podcast myself, I always get the people to say personal things.

KN: What is your name and where do you live?

GL: My name’s Greg Low and I’m living in Melbourne in Australia. I grew up in Brisbane in Queensland, and nearly everybody moves from Melbourne to Brisbane not the other way round so I’ve gone in the opposite direction.

KN: Why like that?

GL: I just end up getting remarried actually to someone from Melbourne.

KN: So that’s the love reason, very common. And what are you doing for life?

GL: What am I doing for life? Workwise I head up a company called SQL Down Under. Number of things we are doing now: the podcast and things like that and some of the tooling, we have – these SDU tools – a lot of people use those now. But the main things we do are mostly consulting work and mentoring. We do some trainings. I used to do more trainings but I try to keep it maybe to about one week a month maximum, because I like to be doing sort of real things.

KN: Real projects?

GL: Yeah. Because otherwise one of things I used to find is seeing a lot of people doing trainings all the time and the problem is that they end up in the situation when the only thing they know is what the Microsoft or the people making the product tell them. And the problem is that they often are wrong, but they don’t even know that they’re wrong.

I also think that a lot of people have ideas on how something may be done but unless they’re involved in detailed projects that run over a long period of time, they don’t get to see the outcomes of their decisions. And I think it’s really important that when you are making decisions, you see the pain or the glory of whatever comes from those decisions. What’s very common in consulting companies is that people that come in make sweeping changes and make a mess and they’ll be gone before anybody realizes they make a mess. I don’t want to do that. So I think it’s really important.

But we tend not to do a lot of consulting. What I call consulting? I see consulting as going in and doing the job but not sharing a lot of knowledge with the people that are there. We tend to talk about mentoring instead. I would rather go and work with the people who are there, filling things where there can’t do things but get them to the point when they can do most of the things. Because in the end, when you leave, they are going to be the ones that are going to be there. So I think it’s really important to do a high degree of knowledge transfer while you are doing this sort of job so that the people who are there in the end can look after them themselves. That will sometimes involve training. That will often involve building things and showing them things and so on, or just architectural work. I do wish we did more architectural work because we end up doing a lot of remedial or fixing problems in the systems. The problem is that so many of these things could be avoided. But the type of problems I end up seeing are lots of performance problems and in many cases, it’s just poor design decisions that were made somewhere in the project and they could have been avoided.

KN: Yeah, most of the issues come from the design problems.

GL: It’s funny if you look at performance problems, I think about 70% of SQL Server design problems are in the application rather than they have anything to do with SQL Server.

KN: 70%?

GL: I would say 70%. I think that maybe there are another 20% which are indexing and those sort of various things. And then you start to get into the fairly odd things – blocking and locking issues. The thing is that a lot of places we go into, they will say: “We have this blocking problem” but what they really have is that they have an application problem with running way too many queries in the first place. Then they have something like the querying indexing problem when the queries are running for far too long and that’s why they have this blocking problem in the first place. So it’s not usually the actual blocking problem. And until I fix most of the application issues where we can, and then we fix most of the indexing and basics sort of issues, then it’s pointless worrying about blocking and locking issues because it’s just not the issue. If I’m talking to someone, look, this is where a lot of DBA’s end up being problem is that they’re often being able to change the application or look at it too much. And they’re trying to make a difference of something they have no control over it. That’s very hard, right? Because you might have a query and might say: How can I make it run faster? That’s important but far more important is to ask why are you running that query ten thousand times a minute? It’s a much more important question than how to make that query goes 5% or 10% faster.

KN: And also there is a problem of the cooperation between DBA and DEV. So DBA’s monitoring the system and DEVs are fixing the queries and they are responsible for that kind of area.

GL: I don’t think that you can fix a lot of performance problems unless you are capable of looking both into the development and the data side. It’s simply not possible.

KN: How long are you working with SQL Server?

GL: Since 1992.

KN: It was 6.0?

GL: 4.21 actually. On my laptop until recently I had a copy of version 1.1 running but the problem is it was OS 2 based version and I can’t make it run on the current virtual machines. Just a couple years ago I used to show people how 1.1 looked like – it was a really interesting look on their faces when they see it.

KN: Yeah, it’s basically walking history book of SQL Server.

GL: So it seems like a very, very long time. When I first worked with it, I didn’t like it and then I end up working with it ever since. But the thing is that it needed too much administration. Particularly even later in the 6.5, I was working in the software house and I wanted to use it as a database for our application. But you couldn’t just install it somewhere and leave it alone. It just required things to be done along on too much of a regular basis. SQL Server 7 was the first version when I just felt completely comfortable doing that because it would automatically expand files. The files in the operating system level where they used to have these devices. It was just horrible. It was a sort of a throwback to earlier ways of doing things. And 7 was the first version I used where we can put it out in an application and everything would just go quiet. And quiet is good if you work software.

DW: As an example, you could have done online backups like you did to database disk and the database still remains online so that was the big difference.

GL: Yeah, it was the first version – that 2000 version – end up being the main competitor to later versions of itself for a longer time. They would try people to upgrade people to 2005 and the main competitor was 2000 not Oracle because it was just very stable and ran well. The only reason I brought 2000 out was really to fix the collation issues that they had in SQL Server 7. In 7 you can only have a single collation for the database and it had to be the same one. The server had one collation right through. So the thing is that when you had a second application, if it needed a different collation, you actually needed another whole server because you could also stole one copy of SQL server on the machine as well. It was just a dreadful situation. And the thing that made it worse was that Microsoft had started selling the Great Plains software and it required the boundary collation and that was different to all the standard defaults and everything. So someone who was selling Great Plains would have to say not only “take your application”, even if you have a SQL server you needed to buy another SQL server because it couldn’t co-exist with something else. I probably think that internal pressure was the thing and then they introduced. I think what people see is the collation mess actually. A lot of the things ended up changing when collation start to become a problem actually. But it’s a flexible scenario what they built. The biggest hassle is the fact that the system has one collation system for TempDB and all the database is shared TempDB. When the database has all potentially different collations, they really should have a TempDB per database equivalent. And when you do contained databases it does that a bit. But again, they haven’t continued on with that. One of the things that I’m not keen on with SQL Server is that they often introduce features and if there isn’t massive amounts of interest immediately, they seem to lose interest in them and then the feature doesn’t get removed or fixed, it doesn’t get added to it, it just sort of drifts into nothingness. And the problem is that you have people come into product who don’t know the history of it. And then they’ll see something and they wouldn’t know the limitations and then they start investing in that architecturally like: “I’m going to use this feature” and yet everybody who works for the product knows that they shouldn’t be using this one. It’s not obvious for someone who comes to the product. They are going to continue with things until they work. Or they need to be get rid of them, or at least they publish and wrote that: “We’re not investing in this thing anymore” rather than not investing and not making it obvious. Because if I’m looking at contained databases, I remember when I was first introduced to the team that was showing it to us, they spent the entire session basically apologizing for what they didn’t get done. It was like they got some stuff done but that was nearly not enough. They were like: “Hey, look at this road map” and they had that long road map of what they were planning to do. But next year none of these people were there, the team wasn’t there, nobody discussed the road map anymore. There was just nothing. And I can’t see anything has changed since then.

DW: How did you start with your conferences? When was the first conference you attended and then when you appeared as a presenter?

GL: I have done technical presentations for a long time since about early 1980s. I was working with the HP and I was doing things with that. I was doing things with HP around products in HP. I ended up as a technical trainer within sort of an Australian-Asian Tech Support group. So I used to do a lot of technical training when I was there. Then I was running a software house so we have things that we built and then we had to train customers and so on. It has sort of grown from there. I think the first user group that I got involved with was a .NET user group.

DW: You started at .NET user groups? [laughter]

GL: I really enjoyed it there. The thing I used to like there is that I would go all the time, no matter what the topic was, because I would always learn something and it wouldn’t matter what someone was discussing. I remember a guy turned up and he was building some audio application or whatever, but then I sat there and like the user interface appealed to me. It was actually nothing to do with what he was building, because that part didn’t interest me. It was really interesting to look at the other things associated with it. And I always think that if you go to any of these groups and you don’t pick up something, you are not trying. And the other thing that I used to like to do when I started to run the groups I find it very important to try to grow new speakers all the time. Because I’d see groups all the time endlessly saying: “We can’t find someone to speak” and they have a room full of people and all of them are doing interesting things. Then they would be thinking that they have to find somebody to speak and this is not true. You have to have a process for getting people to start to speak at the groups. But the thing is for most people, if you go to them as say: “Look, I want you to speak on a fairly technical topic and I want you to talk for like an hour or something.” And they haven’t done it before in front of the whole bunch of people, they just go: “No.” They’re not comfortable doing that. So, I quickly moved to a model where we have two topics on every group meeting. And we would have introductory level topic for 15-20 minutes or something like that, then we would take a short break and then we would have the main topic. The thing that was really good with that was if you go to some experienced person and you say: “Look, are you prepared to talk about this simple topic for 15-20 minutes?”. It’s a completely different reaction that comes back. And what I used to find is that even then all of the experienced people in the room, you think they would be bored and senseless with the introductory topic, it’s not the case Because if you get someone who is fairly good and they research the introductory topic really well, like people actually do to do that 15-20 minutes, there always be something in there that even the experienced people would go like: “I didn’t know that!” But then people would get a little bit taste of doing that. Some of them would never do it again, many would go and do better things. I was really proud that in the group we were running, we were ending up sending out speakers to all over the places rather than having a problem with finding them. Because it’s just the case of trying to grow new speakers. I think this is one of the fundamental things that people running a group need to do. And the SQL server was an area of passion so we started a SQL server group as well.

DW: And what about the podcast because you run them for a long time. How did you find that it could be interesting?

GL: I just thought it would be interesting to have something where people could get depth on particular topic but also get to know the people who wrote the books, or in the product groups or things like that. So I tend to do normally three to five a year. I actually haven’t even done one this first half a year. We have a couple lined up in this moment. I just wanted to make it more informal but detailed thing where you can get to know the person and you can also get to know the topic. But I wanted people to have some background so that they not only understand how things works, but they know also more why it’s done. You need the people with the right knowledge and background to be able to fill that in. I remember having someone like Roger Wolter taking about Service Broker. There were just so many insights that someone who’s the product manager has that just nobody else has. They know why certain things are done. That’s a really good thing.

KN: From the personal point of view what is your hobby?

GL: Curious one – it’s learning to speak Chinese. Look, when I was at school I did Japanese for five years and I have worked in Japan for short periods. And I still never got that comfortable with Japanese. I could read hiragana and katakana but I had limited knowledge of kanji characters, these sort of Chinese characters that come from there. And that’s really restricts what you can do, because there are just so many characters to learn. When I was in Japan, I was ok with basic greetings and I could get by. I could read the names on the stations and things like that. I loved working in Japan whenever I was there. It was really good but I always wanted to learn Mandarin. If I look at language trends, I was looking at trend even just a year or so ago, they were saying that if you look forward by 2023, if you look at the native of people of any language, Mandarin is on top by so far, it’s not even funny. There is a massive gap between it and the second one. And the second will be Spanish which is surprising because people would think it would be English but it’s not. And English is just the third. I think that the problem is that the English-speaking world doesn’t understand that’s how things are. But what they are saying is that a big part of this is based around birth rate and right now one in four children born today will be native Mandarin. So get used to the idea. And one in five children born today will be native Spanish-speaking. If you look around the world – like South America and areas – these are the people with large Catholic families – eight to ten children. This doesn’t happen elsewhere in the world. They are just producing enormous numbers of people. In the case of China, it’s interesting because they have about nine hundred different dialects of Chinese and so Chinese it’s already way on top of anything else. But particular dialects – more or less Cantonese in Australia – was very common for people who came because originally they all came from Hong Kong. So, if I was sitting with them on train, I would here Cantonese all the time before. Now I hear Mandarin. And it’s simply because of Chinese government. If you are managing billions of people you just have to be consistent and they are getting to the point. They are just saying: “Look, that’s the language. Get over it!” I feel sorry for the Cantonese people but the way I look at that already the kids in the areas like Hong Kong are being taught Mandarin from kindergarten. And by the time they get a little bit older, every business thing they’re going to do or every government thing, it’s going to be more and more Mandarin. It may take a generation or two, maybe three, but I haven’t had the slightest doubt that the long-term plan for China is that the whole country would speak the same language. And already countries like Singapore, they already big languages too. Singapore is an interesting one because they have English as the primary language yet two thirds of the people are native Chinese so you just start to wonder if that’s a long-term plan.

KN: Yeah, it looks like that. [laughter]

GL: For now when I go to Singapore it’s interesting because suddenly it’s like there’s another whole part of the world opened up to me, that I didn’t used to see. I spent a lot of time just reading sort of Chinese technology things. I’ve tried to spend some time there in SQL Server forums and trying to answer some questions. That’s so hard. I look at their technology. In the western countries, we just never come across it. And they are making such advances so fast and it’s so not visible to us. You need to start watching it because it is really coming. Like one of my favorite companies in the world is the company in Shanghai (they are not from there but they are also in Shanghai). They are building the skyscrapers. And they are doing three storeys per day. And they recently build a fifty-seven storey skyscraper in nineteen days. That is so far removed from what anybody else does. And their thinking is that you should build these things in the factory and then bring it in like a big mechano set. This is what they are doing. What interesting is that even part of the building like the power cables are already in there. And as they are assembling it, all the bottom floors are already lit up.

KN: And they are building the buildings like Lego blocks.

GL: And there is as well a company which was currently printing 3D office blocks. Now they are printing 3D French mansions. Who does that? They are for about one hundred and sixty thousand US dollars! This is very peculiar. Everywhere I look it’s like all those companies, we still look at payments and PayPal is pretty big and global. But Wechat for example and the various sort of messaging applications in China – like one of those did more transactions in one weekend last year than PayPal did for the whole year globally. Right?

KN: Wow! Another great number!

GL: So, you just go: “That’s extraordinary!” Yet it’s like we are not seeing these things coming. Uber is considered to be disruptive around the world but Didi Chuxing in China was already seven times the size of Uber there.

KN: Yeah, the economy in China is huge.

GL: Do I think that we will see Didi Chuxing coming globally? Yes! Yes, I do. They’re been buying Lyft in India. But if you look at the parents of these companies, they are companies like Alibaba who had the largest IPO (initial public offering) of all the time. These are massive organizations. You cannot ignore them. These things are coming and people aren’t watching what’s going on in China. We were very divided thing years ago and we didn’t sort of interact that much. It’s interesting like years and years ago the USA used to worry about Chinese communism but now they are worried about Chinese capitalism.

DW: It looks like a different story.
KN: Let’s talk now about your work life balance and what daily habits you have.

GL: At the moment, I had decided I never wanted to be going to like a cubical in the city and doing the same thing every day. Yet lately I’m going to a cubical and it’s just because I’m doing endless mentoring work at the moment on some longer projects. That is actually taking enormous amount of time. We still have these podcasts that I do occasionally. We are doing a lot of work on the tools. We’ve been building these SDU tools, and we’re just getting more and more tools and putting that in place. We have a whole online training – we are building that in the moment and this hasn’t been released yet but that’s sort of upcoming. And I’m trying to make sure that it’s a kind of slightly different experience. Most of the training that you have down there at the moment is sit-and-watch- a-video type but I’m trying to have something much more immersive because we still do quite a bit of in person training and that goes great. But I would love to get closer to that experience when somebody is doing that online from somewhere else. We’re working very hard on the things that we have to do to make that a reality. Because it’s one thing to sit and watch something but doing it is much more different story. So we’re trying how to embed that really nicely. We’ve also spent an enormous amount of time on the quality of the lab, content and things that we have. Again, we need just to repurpose that as a way of being able to do the same things online.

KN: How many hours are you working per day?

GL: A lot.

KN: But the definition of “a lot” is different for people.

GL: I do try to have eight hours sleep in a day. I didn’t have it last night but I try to do it. Because otherwise I get sleep deficit thing that make me hopeless by the end of the week. But it’s hard to tell who much time do I work per day because a lot of the IT things are my hobby as well as my work. And I think that’s one of the challenges that if you actually love the technology, it’s very easy to sort of mistake of what is work and what is not.

KN: Then you spend too much time on your hobby or on your work.

GL: And you can try and convince yourself it’s work but it might be just something that isn’t. I did a lot of work on our websites and built things and things like that. And so to do that I had to make sure that I learned HTML5 and CSS3. Do I really need to know that? No, not really. But now I have an interesting appreciation of CSS for example. I can’t say I like it. Because you can get amazing things done in a hurry, and then you can waste enormous amount of time trying to do something look the same on different browsers. And I think: “Yes, I can just hire someone to do that.” But the other thing is that I like being across that or maybe angular and love these things simply because in the work I do, I end up talking with the developers all the time and I don’t want be the best CSS developer but I want to know what they are talking about when they’re discussing it. Because then it puts you on a different position when you are talking to them about the code. And, also some of the sites that I’m in just have solid enough background on either VB or C#. Just to be able to dive into their codes and find things to be able to do a little proof of concept or basic changes or just to demonstrate what you are talking about, I find that’s really important. Whereas if I was just limited to doing the data, I would not get the same outcome. Giving you the example, a company is doing work for Melbourne who had the Microsoft software and Development Center in Sydney had built an application for them and it was so slow. But I would say it took us probably three or four months, we had it down to maybe one fortieth of the requirements of what it was when they had it delivered. They could buy forty times as much hardware. We can spend some effort and try to make things better. But the thing is you couldn’t do that just by tuning the database. We had to go back in through their problem to the bits of code. But the problem is that I find there are things you can do change the application, no question. But you can’t do that, you’re always going to be limited to marginal improvements.

KN: Is that your first visit in Poland? Do you like it?

GL: Yes, it’s great. I have spent time in Germany before so I’ve been nearby. I was looking forward to it.

KN: What do you like the most?

GL: I’m not sure. Just the people actually. The weather has been great too at the moment.

DW: Yes, we are very lucky.

GL: When you said that it was in May, I thought this is good because I’ve spent time in the UK in May and it was great. Because being in places where is cold and snowy, it’s not my thing. It can be nice. I remember that Miracle used to run conferences in Denmark and they had it in the middle of winter and it was down at La Landia, so it was a water park. So, a water park in Denmark in the middle of winter. Anyway, it was kind of interesting.

KN: Greg, thank you very much indeed. It was big pleasure for us.

GL: Thank you, guys. It’s been great to come.

Useful links:

Greg Low’s company: SQL Down Under
Greg Low’s Twitter: @GregLow
Greg Low’s Blog
Greg Low’s podcast
SDU Tools

Previous SQL Server 2017 Release Candidate 2 (RC2) is available!
Next TRUNCATE PARTITION in older version

About author

Kamil Nowinski
Kamil Nowinski 200 posts

Blogger, speaker. Data Platform MVP, MCSE. Senior Data Engineer & data geek. Member of Data Community Poland, co-organizer of SQLDay, Happy husband & father.

View all posts by this author →

You might also like

Podcast 1Comments

ASF 026: Aaron Bertrand interview

Introduction Aaron Bertrand is a Product Manager at SentryOne, with industry experience dating back to Classic ASP and SQL Server 6.5. In his spare time, he is either playing volleyball,

Podcast 1Comments

ASF 031: Paul Andrew interview

Introduction Paul Andrew. Principal consultant and architect at Altius specialising in big data solutions on the Microsoft Azure cloud platform. Data engineering competencies include Azure Data Factory, Data Lake, Databricks,

Podcast 0 Comments

ASF 030: Benni De Jagere interview

Introduction Benni De Jagere is a Senior Data Insights Consultant with a strong focus on the Microsoft (BI) Stack. On a daily basis, he turns (large amounts) of coffee into


No Comments Yet!

You can be first to comment this post!

Leave a Reply