Ep6 - Transcript

Episodes transcripts are powered by Otter AI, this is an awesome service that transcribes the audio, the grammar it's not perfect and there are some inconsistencies with punctuation and casing, but it's quite accurate to turn sounds into words.

If you wish you could edit the transcript on the Landing In Tech GitHub Repository

Dr Michaela Greiler: Making code reviews your superpower

Fabio Rosado

Hello, today I'm joined by Dr Michaela, you started as a art student in art school? Yes. And you obtain your PhD in software engineering, you have a master degree in computer science. And you do a lot of talks in both US and Europe.

Dr Michaela Greiler

Yeah.

Fabio Rosado

And you work with a lot of teams like Microsoft flutter wix, and etc.

Dr Michaela Greiler

Different companies. Yeah,

Fabio Rosado

very different companies,

Dr Michaela Greiler

very different companies. And i really like it, for a long time, I just worked with one company, and Microsoft. And so it was a big companies. But now we're having so many very different companies, it's even more interesting. Yeah, to see all the different cultures and how people do stuff, right. Even Microsoft people had different ways of doing going about things. But now it's on another level. Let's put it that way.

Fabio Rosado

I guess it must be very interesting for you to see like, how Microsoft works, which most people say that Microsoft is probably like, imagine someone in a cubicle closed and very structured. And you have all these rules. Whilst if you work for maybe a startup, it's completely different. So it must be interesting to see the whole different industries, how they operate on their day to day basis.

Dr Michaela Greiler

Yeah. So coming from inside, I would not paint a picture like that about Microsoft. But what I can say is that I mean, this is maybe not really company, culture or work related. But I was when I moved to the US, for example, I was very surprised that not every office has a window.

Fabio Rosado

okay

Dr Michaela Greiler

this was really drastic for me. I mean, I think in Austria, we are not even allowed to have an office without a window, right? There's like, basic human rights that people are enforcing. And so I knew exactly that when I was starting in Microsoft, and then they go by tenure. So to go, how long you are actually at Microsoft, and the longer you are, the higher is your privilege to get a window? Right. So the first, the first 10 years, you probably without window or something like that, right?

Fabio Rosado

You need to stay in a dark cave first.

Dr Michaela Greiler

Yeah. I mean, depends also which building you are in. And then when they had like there, so some of the buildings and some of the teams, they're really in offices, right. And then some of them are in this open space. And so because of the windows situation, I actually preferred Open Office. Because then you had a window, right? At least, you know, two desks from there was a window or something like that. Yeah.

Fabio Rosado

And that really helps with your productivity as well, if you actually have some natural light instead of all dark. And

Dr Michaela Greiler

I couldn't imagine. So I think I would have quit immediately. I was a little bit shocked. Actually, when I started working there, right, everything was perfect. I would say it was my dream job. But that I didn't have a window was really a big thing. And actually I a window when I started. But then we moved to another building. And this was one of the oldest buildings on the Microsoft campus. If I recall correctly, it was building 21. And nobody liked building 21. Right? And so when we had to move there as a team, everybody was like, Oh, my God, you have to go to 21. And so my office was an internal office, right? So there was there was just the door. And all the walls were without window, right. And so this was really, really bad. And I was very, very unhappy. But it was only temporary. Thanks, God. So we actually, so this was a temporary solution. And then we moved into I think it was 16, or 18, something like that. And this was one of the newest buildings. And this was really cool, then. But yeah, but at that point, I actually mostly worked from home. So I said, I cannot work in this office space.

Fabio Rosado

I cannot pressure something. I know that more companies now are doing remote work. And I really enjoy the whole idea of remote work. Because just the fact that you don't have to commute for one hour to go to the office, and then you're tired. And you're commuting back maybe one hour. So there's two hours that you as you said, maybe you could spend the first hour just doing some exercise taking care of yourself, and then you can start the whole job with a better head, if that makes sense.

Dr Michaela Greiler

Yeah, I'm a big fan of remote work. And I actually worked a lot of my career in a remote setting, at least temporary, right. So even when I was on campus in the States, I worked a lot from home, I would probably go almost every day to the office, but I just was there for a couple of hours, you know, for all the important things I worked with a lot of different teams. So I had to go from, you know, from the office building to the windows building to you know, exchange or something like that. Right. So I was meeting with the people that were were had important stuff to discuss and then was doing the productive work actually from home, and I enjoy that a lot. Because, as I explained, well if you have like a really awful setting, you can go home and you know, you have like your office in a way that is comfortable for you. And for me that's really important. I can be very productive and very, I feel good, right? If I have like my coffee, and you know, my water, and you know, my chair, and everything is like I actually like it.

Fabio Rosado

Yeah, and you can make your space, how you want and how you feel more productive and more creative. So that makes sense,

Dr Michaela Greiler

Exactly, yeah, and for me, being around people all day is really a battery. drainer right, I'm really exhausted. At one point, when there are people all over, I really like to be with people's I enjoyed going there and having these meetings and, you know, doing the stuff there. But then if I have to concentrate and do my work, I actually really enjoyed it, that I'm at home. And you know, if I make strange faces, I can make strange faces, because I'm thinking you know, or, you know, I'm walking around if I have to solve a bigger problem or something like that. So I like that freedom very much. So I really like the the remote setting. Whenever I commuted, I try to don't have like a large commute or long commute, and that it's possible to do it by by bike, for example. And so this was something that I also enjoy, like if you if you have this bike ride, then somehow I feel the commute is part of my daily schedule of doing something healthy for myself, right? So you don't have to think about you have to do it. And also it can clear a little bit my thoughts about you know, you leave a little bit the office at the office and home at home. But yeah, in general, I really like the remote setting. Yeah.

Fabio Rosado

Do you think that doing some exercise does help you when you're stuck in a particular problem, and then just do some exercise or like you say, go for a bike ride and let your brain just think it through?

Dr Michaela Greiler

Yeah, not only for for problems, but in general, I really see that for myself, if I'm not doing exercise enough. In general, if I'm just not cultivating healthy habits, right good sleeping enough, or having also a life outside of you know, I can be I can be a person that gets very, very hang up in their, in their work, right. So when I'm when I have a problem, it's really hard for me to leave the desk and say, while I'm doing something else, or you know, I'm meeting friends or whatever, right? So I get very a lot of passion also. And there is really a lot of good feelings about this, right? I really love my work. So I'm doing the work in the short term feels as it's healthy, it feels like I'm doing actually something good. And this I enjoy it. But then the long term effects are not really good, right. So I really think it's important to think about going outside in nature, getting some sunlight, walking, yeah. And also being able to detach yourself, maybe from your work, I think people have different ways how they're attached to the work. And I'm probably somebody that's very attached to the work and very, I very much identify with that. And that can be very dangerous, right? thing is very healthy to do something else,

Fabio Rosado

I do the same. When I'm stuck in a problem. I'm just like, I'm not leaving this chair. If I don't fix the thing. I just keep thinking about it. And we always hear saying yeah, you probably need to actually move out of the chair and do something else because then it will be easier for you. Because your brain will finally have a break and we'll be able to think it through. I have to ask you, you went from artschool to the IT world How was that transition?

Dr Michaela Greiler

It was actually a very long transition. That's the first thing that I would probably say. And it was not completely planned. I also didn't really know what I get myself into. So I went to art school and in my school in my high school. We didn't even have computers and I didn't have a computer at home while my parents had a computer but it's really it was really expensive or it was portrayed as something very expensive, right so and something that can break easily so don't kids are not allowed to touch it. And and in school, because it was like very this really artisan school right? So people were more like, if you write a novel you write it with paper and the pen right this is this is how real novelists are How real writers go about their work in the same for example is specialised in photography. But at that point, the digital thing already there, but there are little How can you do that? That's you know, it destroys the character of your thing. So we didn't really I was developing pictures like with these different chemicals and in these dark rooms and things like that right. And then in the last year before going to university, I attended a couple of classes. Already, so in the afternoons, instead of doing something else I was going to university, because I was very lost. I was like, Oh my god, what should I do? You know, what, what's my, what's my path, and I didn't want to become, I didn't want to continue this path. Because I felt if I have to make money by doing art, you know, this destroys the character from from the art, not from myself. So for example, if somebody tells me, oh, I want the painting, and they can tell you exactly how the painting works, or how it should look like, then for me wasn't really art anymore, right? So this commissioned art thing wasn't really something that I wanted to do, I felt like, I want to keep the passion in the art that it's really independent of the money world, right? I don't know, it was just a thought train sort of, you know, 18 year old, something like that, or 17 year old.

Fabio Rosado

But as you say that I think it's true, if you are paying to do if you're paid to do something, you sort of restrict your creativity a bit, because you know, that you wont to deliver something that you like, but that the other person likes because a person is paying for it. So it makes sense.

Dr Michaela Greiler

It's strange. Yeah. And also, because I was in his art school, we were judged by what we were doing, right? So you got, like, for? I don't know, what's the English word for it. But, um, like, if you had like an exam in art, then you got a different topic. And then somebody would judge your art, right? I mean, which was very strange for me. And, and it was very, I was very blocked by it. And I was like, you know, you know, at one point, you know, that the teacher so you know, how to get a good grade for whatever they want. But it's not really art. It's not really what you wanted to do. And I thought, well, if you go and sell your stuff, then this will just enhance, right? And so I was thinking, well, I want to do something else. And but I wasn't sure what I went to different classes. I went actually, a lot of things about psychology, because my mom is a psychologist. So I thought I should look at that. But it wasn't for me. And then I went for I think mathematics, of course, because this is something that I thought I would like and I could do. And I ended up in a class about algorithms. Okay, databases, I think it was also about databases, and you know, synchronisation of databases and all the prob problems with race conditions and things like that. And I thought, this is so fascinating. And they were talking about a cash machine. And you know, how you make sure that if somebody you know, access your checking account, for example, that nobody else can actually access something and you know, race conditions, what would happen if you know, to write on the same variable, things like that, right. And so I actually went back to this lecture, and I took the whole course because I was really, really fascinated, okay, I want to do this, right. But it was very scary, because I didn't have a computer. And I mean, being in this class, everything was very analogue, right. There wasn't there wasn't nobody was having a nobody was writing code, or nobody was having a laptop. Right. So it was everything like just PowerPoint that were presented. Actually, at that point. I think it wasn't even PowerPoint, right? They were like this projector foil thing.

Fabio Rosado

I remember those!

Dr Michaela Greiler

Yeah, and, and so then I bought a book actually, about algorithms and what it is, and read it over the summer, and then I decided to do that. And yeah, and then I went into that. And it was, it was very difficult at the beginning, because the first year of university was definitely made for people that have already done some specialisation in programming. So most of my peers already knew how to program they had a computer, they know the internet and things like that, right. I was really like very green. And I didn't even manage to enrol, because you had to there was an online enrollment, and sometimes I don't, I don't recall what I messed up. But something I messed up something with the passport, I don't know what it was. And so I've entered it Department said, I am really having troubles enrolling online. And so he helped me and then he said, so what should we enrol you for it as a computer science? And they were like really laughing about me? And like, are you sure maybe that's not the best study for you? I studied a lot, especially in the first year and then I caught up. And then I really liked it. I was also there was enough interest to make it through.

Fabio Rosado

I think that's the most valuable thing is if you are really interested in learning a subject, that's where that's when you learn the best. It's if you have a specific thing that you need to study, because it's part of your course and you need good grades you're probably not going to enjoy studing it, but if it's something that you really like and it's something that you are passionate about, it's very easy for you to study it because it doesn't feel like a chore. It's something that you just did because you like it. So I I think also, if you didn't have that math background, it must be really hard to do that jump and going to the CS. Do a CS bachelor degree.

Dr Michaela Greiler

Yeah, it's true. Actually, I think that so I, in my art school, we had art, but we also had like, quite a lot of mathematics, right. And so I had analysis there and all of that stuff. And so, in later semesters, actually, my CS degree, there was a lot of math, when I studied it, I think they changed it over time. And they reduced that. But back down, when I studied it, there was a lot of math there. And there was definitely a lot of method, I had no idea. So I was really new to to, but I started even for my peers that are coming from a computer science background. So they were doing high school with computer science, or it's not computer science is programming specification, for example. So they could already programme, but normally had less maths, and less like this very fundamental math constructs. And so they were struggling a little bit more at that point. And I think most of them didn't, didn't enjoy it. So they kept struggling, because yeah,

Fabio Rosado

that's interesting. I wouldn't think that the math, the art degree, would give you such an in depth math, but then I guess you had lots of geometry and all that stuff that you sort of need to know anyway. So maybe that's why,

Dr Michaela Greiler

yeah. And so my school was, it was a normal... so in Austria is called gymnasium, right?

Fabio Rosado

But similar, similar to polish, actually.

Dr Michaela Greiler

Yeah?

Fabio Rosado

yeah. in Poland they have gymnasiums as well?

Dr Michaela Greiler

yeah. And so this, this has a very fundamental education, right. So you're not trained for something specific, like, I don't know, for for accounting, or for programming or something like that, right? There are schools that are directly for that by a gymnasium would be very, very general education, but very deep education for that path. Right. So there would be, as I said, a lot of math, a lot of languages. So I had like, Italian, English and German, right. So there was three languages that you had until the end. And you also have like physics, chemistry, and all of those stuff, right. But there was definitely more fundamental math happening than, for example, for the schools that had like this programming education.

Fabio Rosado

Yeah, I think sometimes the technical schools or the technical courses, they focus a bit too much on that specific thing. And then all the all the other stuff are mostly just, you touch a little bit here a little bit there. Because in high school, I did a communications and journalism degree, which the only math I had was statistics, and how to make graphics, how to make graphs. That's it. So when I started learning algorithms, and I still, from time to time, I go back and try to remind myself because I'm not great at it. I struggle a bit because the level of math that they expect is really high. Compared to what I have. I actually spent about a year on Khan Academy. And I did the math lessons every single day, because I was trying to catch up with all the things that I didn't really learn, because I had math until year nine in Portugal. And then after a year, 9 you go to high school. I know I missed a lot of things. So I was trying to catch up. So how, how did you find that passion about code reviews?

Dr Michaela Greiler

Well, code reviews, yeah. A little bit stumbled into that. So my background comes from empirical software engineering. So empirical, for software engineering is if you are, it is more or less studying computer, or software engineering, by looking at data and looking at empirical incidences, right, so how are people doing it right to and I looked at different practices, I did a lot of things on testing. So this was actually my PhD was also very related to testing and to help people understand software. And yeah, and so I was I was studying, how would How would you help people understand which part of the systems are tested in a very large service oriented architecture? Right. And so was building for example, different models, different abstractions, and then have different experiments to see if engineers actually you know, if that makes sense to them if it helpful, if not helpful, and also how their in general would test their systems and where there are some some problems with it. And so especially it's understanding part is definitely part also of code reviews, right? Because we have to understand software, we have to comprehend software. And so I think there was a little bit of that already. And, and then I when I started working for Microsoft in Microsoft Research first and then Microsoft. I was working in a team That was looking at different software engineering practices, right. So again, we were looking at testing, we were looking at code reviews, we were looking at built, a lot of things were based on built. And we were looking, how can we actually make the engineering practices, processes and tools. So all those three things better for the 40,000 engineers that we had right? code reviews was something that we invested actually a lot of time in. There was a wonderful colleague, Chris Byrd, for example. He was working a lot on code reviews. And at that point, we had data on that people were spending, on average, six hours per week on code reviews, right? So 40,000, engineers, were spending six hours per week on code reviews. And this number definitely went up in the last 10 years, right. But even six hours is something that's fundamental enough that you really want to understand. Well, is that helping? And not only is it helping, that was one question. But the other question was, we know for some people, it's not working for some teams, it's not working, right. We also know that for some teams, they are doing really good job, right? So they would never give up their code reviews, because they are getting so many benefits out of them. And so this is where we started really to investigate. Why is that happening? What you know, what are the differences between the different teams? Why are some struggling from the pitfalls? Why are some getting all these benefits out of them? And how can we make the processes practices and also the tool better, right, so in our team, we had also that we were developing and owning the internal code review tool from Microsoft code flow. And so we were improving that tool. And we were improving the practices of the of the engineering teams. And I got really sucked into it, right, I really loved it. I also loved the testing part, the loved the built part. But this was so interesting, because it's so tech socio technical, socio technical means that while on one hand, it's super technical, right? So you have to know your stuff to be good at code reviews, you have to really know, to give valuable feedback, you have to know everything. But on the other hand, you also have to know how to communicate, right? So you can be the brilliant person and you know, know everything if you can't communicate good in a good way, or resolve conflicts or be pragmatic and all of that, right. So if you don't have these social skills, then you will fail also in your in your practice. And I was really fascinated by that. And so this is somehow why I then specialise more and more in in code reviews.

Fabio Rosado

Okay. And you are also in the process of finishing off or writing a book called code review book. Is that correct?

Dr Michaela Greiler

Yeah, I'm actually doing that together with Yeah, with a with a friend of mine, also a wonderful researcher on cultivate. So together, we're writing this book, and we are sort of in the middle, I would say, so it's planned that it will, we will finish it by spring 2021. Right. So it's a big book, and there will be a lot of research in it. I think it will be a really nice book. But yeah, it takes it takes some time to write.

Fabio Rosado

Yeah. Did you think that you're finding that on your workshops about code reviews? And when you're talking with other developers, you're sort of saying the same thing. And you thought, Okay, I need to put all this knowledge in a book, because people will definitely find value over this.

Dr Michaela Greiler

Yeah, I definitely. So there are not a lot of books on code reviews. So it is definitely something that I thought, well, this is missing. And then, when I started to really specialise in code reviews, I was also a little bit worried at that point, I was like, oh, is there enough to know about code reviews, right? So how long can you learn something about code reviews? How long can you specialise in code reviews? And one will? When will it be? Like you say, I, there's nothing new to learn, but I haven't reached that point, right. So every day I'm learning something about code reviews and working with really a lot of people. I'm giving this workshops and even in each workshop, I'm learning something new, right? new problems, people have new ways people to contribute, and I acquiring all this knowledge about it. And I haven't seen any resources, you know, that are only a fraction of what I know about code reviews. So I thought this is definitely something that, you know, I should bring to paper and yeah, get out there.

Fabio Rosado

I agree with that. When you said that you're looking for people to sort of test or read through your initial work of the book. I volunteered as well, because this is one thing that I sometimes I struggle as an open source maintainer, not so much as reviewing something from a new contributor. But the thing that I struggled the most is trying to review something from someone that's higher than me, and I'm pretty sure that a lot of developers they feel the same. I know that Eva when when we had our talk, and sometimes when we talk outsides that talk she does. She does say like, when the senior say, Oh, can you just do the code review? She feels a bit like, you know, more than me, what am I supposed to check in your code that I can give input? So sometimes it's really hard for me as well to look at maybe a PR raised by Jacob, the creator of the project that I maintain. And sometimes I say, Yeah, it looks good, because I don't know. Anything else to put it.

Dr Michaela Greiler

Yeah,

Fabio Rosado

Do you have any sort of suggestions? Any tips for junior developers? How to give a good code review?

Dr Michaela Greiler

Yeah. So I think that what you are experienced is very common, I see that a lot. I see that also, I think we're where there's really a powerful positive contribution that I can do in that space is when there are corporate trainings, right. So sometimes, so I have these individual workshops where you can book one ticket, but I also what I'm doing a lot is workshops for a whole Corporation, a whole business, right? So a team, for example. And so there will be like, let's say 20 people, and then there are like seniors in the group, and there are juniors in the group. And this, this comes up a lot for juniors right. So what should I say? And how can I do a code review? How can I overcome also a little bit this imposter syndrome, but also, what should I look at, and there, there aren't really a lot of books, blog post classes out there that somehow prepare you, right. And so. So I think that the workshops are really, really powerful here. So they help a lot and get also a lot of really wonderful feedback from people that are juniors on, that they are now much more settled in what they can do. But a few tips that I can tell you is have a code review checklist. This is really powerful. If you have one, this somehow gives you like, a complete list of the things that I can look at. Right? The second is also that we have to and this is a part of the book, it's actually a chapter that I'm writing currently, right now is about that we have to change our perspective a little bit, right. So there's, like this perspective of the code reviewer are and then the code author. And normally you have like the code author is criticised by the reviewer, right? So you have like this hierarchy based on the roles, but you also have a hierarchy based on senior and junior. And so the question is, what can juniors contribute to code reviews can be code can be contribute something and I say definitely can contribute something, right? that this has to do with confidence, but also with understanding your strengths where you know, something, right. And looking at the code, and it could be, you know, it could be that you learn something because you're Junior you learn something that's now less outdated, something that the senior does, right, for example, but also it doesn't always have to do you know, it's not always that we have to lecture each other. It is just an exchange of ideas that can happen in code reviews. But yeah, a code review checklist definitely is helpful. And, and training a little bit like really a training on, you know, what are the things that I can look for. And, with this, a code review checklist, for example, what you could do is you could educate yourself in those areas, right? So the best code review checklist is the one that you tailor to your needs. And let's say you are a Python developer right? So, what you can do as a junior is make yourself a little bit of plan based on these checklists that you educate yourself. And you're getting better, let's say accessibility, right? So what do we know about accessibility, and I use this now as an example, because I think many people even if they're senior, have no idea about accessibility, right? Or security. And then you could, you know, read up and learn and then look, especially for the things that you just learned in code reviews, for example, just to get your confidence a little bit out there. And yeah, and grow your skills also, especially the technical skills, right. But there's a lot of social skills as well. And so it's not only what you find, but also how do you how do you address it them? Right? How do you say it? And they're also there, I have actually a blog post about this, which is about how to give respectful code review feedback. And there's a YouTube I did a YouTube video about this as well.

Fabio Rosado

I was gonna say, I actually saw that video. And it's very, I think, if if people don't like to read stuff, which I think we all should, because we spend a lot of time reading documentation. So it should be fun reading, if you don't want to read that. That blog post watch the video. It's it has such... so many good things there that Yeah, I'm going to put it in the episode description, because it's a very good video. Yeah.

Dr Michaela Greiler

And I think it can also help because it shows a little bit how you can phrase the feedback in a very respectful way, right? And if you have like this, if you feel there's a hierarchy, right, or a difference in expertise and things like that, then knowing how to phrase something is very, very important as well. Yeah,

Fabio Rosado

yeah. It's what you said, the good reviews is not just about code, it's about communication. And it's one thing that the more I talk with developers, the more the whole communication is key comes to the topic. It's always, yes, you need to know how to code properly, you need to know how to test stuff, but also, you are working with a team. So communication is important. And it's something that you can definitely train, it's something that it's a skill, like any other skill, you just need to get out there, meet people go to meetups, it's going to be very terrible, very frightening at first, but the more you do it, the more it gets easier, and you'll be better, you'll be better at it. So yeah, yeah,

Dr Michaela Greiler

you can definitely learn it right. And there are many nice. So one thing that I, for example, teaching my coder workshop, it's called a nonviolent communication, you can read up on the internet, there are a lot of resources on it. And there is also a really good book, I would actually recommend the original book from Roswell that that wrote that invented this methodology, right. And I like it a lot. Because, especially for us as developer where we have like this very structured thought, then we like algorithms, it gives you a really a step by step guide on how you can resolve conflicts and how you can communicate more effectively and without, you know, hurting the feelings of others. So this is also definitely something that I that I suggest

Fabio Rosado

Is that something, is that something related to the five A's or the four A's,

Dr Michaela Greiler

it's different. So...

Fabio Rosado

okay,

Dr Michaela Greiler

um, what do you have here? With nonviolent communication, you have more, you have like needs? So it's about identifying something, right? It's about identifying, for example, when somebody says something, it's about what I said, Now, is it is it an evaluation on observation, right? So this is how we start with non violent information, right? So the first step would be whenever we are talking, and especially for code reviews, this is also important, let's do an observation and not an evaluation, right? So an evaluation would be this bad, this code is bad is an evaluation. And you could say this code has thousand lines of code, right? Or this method has thousand lines of code, right? So there is no there is no evolution. And then you could actually put an evaluation later on, right? So you but you separate those two things, right? This single method has 1000 lines of code, I think, right? And this is like owning your feedback. I think this is not optimal, right? So this is the evaluation, but you separated it. And very often we just have the evaluation whenever we are talking with people. And this has to do how our brain works, that we can quickly evaluate things. So this is really natural. But it's not very helpful, right? If I'm just telling you, while this code is too long, this code is not nice. I these are all evaluations, but they are not observation, you cannot really do something with it. And so the first step would be to separate observation from evolution. And the second is understanding needs. So why is that a problem? What's the need behind that we actually have to fulfil, right? And especially for nonviolent communication, people would also talk about feelings, right? So how does this make me feel you feel right, so thinking about that, and then coupling those feelings also, to our to our needs? And if you transfer this nonviolent communication actually to code reviews, Next is observation impact request rule, right? It's very similar. So whenever you're giving feedback, you're thinking, first, what's the observation that I'm seeing here? What's happening in this code and try to describe it as objective as possible? And then what's, what's the impact that it has? Right? So let's go back to this example that we have. And this method has 1000 lines of code, right? What's the impact? So much code makes it hard to read, for example, right? So it would be the impact? And then you have to request? Could you maybe, you know, split that up in several different methods like this, or you know, maybe you give some references depending on whom you're talking to? Yeah,

Fabio Rosado

that's really interesting. Yeah, the only thing I remember about the five A's or something is because I'm a I'm a cabin crew. So flight attendant. And this is one thing that we get drilled into training is the whole how to deescalate a situation, which I think for the airline that I work for, we are quite good at deescalate situations, because we never had, or we had one case of physical assault, but we always were able to de escalate a very bad situation. That's what you said, it's, it seems really important when you're dealing not just with code reviews, but with everything. Yeah. So you said the book is from Roswell? Do you remember the title?

Dr Michaela Greiler

Yes, nonviolent communication from Marshall Roswell, I think,

Fabio Rosado

Okay. I'll look and that and then I'll put it in the description as well.

Dr Michaela Greiler

It's really good. I mean, it's an old book, but I think it's there's a lot of almost everything is still, you know, the same valuable as it was before. It's not directly for code reviews. But as you said, you can use it for everything, right. It's very powerful if you're a parent as well, for example, dealing with your kids and dealing with kids feeling as well, right? Because very often and also be partners, very often we are very judgy, we are very evaluational, I don't know, I have a lot of evaluations in our in our spoken language as in our written language. And so just this first thing, changing from you know, evaluation to observation can be very powerful. For many things. Yeah.

Fabio Rosado

Is it just the fact that when you say something, in a evaluative way, the other person always feels attacked, in a way, even if you're trying to come in a positive light. Sometimes folks are like, Okay, this person is trying to attack me, or because, you don't know, I'm not good enough for this. And then all these doubts that we struggle every day, they always go around our heads, like, Okay, so this was attack, I need to attack back so that I'm going to get the book and I'm going to read it from cover to cover, I think,

Dr Michaela Greiler

yeah, it's really good i really recommend. And, you know, it's, it's not only that they feel judged, but it's also that evolution has a lot to do with our values, right with how we were raised, how we are growing up our environment that we are used to, right. So all that baggage comes with the evaluation that we are doing, and it's very independent of the observation that you did, right. So I, I have a few nice examples that I actually have in my code review of workshops that we are discussing there with my participants, right. And so for example, let me let me get one on the top of my hat. Let's say you say, Doug procrastinates. So you're coming to your to your colleague, and you say, well, actually Doug procrastinate. And then the question is, is that now an evaluation or is it an observation?

Fabio Rosado

I think it can be both.

Dr Michaela Greiler

Yeah?

Fabio Rosado

Yeah. Because you are observing that the Doug procrastinates but also, you're saying that so you are sort of judging Doug's actions?

Dr Michaela Greiler

Well, when we are looking at this situation, then procrastination is actually a verb, it's a verb. So that's why we feel maybe it's an observation but it's a verb with an evaluation, evaluative connotation, right? And what we actually observe is probably not doc progressing it in because We can't judge we can actually say, but we see that he hasn't started working on a project. Right? So that would be if you're if you're taking this context, and you're really thinking about what would be the observation on this whole situation, it would be, well, Doc hasn't started the work on this project.

Fabio Rosado

Yeah.

Dr Michaela Greiler

And this is independent of the evaluation, right? And there are many, many of those things. And I think if you if you train that a little bit, you get really good at it. I mean, you have to I try to do that actually, every day, especially with my kids. Because Yeah, I think it brings you to a new level also, in your relationships, they are much richer and there is less finger pointing and blaming. If you manage to, you know, you have to train your your thought process and just your Yeah. Did you detect that you're doing this? Right? So whenever I'm doing it very often, I know Okay, now I wasn't very, you know, judgy . I was very, I made actually an evaluation, and then you can change it next time. Yeah.

Fabio Rosado

So you do workshops, you're writing a book, you also stream because you are doing the 30 days challenge?

Dr Michaela Greiler

Yes,

Fabio Rosado

creating a product, you do talks? How can you be so productive? And what's your secret?

Dr Michaela Greiler

It's probably always how it looks outside, right. But I'm actually quite okay. Right now, with what I'm doing. Yeah, I always would love to do more. I always feel like I'm not doing enough. Right. So I would like to add another thing. For me, I think it really comes back to this balance that we had the very beginning, when we were talking about it, though, I have two kids. And so with those two kids actually unimportant things really, they disappear? To be honest, right? I just don't have the time. And I'm very, very focused on prioritising what I do and what I don't do. I definitely struggled more with that, when I had more time, and I had a lot of time at my hands. You know, it was very easy for me to, you know, do a lot of work that's actually hasn't a lot of impact, or is not very important to me. And now I'm very laser laser focused, at least, on prioritising and making sure that whatever I do, really, it feels like it has an impact, whatever that impact may might be, right? I just wanted to do it. Like, the tool that I'm building right now is a tool that I wanted to do forever. And I just said, Well, now I'm doing it right, this, there is no, every time that I'm just thinking of doing it is not the day that I'm doing it right. So the tool I'm now doing, but for everything else, I really see that work just takes all the time that you have. And you give also right. So yeah, I feel I'm getting more productive, and I'm having more and more balanced life, if I'm going more out with my kids in nature, enjoying more than are also more productive, because I have really a free, a free head to think about what's important, you know, and where, what, where do I want to be in, you know, let's say, two, three or five years, something like that.

Fabio Rosado

And I think if you're doing what you really love, it doesn't really feel like work anyway. So...

Dr Michaela Greiler

I don't feel like working since a very long time. I I only had like a very short time during my university when I was working at a large corporation actually as a also in software engineer, but very, very strict rules in this organisation. And also like we had like a punch card, right where you go in and then it punches your your time. And then you have to sit there exactly for eight hours and 15 minutes, because every minute for break is calculated and things like that, right? And very similar to how this culture in the company was was also the work, right? So people were extremely unmotivated there. So we were sitting, you're also not allowed to go and have a coffee, right? So if you had a coffee others would look, this is just how management transported the message, right.

Fabio Rosado

And that's kind of management. It's never great if you want your employees to both be happy and productive, because it just feels like you're in shackles and you can't do anything. And if you do anything or even if you think for yourself, people will just think that you are weird. And the whole culture is against that. Anyway, that's how things were built. And the more freedom well, between boundaries, but the more freedom you have as an employee, the more valued you feel, and the more you feel like you want to give yourself more to that work.

Dr Michaela Greiler

So when I was working at Microsoft, we had a lot of freedom as I said, I was I was at the office almost every day, but if I wouldn't come I could, you know, it would be okay though. They were they were trusting that I will do my work to the best that you know i can and and the people around me were really motivated. I mean, maybe you know, you'd like to have some Word odd one out. But in general, people are super passionate, super motivated. That's how I experienced working there. And then in the other larger Corporation, you know, they were telling you what to have on your desk, you know, there was a clean desk policy, you didn't have to have pictures of your family, you didn't have to have post-its. As I said, people were, if you're going for coffee, others were also instructed to look and see, you know, how long are they now in the coffee kitchen? And is that too long? And people are really afraid. Like, if you talk a little bit too long, the they would say, Oh, you know, oh, it's already seven minutes, we have to go back. You know, it's not official break time and things like that. But also, at the same time, I have never seen people that were so unmotivated, and so unproductive. They came up with all different ways on how not to do their work. Right. And we, I mean, some people played games, video games, right. But very secretly, somewhere that nobody sees it. And, you know, so the whole the whole motivation of the people hadn't been the maybe the, the ambitions that they were like, how can they circumvent this really strict rules and not be so miserable, right? So I, I wasn't there very long, I did an internship there. And I just thought, Oh, my God, if this is like, if this is how I have to work, I just can't. But this was the only really the only very negative experience where I had that I felt like my work feels like real work and a drag to go in. I was very happy when there was like the six months were over. But since then, during my PhD was the same, right? It was very independent. In my work, I was very passionate about what I was doing. I wasn't feeling like I was working was also a difficult time because I was working way too much. I would my past self for would also and give a lot of advice on not to do that. But... Yeah, so if it doesn't feel like work, it can also be a little bit dangerous. But yeah,

Fabio Rosado

now that you say that, so there is always a question that I asked to the guests when they come to the podcast. And you already said a bit that don't work too much. So if you're looking at 16 year old Michaela what piece of advice would you give yourself?

Dr Michaela Greiler

Probably, yeah, probably, to be less in love with the work and more in love with myself.

Fabio Rosado

Which is a good thing.

Dr Michaela Greiler

Yeah, take more care of yourself. Right. So people are exploiting a lot. Right? So I definitely was used, especially people that are passionated, you know, love their work, that are young, naive, right? So I think workplaces, they're not really there to support you. Let's put it that way. And so just to be more careful about that. And, and to think about yourself, how you set yourself up for success. I think this is something that I could have done better previously, and if somebody would have shown me how and told me, you know that I should do that? Definitely. That would be a good advice. Yeah.

Fabio Rosado

I love that we always hear Oh, maybe we should start networking first, maybe we should start learning these technology first or something that's, but I think this is actually the first time that someone said, think about yourself. Because...

Dr Michaela Greiler

Yeah,

Fabio Rosado

we are machines anyway. So if you don't take care of your machine, then you won't be able to do a good job and be productive and everything. And I've noticed that... So I stopped drinking coffee for the last three months. And my first month, it was amazing. I was being extremely productive, with lots of energy, and everything. And then after the second month, I was back to normal. And I thought that's weird. And I realised that the only change that I've done wasn't just drinking coffee, but I started running again. And then the second month, so last month, last month, two months ago, I had a really busy month at work, so I couldn't really, or I could but I was just too tired to spend one hour running. So I didn't really do as many runs as I would like to. And I've noticed that that energy boosts that I thought not having coffee was actually not because of not having coffee, but because I was working out more. So yeah.

Dr Michaela Greiler

Yeah, it's really important. Yeah, yeah, physical health is really I mean, it's also something that I'm struggling with, to keep you know, just to keep it and and not to let it slip and let let others define your priorities are also like your work, you know, somehow defined, you know, itself is the number one priority, but actually having having a healthy body and you know, doing the best that you can do for that right. Is is so important. It's so important. And I can tell you, I was very sick at one point, and it was definitely at least made worse by the fact that I was not taking care of myself, right. So I was thinking other things. Some more important than especially if you're very young, you know, it's easy to slip into that, that spiral where you think all you can do it forever, right? Yeah.

Fabio Rosado

And this kind of job is very easy for you to not take care of yourself, because you're sitting down a lot of times. And there's a lot of unhealthy habits that can come with that. So yeah, definitely.

Dr Michaela Greiler

Um, recently, I saw a tweet. I, unfortunately, I don't remember who did it. But it was like, it was a question. And I was really fascinated by this question. It was the question like, do you think you are a brain with a body attached to it? Or are you your body with a brain? Right? Hmm,

Fabio Rosado

that's interesting. I would say, I'm brain?

Dr Michaela Greiler

Yeah, with a, with a body to tell how just you know, part of it tells you right. And I feel the same very, very often. And I think this is really problematic, because because we are thinking so much, right. And we are just our brain and everything like the sensation, the body, the sensation, it's, this means also running right or doing sports. This brings you back that you're a little bit more balanced, right, that you're not only your brain and what you're doing with, you know, I mean, little bit of the hands, right? You're using the hands, but there's also not really sensation, right? There is not like, it's not very physical. It's very mental. And so yeah, I found this question really interesting. And I, I also I'm like, I'm brain with body and it's really neglected. Right. So I think it's important to step away and think, well, it's not only right, you're everything. And so I think physical exercise definitely helps with realising more than something is exhausting. So sometimes I cannot get out of my thought, spiral or something, right. So

Fabio Rosado

yeah,

Dr Michaela Greiler

The thoughts are coming in, I cannot really stop them. And I'm like, I'm like the victim of my own song. And can't sleep. But you just have to do exercise hard enough that you cannot breathe anymore. And I tell you all your thoughts about like, have to breathe. Which can be so good. I mean, this can be so good. Because it definitely for me, it stops all these useless thoughts about everything else. Yeah,

Fabio Rosado

have you tried journaling that I find it that really helps me to try to quiet my brain. So I do it in the morning and effect at night. My brain is still on 100% doing wanting to do everything I can to sit down a bit and just write everything that's on my head. And that tends to help me to at least have a proper night's rest. Otherwise, my brain would just keep on going like you say, and that spiral, always thinking about stuff.

Dr Michaela Greiler

Yeah, no, I so i, i journal from time to time, but not that regulary, especially since the kids are there, unfortunately, I would love to go back to and to make it more a habit. It's right now it's not possible. But what I see for myself, for example, I cannot work in the nights anymore. This is is totally unhealthy for me. So if I would I work until let's say half past nine. But that's really the latest latest latest that I can work because if I'm working longer, I cannot fall asleep. It's just Yeah. It's, I really think that work is a little bit like a drug for me. And so I'm like completely, completely on drugs. And if I would lay down and I'm getting nervous, I want to stay up. I want to finish whatever I started doing. Right. So yeah, unfortunately, there's not really a lot of place that I can give it right now. I hope I will do it more. But I started doing a little bit is like videos, short videos. But it's also not very regular thing like very private videos, right? Like, yeah, yeah,

Fabio Rosado

that's where the routines really help when I'm working for me to be hard, because it's shift work. So I can't really wake up earlier than what I do already. Because I really wake up two hours before the flight. So sometimes I'm waking up a half, two in the morning to get ready. When I'm off, which is I have a lot of time off. That's the good thing of being a flight attendant, I tend to do the first hour I sit down, write all the things that I want to do, and schedule my day. And then I spend that half an hour just writing free flow writing. And then one hour before bed, I tend to switch off all the electronics. And I tend to just read or write a bit if my brain is on that thought spiral, like you said, and that tends to help me a bit. But it's one of the things that if I don't do it constantly, Hmm, I tend to lose the habit. And then I fall back to the same bad habits of saying on the phone until I go to bed and stuff. So yeah, that that usually helps.

Dr Michaela Greiler

Yeah, yeah, generally is, I think a very powerful thing. I also like going back to old journals and reading what I thought at that point. Yeah,

Fabio Rosado

it's always interesting. I haven't had the courage to look at very early ones yet. But yeah, I think maybe in a few years, I think it would be interesting to go back. And look, when I started this journey to wanting to become a developer, I think it'd be interesting to see all the things that I struggle. And yeah,

Dr Michaela Greiler

then sometimes it's really also surprising. I, you recently found a journal, back when I, when I finished university. And the interesting thing is, I finished university when there was the regression in 2008. And so it was really hard time at that time to get a job.

Fabio Rosado

Yeah,

Dr Michaela Greiler

companies were just not hiring and coming out of university, you don't have any, you know, experience and people definitely pass on you. And so I'm thinking back, yeah, and reading them, what I thought and how I'm going to do things and then ended up it's interesting. Yeah.

Fabio Rosado

And I think now we are facing a similar time with the whole virus situation, it's probably one of the worst times to find a job. But also might be one of the best times to change a job because if you are out of a job, then maybe doing that jump to technology, or just that idea that you have in your head, if you lost your job, just use that time to do it whilst looking for a new job, or dedicate 100% of your time to do that. That is to help. We've been talking for one hour, so I don't want you to take more of your time. Although there's so many more things that I would like to speak with you.

Dr Michaela Greiler

Yeah, I really enjoy it, I think could go on and on.

Fabio Rosado

If people would like to find you, you have a podcast, which is called software engineering, unlocked Yes. And also, where is the best place for people to get in touch with you to talk to you to listen to what you do to read to what you do?

Dr Michaela Greiler

Yeah, so I'm fairly regular on Twitter. I think this is definitely a good platform to reach out or you know, to go and get in contact with me. My website is where there are my my blog posts about code reviews, my workshop you can find there. It's actually my name is michaelagreiler.com. But because this is so complicated, actually bought a new domain. It's called awesomecodereviews.com. It's a little bit easier.

Fabio Rosado

That's a good name!

Dr Michaela Greiler

Yeah. And yeah, there's everything there are my my workshops are their link, my book is their link, right, which isn't, isn't available yet. But there's like a early adopter or early reader list that you can hop on to. Yeah, I think that those are the places were mostly visible and also on Twitch. So if you want to follow me there, doing my my 30 day product thing right now.

Fabio Rosado

Yeah, I will put all your social links on the description, and also on the website where the episode will be live. So if people are interested, they can see all the things that you do and they are a lot of things that you do. Yes. Okay. So thank you so much for having the time to speak with us and I hope you have a good day.

Dr Michaela Greiler

Yeah, you too was really nice being here. Thank you so much for inviting me. Thank you