Back from the Holiday break
Some learnings from our company meetup, scaling down social media, CosmosDBSome learnings from our company meetup, scaling down social media, CosmosDB. What if...? What to remove? Better us of my time, and some learnings of using CosmosDB in a new project.
Dave: Hello, and welcome to the podcast. I’m your host, Dave Albert. In the show, I talked about technology, building a company as a CTO, and co founder and have guests to discuss their roles in technology and entrepreneurship.
Dave: We’re back after a break for the holidays and the rush of the end of December. I’m finally back with some more episodes. I’ve got a number of great interviews, lined up interviews. That’s not really the right word. You know what I mean? I’m guest episodes where I get the have some unique discussions with some very interesting people. We had our bi-annual I guess team meetup, where some of the, the folks we have in India came over to visit and had a number of team sessions. I think we got ourselves in a really good spot procedurally , we worked on how we were going to work with product board to make the work more visible, more targeted at the actual value that gets delivered and are using it a bit more within our stand ups. And that’s making grooming go a little bit better. This was before the end of the year break. So last week was a little rocky just because so many people had taken some time off and we needed to reorient ourselves after the new year. There were a few things that I’ve really realized and learned between the team sessions and what I found after after the break that I wanted to share.
So one of the first things will be that we had this session during the team meetup that was called What if so, we had we just the proposed questions, or Julie had some questions for us that we all gave input on before the meeting the week of the meetings, and she organized it into this, what if session, so I can’t remember all the different what ifs. But for instance, what if we had to acquire a certain number of users within a month without taking into account budget or anything like that, just to think more creatively about different areas that we’d already been, you know, working on, but how we might be able to trigger some some thoughts that hadn’t occurred to us by removing some constraints and adding additional constraints that weren’t there before, I thought it was a really useful session to that is not so far off of how the episode kind of birth and the episode with the podcast kind of got rolling after that first rough year, it was kind of what if I just started doing it, but they’re like, separate different types of positives, I suppose the the idea is to take some some specific area that you’re trying to work on. And, you know, it was kind of like a brainstorming tool, I suppose. And then afterwards, you can go through and refine what is really doable, let’s not we I know we came up with a number of no brainer things throughout all of our sessions. And that’s, that’s really one of the greatest things about having the whole team together, is we go through and identify some of the longer term, what are some of the, the more idealistic ways that we might go and achieve some of our desired results. But then also, it’s easier to spot things that we just should obviously just do now that don’t require large amounts of planning or large amounts of development work, they’re small steps towards our goals that we can make quite easily. It just seems so much easier to do that when we’re all in the same room together. And if map things out more visually, with, you know, post it or flip charts or whiteboards or, or things like that.
Another bit of a session we had was on, is there anything we need to remove from Medit? So obviously, as people creating a platform, and now you’re always trying to add elements that are valuable for the users. But one of the things that I always want to make sure that we do is come back around and think, what is it that is here that we’ve put a lot of work into? Yes, but is not really bringing anyone value, can we remove that, but what can we remove? If anything, there’s not always something that can be removed, but you need to definitely remind yourselves to ask that question regularly. So you know, the the theory of where you don’t want to get rid of something, because I was already spent so much time, effort, money, whatever, on creating, implementing learning whatever is there that thinking that you must still stick with it, because of the costs that you’ve sunk into it.That’s a fallacy that was the word I couldn’t grab earlier. So the fallacy of sunken cost. So we didn’t necessarily come up with, well, yeah, we kind of did come up with a session a section of the app that isn’t working well, and it probably makes sense to remove it soon. And then rework how it might be used. So it’s our lists. So lists are lists sources, or his collections are collections of articles. Now, obviously, that’s easy to say, in a in a descriptive way. But it’s much harder to represent it to the users, at least it has been for us so far, and it just isn’t working. We don’t have many people using them. But we have ways in mind for how we can make it a much more valuable feature so that that they’re just the brought me to the addition by subtraction. I just on that is a really interesting concept. And I’ve kind of been doing that with my own life, not as much as I would actually like to. But for instance, I removed a bunch of social media apps from my phone, I realized that I really wasn’t getting value from it, it was just provoking outrage. And that was all it was doing. So I found myself only reading deeply any medium articles when I disagree with the topic. So now, I’m not saying that everybody’s that way. But it’s just the general tone of the way social media goes, is that either you’re finding things that you agree with or disagree with. So it’s either confirmation bias or outrage.
That seems to be the only thing that I was getting from most of my reading in medium, Facebook, LinkedIn, all the inputs like that the either short to medium form, even dev.to it’s it’s a great community. But I still personally I was just using it to fill my somewhat my little bits of downtime, understanding of the coffee machine or on the boss or waiting for the train. So I removed those, I still have Twitter because I do communicate with some people on there. And I still have a number of messaging apps. But what I’ve done is I’ve moved those to my second screen, my first screen as mostly podcast, listening at Spotify, music, blingkist and audible, I have a few other tools there that I use often. And actually the bottom row, I’ve now removed all the constant communication apps and things that require deeper work. So now I’ve got calendar, Evernote, voice memos, and Asana. So I’m using Asana. Now, I change this a lot, trying to figure the right way for me. But I’m using Asuna as a list of my current tasks. So I still have things in trello and product board but a sauna is more for grouping the things of the work that I need to work on. But I’m I’m not sure how how, how much that will actually continue. As of this week, I’m trying to get back to working from my calendar. So that should start to negate asana, maybe, I don’t know, you know, it’s a every six weeks or so and trying something a little bit different. because I haven’t found thing that works for me for managing all of the work because the admin and finance elements that I need to sort out don’t really fit on our development board for Trello and they definitely don’t fit in product board. So instead of having an additional Trello board for me, which I’ve done, and they just didn’t work out either, I’m trying, I tried Asana and that was working well. But now I’m going to try to work for my calendar again more I’ve done in the past. And it worked pretty well. But I think the biggest mistake I made in the past was, well, I couldn’t have my phone near me turned up, or I would see all the notifications came on. Board I’ve been doing is my phones on airplane mode a lot of the time now and only turn it off of airplane mode. Either when I’m expecting some important or urgent communications, or when I’m ready to deal with things that will send notifications. So when I go to bed turned on airplane mode and then at a point in the morning, which I haven’t turned it off yet, because when I get up early, it’s 4:35 am. So it’s still on airplane mode. And it probably will will be until I get into the office.
I use the time on the bus for a little bit of deep thinking. Since I’m you know, confined to a specific place and can still use some of the applications that are need to to reference things so well. I’m gonna make sure to sync Evernote the night before and have my Five Minute Journal. At least from the day before. I’m still sorting out the right time to send that so that I’ll have it before so that I can do that on the bus. Because I have a If This Then That that sends the new note. But I think I’ve currently got it set for because that was before I started using the airplane mode trick. But I’ve found that my phone is a lot less stressful to be around now because I don’t need to know the instant that somebody sends me a notification in the morning. All that does is basically turn my day into trying to catch up instead of getting some of the little bits done that I want to make sure to have done as as the first part of the day, the recording episode when when I have one or post an episode, which actually actually do the posting in the evening as I’m finishing up. But the only time I can really record an episode is first thing in the morning before the kids are up and the house is too noisy. So that’s that’s why that is first thing I want to make sure I get done. Then deep thinking on the bus, so if if I don’t have notifications, then I won’t be just running around chasing my tail by the time the days over and have never thought about what I really want to accomplish within the day. And then I’m trying to catch up during stand up of what I actually need to get done instead of being able to think about it. And that kind of came from another thing I wanted to ask to talk about which was the the actual deep work itself. So I didn’t do a great job of taking as much of a break as I wanted our plan to, I got a little antsy and had to get back to the writing some code. And there was there’s this project that we’re working on that I needed to answer a lot of big unknown questions on because this project is for the partner of ours. And it’s even though we will work in an agile fashion, but the specifications are truly a waterfall ordeal, we have to make sure to nail down everything that’s going to be involved early spec out the estimates of how long it will take to build it, because it’s based on some payment and some internal costs and some external costs. And it just it’s one of those things that if we don’t get it at least close, which you know, these things never work out accurately. Because estimation is impossible for anything of any complexity. And this is actually turned into them quite quite a bit more complex project than expected from the initial discussions. So I had to do quite a number of prototypes. But because it was during the break and no one was in need of anything from me basically started a couple of days after Christmas and got more than a week to work on it were mostly I was trying to get the just the timings. But what it turned into is a lot of the the base work of the app. And I felt so productive doing it every last it was because I wasn’t jumping over in the notifications and hopping into the 19 different conversations, which, you know, there was one of the things that we had brought up within the team before the break even before the team meeting was that we treat slack a little too urgently. And the new strategy is, unless stated, otherwise, slack discussions are not urgent, or at least not immediately urgent. So there’s no need to respond to every notification instantly. And I’ve usually done a good job of hiding. So I set my mind to do not disturb mode, I had been turning my phone to silent and turning it over. But now so that I can work from my calendar, once I’ve synced the calendar and set it in airplane mode, there are no notifications other than the calendar. So that actually works really well for that instance. And actually, I’ve been I’ve not been using the slack app, I’ve been using it in the web browser. And so I actually close it so that I don’t, I don’t actually I only see it in the past, I’ve already turned the badges off on email and slack. Because I always see those on on the Mac, I don’t necessarily want those turned off on the phone because I do kind of want to see those when I’m in the moment to look. So it’s just another reminder of why why you can get so much more done. When you’re actually deep in the work. I made a lot of really what I think are solid decisions on the way things will be built that will enable enable us to to build it quicker and more more stable. So to be more stable the development process.
I’m just I want to make sure that I’m putting bring that into the new year already, this assists about midway into into January 7, okay, not not quite midway, but quarter of the way I suppose. So the deep work which ties into the addition by subtraction of removing all the things that that so that’s basically my only New Year’s goal wouldn’t really call it a resolution. But to remove things that don’t make my life better have done a good job of moving sugar and a lot of processed foods. So I’m eating healthier already just removing the things that made me feel worse. So that’s that’s actually helped a good deal to with my focus, I’m able to focus more because I’m not having so many, you know, bodies that crashing because of the coming off of sugar highs or get less inflammation in the body. So I feel a lot better by removing sugars and highly processed foods and I can keep that up now that I’m back to the office this week. And the other thing that this this project that have worked on that actually, you know, was for the estimations that actually turned into the base of the project. I also was able to use Cosmos TV from in a Greenfield project to actually see how we might use it format it which I’ve talked about in a previous quick take about how the collections are not the same way that collections are in Mongo, we’re with Mongo, you have a different collection where it makes sense with cosmos. That’s not really the way it is because it’s it seems to be more of a Mongo API over top of Elastic Search. So having separate collections does have a cost with it in in computing terms, but also in Azure costs. So having all of your data in one collection is the the only affordable way to do it, or at least a small number of collections. But every field is indexed unless you explicitly turn indexing off. So that means that by building different ID signatures, I was able to use that in this project at a smaller scale. Because this this project, even if financially, it becomes a large scale project, the user, the number of user simultaneous users would be handfuls because it’s a it’s not a mass scale type out but it is complex and has has a lot of requirements and can deliver a lot of value, but not for a lot of people at a time. So it should be much easier to to deal with. But this has given me the opportunity to make sure that with using Cosmos that the app would be much easier to scale, because data is basically the only thing that’s persistent. We do have, it does have a caching layer in it using Redis but that is really more for sessions for the CMS then for the actual usage part. So it’s, the persistent layer is really only the data. So it’s going to make it a lot easier to to scale at the scale, this would go. So I was able to do what I had anticipated from that earlier episode of using a signature. So for instance, user, so something like user colon username, and then colon a version number. So this application has some requirements for being able to roll back things not so much the user but you have multiple people who will be making changes to the different types of content in the CMS and when that happens, you always want to be able to to roll back even if that isn’t necessarily one of the first things that you build in need to be able to get to that otherwise one user may accidentally make a mistake and that affects a lot of other users. And that’s never a good thing. So by doing that, only searching for the signature and its act of true you then find the right version so it’s pretty easy to to see all the things that are active and still be able to roll back version because they all match that signature. So if you don’t look for the active ones then you can stay back through and because the version numbers are automatically incremental through each save then it’s it’s easy to to make sure to to store relevant information that was used in the past and easily update going forward obviously you could do that with any database but I was able to do that where each different model of data follows the same pattern so that using a single collection actually makes sense.
That is pretty much all I want to discuss today I think I’ve got a few more interesting elements but those should all be separated into different quick takes. I said earlier that I’ve got a number of really interesting guests lined up we have to finalize the dates but actually hope to be recording one or two this week and then definitely within the month there should be a number of episodes with guests that with guests that I’ll finally be able to arrange it’s really hard to get people together during the run up to the break for holidays and the end of the year so that was that was a bit tougher then expected so that’s why there were no episodes in December. But were about 30 minutes it’s a bit shorter than I had expected but it is what it is so I hope I brought you value as always you can email me [email protected] or on Twitter. As I said, I still have that on my phone @Dave_Albert. Thanks for listening.
Until next time, remember, any sufficiently advanced technology is indistinguishable from magic.