After the first-ever Mobile DevOps Summit

Note: An updated version of this post is published on my newsletter, SIGMA. You are invited to read it there, and subscribe if you want to get more content like this.
https://sigmanewsletter.substack.com/p/after-the-first-ever-mobile-devops-summit

Last week, I attended Bitrise’s Mobile DevOps Summit 2022. It was a one-day virtual event packed with dozens of talks from people all around the world. As someone who spent more than ten years in mobile development and has a full-stack background, let me start by appreciating the notion of “Mobile DevOps” and Bitrise for taking it seriously. If I’m being honest, there were times in my career when the usual DevOps felt like force-fitting for the mobile and it’s great to see the shift in how the industry is approaching mobile-related operations nowadays.

If you haven’t heard of this event or didn’t have the time to participate, I highly recommend checking out the agenda and watching the sessions you find interesting, they’re all available on demand.

Before sharing my picks below, I’ll say a few words on the event. When I saw the agenda for the first time, with 25-min talks back to back within almost 8 hours and in parallel, I wasn’t expecting to survive after the first half. Things actually played out quite nicely for me, and I think the credit goes both to the speakers for preparing their talks short and concise as well as to the moderators for being mindful about the time. Although sometimes the talks were just cut-off after the 25-min remark, most of the times there were enough time to wrap things up.

Here’s my top 3 from the talks

#1 – Best Practices in Automated Testing by Ron Diamond

Ever since I started to feel like getting a grasp of BDD and its potential, I never stopped thinking about the ways of implementing it. I believe it’s a never-ending process – there’s no one-size-fits-all way of doing it, and that’s the exciting part. But what are some practices to apply on the fundamentals to make your life much easier as you invest more time on the upper layers of your test suite? Look nowhere else because this talk will give you lots of food for thought.

Bonus material: Blog post by the author

#2 – The Journey to Weekly Releases at eBay by Wyatt Webb

There are a lot of “easier said than done” things in software engineering. Release process is definitely one of them.

Have you ever worked on a project where you built the right thing, you built it well and it works and everyone’s happy, you pop the cork in the champagne and then you find out that it’s not going to be deployed for three months?

If you want to know what situation your company is in, try to deploy “hello world” and see how long it takes.

Talk by J.B. Rainsberger – The Economics of Software Design

Okay, this talk might not be about the example I quoted above, but I don’t think it’s too far away as it’s for shortening the release cycle. How easy is it to reduce your release cycle by one day? Maybe fairly. Two days? What about three? If you are releasing bi-weekly, then what about cutting it in half!?

So, what I liked about Wyatt Webb’s speech is that it’s not a concept, it’s a demonstration and an aftermath. I believe there’s a lot to learn there, but thankfully for us, from the easy way.

#3 – Level up your CI for iOS and macOS by Philipp Hofmann

Can you get away with not speaking about automation and optimization in a DevOps event hosted by a CI/CD platform? (Why would you, anyway) This one is a bit more technical and iOS/macOS oriented – Philipp impressed me with great tips and tricks for getting the best out of Apple frameworks for your CI.

Bonus material: The decks

And finally…

Here are some other talks that I enjoyed – hope there’s something for you!

Kindle: Resurrection

Note: An updated version of this post is published on my newsletter, SIGMA. You are invited to read it there, and subscribe if you want to get more content like this.
https://sigmanewsletter.substack.com/p/kindle-resurrection

I always wanted to be a regular reader – a person who reads at least several books a year, if not a month. I tried ways like setting goals for intrinsic motivation or publishing progress for extrinsic. Purchasing a Kindle was another step in that direction, taken more than a decade ago.

Just like the other things, the Kindle didn’t help. Not that I had a problem with the product, I just didn’t know what to expect from it. Although it took me a while, I finally came up with my own strategy for being a regular Kindle user. Below you can find what I discovered along the way.

1. I cannot replace physical books with Kindle

Whenever I wanted to read a book, I would first look for the Kindle version. I always thought the activity of reading would be much easier that way. This may be true, but it just isn’t enough for me. I’ve come to realize that I enjoy reading physical books most of the time and don’t mind the inconvenience of holding them or rotating their pages.

2. I must keep myself away from distractions, physically

Even when I am reading something on Kindle, any kind of phone notification or a “quick” Google search can get me drifted away from the current activity for good. In order to avoid that, I position myself in the farthermost corner of the room from any other screen. “Just don’t look at other screens” doesn’t really work for me.

3. I must manage my mental capacity wisely

If you are not a native English speaker, an English-to-English dictionary sometimes does more harm than good. Even if you have no problems understanding it, your brain still works much more than it would with an English-to-your-language dictionary. Then, reading becomes exhausting and less appealing over time. Using a dictionary in your language significantly reduces this mental overhead. The great thing about Kindle is being able to use multiple dictionaries at a time, so, you can still resort to alternative translations.

These are all about how I think I should use my Kindle, what about what I should use it for?

Contrary to this post, I figured out what before how. As my inbox was flooded with new issues of engineering and leadership newsletters every week, I tried to read my way out of them pertinaciously. This turned out a failure on a computer for two main reasons: It didn’t feel very healthy for my eyes and I was keen on dropping reading as soon as I get a distraction. Printing the newsletters wasn’t an option either as it didn’t feel sustainable in the long run and was environmentally questionable. That’s when I was reminded of my Kindle, laying in some drawer, out of battery for weeks (maybe even months).

So here’s what I’ve been trying for a couple of months: Once or twice a week, I skim through the newsletters in my inbox and send the ones that look interesting over to my Kindle. Most of the issues I receive contain lists of other articles so there are a lot of links I need to go through, but the whole exercise does not take more than 10-15 minutes.

Successes
  • Sending to Kindle is somewhat convenient (on an iPad or using the Chrome extension): I just share the webpage via the Kindle app/extension and it appears on the device with a reasonably good layout
  • My inbox remains clean and up-to-date
  • As I don’t keep seeing unread newsletters, I am less anxious about them
Improvement areas
  • After just a couple of weeks, the content on Kindle is too hard to manage. Using collections helps, but the slow hardware doesn’t (I recently discovered that I can organize the collection on my phone which is in sync with Kindle)
  • Moving the unread content from my inbox to my Kindle gives a false sense of accomplishment: I have to keep reminding myself that I must read what’s in my Kindle inbox before there’s more
  • Layout issues on the output when the source material is enrichened with embedded HTML, like tweets, etc.
  • Delivery to Kindle part feels less fun every day and is hard to automate

Optimization comes after going from 0 to 1, that is why I am still in the process of evaluating successes and consistency before setting my eyes on things to improve. Thankfully, there’s nothing that’s not workable.

See my instantaneous and continuous reading lists from here.

The app you built has to be on the App Store (as long as it compiles)

Note: An updated version of this post is published on my newsletter, SIGMA. You are invited to read it there, and subscribe if you want to get more content like this.
https://sigmanewsletter.substack.com/p/the-app-you-built-has-to-be-on-the-app-store

Back in the day when I was getting into cycling, although I didn’t know what to expect, I knew one thing for sure: I had to pick the bike with the right frame. It didn’t take too long until I found myself inside an ocean of parameters because I came to notice that bike frames had many attributes alongside the size. One of them was the angles of where the parts meet each other and depending on these, the bike would give you a different ride experience like a comfortable one, or an aerodynamic one, and such.

I was serious, and I had to pick not just any frame, but the best for my needs. Well, there was a problem: Not every buyer or seller cared about every detail, and I wasn’t able to find all the details of the frames I was looking at, more specifically, the angles within the frame body.

So I came up with an idea: How about I make a small app that’s just for solving the problem at hand: Measuring the angles on a given photo. Did I do that right away? Yes. Did I use it for measuring angles on bike frames? Yes. Did I get the “best” frame for myself? No, but that’s another topic. What followed all of these is that I decided to put that app on the app store. It was awfully primitive, probably had the worst UX ever, and the code behind was… Catastrophic, to say the least. But I wasn’t expecting anything, to be honest. It was a small effort for me to publish and I would be more than happy if it just helped someone, somehow.

The app was being downloaded and used over the years, but I wasn’t getting any feedback, although that was fine. The thing about the internet is that it’s like a sea into which you throw your bottle with a note. You don’t know what will happen to the bottle, or if someone will ever read your note, but most importantly, whether you’ll ever get a response. Because we all fetch other people’s bottles, but we don’t always respond.

Well, after 3 years, I received a bottle. It was from a senior who presented himself as “a blue-collar guy or laborer” who had an injury at work and would never be the way he was. He had to measure the angles of the stairs he fell to see whether they match the industrial staircase requirements. He wanted my help because he thought that he was not educated in this discipline although it was a simple calculation (I told you that the app UX was horrible). He wanted to pay me for my service but I refused since I was more than happy to help, then he asked for a charity that he can donate to instead. I was just a guy who uploaded the app he built for himself, and not only did I help a handicapped senior from the other half of the world, a charity was getting a donation because of me! I was speechless.

If I had taken a perfectionist decision, I wouldn’t have released this app. If I hadn’t spared the small amount of time to put this online, I wouldn’t have released this app. There were so many reasons not to release it, but I did it anyway, and it took only one person to make me appreciate my decision.

I have 3 other apps on the App Store alongside Angles in Photo: One app for cross-multiplication (yes, I made an app for that, and yes, people use it), another one for checking the glycemic index of a food (I was quite obsessed with my nutrition once, we’ve all been there), and another one that I built when Safari was getting very slow on my old iPhone so I decided to build the simplest web browser that doesn’t do 1000 things in the background. Some of them have advertisements to help me pay my bills, but they’re all free to use. People do use them, and people do give feedback, although I never show the care I’m supposed to – but that’s the whole point, and if I was obsessed with that, I wouldn’t have kept them online, and no one would be using them.

You might not always appreciate what you do, but that shouldn’t mean that other people won’t. If they won’t, you won’t lose anything, but if they do, then you realize that something that’s too little for you might mean a lot to someone else.

Oh, I had another feedback for Angles in Photo, saying “Helped me get through my divorce”. I can’t imagine how that happened, but, there you go!