Go to homepage

Reid Main

iOS developer

  1. Archives
  2. Tags
  3. About
  4. @reidmain
  5. Email
  6. Resume

June 2020 Retrospective

Other than the ongoing global pandemic and growing sense that my career is atrophying, June was actually a pretty tame month. Elsie and I have fallen into a relatively productive routine and while it definitely could be improved upon things are going quite well given the circumstances. We are undoubtedly in a very lucky small percentage of people who are weathering the pandemic with very little negative side-effects. So let's not let this retrospective devolve into melancholy. Let's go ahead and see what good things came out of June 2020.

The Good

Got Ontario license plates for Nessie

It took over six weeks but I finally got the Ontario license plates for my Model 3. While the entire ordeal wasn't particularly painful it was needlessly drawn out because of my naivety. There were so many tiny things I could have done differently that would have sped up the entire process. Knowing what I know now I probably could have had my plates within two weeks of arriving because so many tasks could be parallelized. I made the (obviously stupid in hindsight) mistake of assuming the government bureaucracy was moving as fast as it could when in reality it was up to me to kick their tires to get shit done.

I am in the process of drafting an article detailing my entire experience of importing a Tesla Model 3 from San Francisco, California to Toronto, Ontario. My hope is that it will appear in someone's Google search when they are considering doing the same. And even though I am going to give them step-by-step instructions on how to do it, my first advice will be don't. It is not worth it in the end.

WWDC 2020

I've already written an article of my thoughts on the WWDC 2020 Keynote so check it out if you want the nitty gritty details. The first is that all the software upgrades look sweet, SwiftUI got a big upgrade and I am super excited about buying a MacBook Pro with Apple Silicon the moment it is released.

In terms of the rest of the conference, I really prefer this format over the old one. There was so much more flexibility in the structure of the sessions. When you are there in person you expect the sessions to be 30-45 minutes long because that is potentially how long you stood in line for it. When everything is virtual I actually enjoyed seeing a session was only 10-15 minutes long because they were always jam-packed with information and never overstayed their welcome. The WidgetKit code-along is another great example of a session that they couldn't possibly do in person.

I really hope WWDC stays virtual for 2021 and beyond. There is so much more Apple can do with this format if they are actually planning for it the entire year. The only part of an in-person WWDC I miss is the labs and networking which are easily things Apple could host multiple times throughout the year. Instead of dumping a ton of new beta technologies on developers and expecting us to ask detailed questions within 72 hours, how about letting them marinate a bit and host some labs a few weeks or months later after a beta update or two has dropped. Then when the updates ship in September what about another set of labs in October or November to work on production bugs? I am probably overthinking this but my point is that there is so much more Apple could do if they were forced to step out of their comfort zone.

Persona 5 Royal

Persona 5 was my 2017 Game of the Year so it should come as no surprise that I am absolutely loving Persona 5 Royal. Atlus took the base game, made all sorts of quality of life improvements, added depth to the battle system, and fleshed out the story and characters. There are so many little tweaks that even though I've played through this core story before it still feels fresh.

Back in 2017 I wrote:

If you are in the mood for an amazing JRPG with a super Japanese style story that is somehow still incredibly poignant to the political climate in the West, you must buy Persona 5.

and those words still ring true with Persona 5 Royal. It is currently my 2020 Game of the Year and with the number of delays that have happened this year I'm not sure what is going to unseat it.

Uploaded resume to this website

I should have done this years ago. Not having a PDF of my resume handy has bit me in the ass one too many times. I've always had to go find my laptop and rummage through the file system to find the most up-to-date version. Nine times out of ten I'd probably decide this was too much effort and just never send my resume to whomever asked for it.

No longer! Now I can just point anyone to my resume here and be done with it.

Shameless plug, if you're looking for an iOS developer with over a decade of experience I am available.

Wrote a guide to 3D resin printing

Last month I wrote about how I hoped to write an article detailing the exact steps I took to get started with 3D resin printing. After many drafts I finally managed to post it. It ended up being pretty rambly and I've been told it would be more helpful with pictures but it was definitely worth writing down. It helped me solidify my processes and I hope to practice them a lot in June with many more prints.

Bought an office chair

After much humming and hawing I finally made a decision and bought a chair for my home office, the Steelcase Gesture. It has just shipped as of the time of this writing so I haven't had a chance to try it yet. But from all the reviews I've read and testimonials I've received from work colleagues this chair does seem like one of the perfect "buy it for life" models.

Hopefully I'll receive it soon and can write a detailed review next month.

The Simpsons

The Simpsons on Disney+ finally fixed the aspect ratio of the non-HD episodes. To view them you simply need to go to the "Details" tab on the show page and turn off "Remastered Aspect Ratio". I honestly don't know why it is turned on by default but maybe most people today don't understand what black bars mean.

Elsie and I have gone through almost six seasons so far and some of these episodes are even more relevant today. The "Lisa vs. Malibu Stacy" episode stands out as a prime example.

The Bad

Gears Tactics

I played Gears Tactics up until the end of the first act but it just wasn't my cup of tea. The "boss" fight that ended the act really highlighted everything that I disliked about the game. Even though managed to beat it I immediately quit the game and haven't gone back since.

Your soldiers do too little damage, combat is too dependent on random number generation, and managing your soldiers is a complete chore. I never got attached to any of them because I did not enjoy customizing their appearance or equipment. I dreaded going out on missions because it meant I had to take five minutes and double check that the correct gear was equipped on each and every solider. It boggles my mind how that part of the game got shipped.

This game had so much potential but it feels like the developers got lost and couldn't tell the forest from the trees. They may have been so focused on making a more complicated, deeper version of something like XCOM but couldn't see how the complexity was not adding to the fun. If you want a turn-based, strategy game released in 2020, XCOM: Chimera Squad is a much better choice.

Played 32 matches of Dota 2

I played 32 matches of Dota 2 in June and went 13 - 19. Unfortunately I have no fond memories of any of these matches. I can't remember any being close, competitive games that were fun to play. I can only remember matches where I got stomped or got to do the stomping but in either case I don't remember any camaraderie. I just remember the angry yelling and racial or homophobic slurs.

I am stuck at Guardian 1, the lowest subrank of the second lowest rank in Dota 2. I have been at that rank for all 32 matches I played. I never moved up or down even a subrank. Any attempt to change my playstyle was met with hostility because if I am not behaving exactly like other players expect then I can only be hurting the team in their mind. I wrote a little Twitter thread of consciousness about this after I finished playing my 30th game.

I am scared for the future of not just Dota but all competitive multiplayer games. As time goes on these type of games seem to foster more and more hateful environments. The alternatives seem to be free-to-play games that are destructive in their own way by giving you that slow dopamine drip so you'll open your wallet.

Are the days of games like Quake Area, the original Counter-Strike, Unreal Tournament, or hell even Halo 1 gone forever? With how ubiquitous gaming and connectivity is maybe this is the natural evolution? Man, that is a very depressing thought.

Didn't finish Retro Rampage

Unfortunately after finishing parts 5 and 6 of Retro Rampage I lost all interest and didn't complete any more. There is a very fine line you have to straddle when writing technical walkthroughs. You need to explain things in a way that foster independent thought, while at the same time provide code to demonstrate what you're talking about. If you write too much and provide too little code it is easy for people to get bored or overwhelmed. If you provide too much code they stop thinking independently and simply look for the next block of code to paste. I've experienced these exact same issues at Uber when trying to write material to teach new employees.

I think Retro Rampage lands on the side of providing too much code and not encouraging enough independent thought. More than a couple times I strayed from what written because I wanted to experiment but immediately regretted it because my changes were affected by the next block of code I had to paste. I felt I was following Lego instructions rather than truly learning how to make a game.

I still believe this tutorial would be fun to do with a young child who wants to learn how to make a game. But I wouldn't make them follow along with what was written. I would go through the tutorial myself and think about how I would physically explain this to them and make them write most if not all of the code. The idea is that I can be more dynamic and react to how the child is processing the information which is obviously something a wall of text cannot do. Hopefully this way the child will feel more comfortable making random changes to the code rather than just trying to copy what is next. I haven't watched the video series Nick did on objc.io so maybe that is closer to what I am describing.

Buying a monitor

Having bought an office chair I figured it was time to finish the home office setup and choose a gosh darn monitor. Turns out that is much easier said than done especially with my complicated criteria. It is near impossible to find a monitor that has a high refresh rate, 4K resolution, charges a connected laptop and allows you to connect peripherals. I want to use this monitor for both my MacBook Pro and gaming desktop and if any of that criteria isn't met then the system falls apart.

I've tried to find switches or docks to alleviate the shortcomings but nothing seems to work. My hope was to buy a CalDigit TS3 Plus dock and connect everything to it. Webcam, microphone, keyboard, mouse, etc. Then I would simply switch the Thunderbolt and DisplayPort cables going into that dock between my laptop and gaming desktop. Sure it's two cables instead of one but that's not far from the ideal scenario. Regrettably I was not thinking about this situation when I built my gaming desktop and so I bought a motherboard that doesn't support Thunderbolt.

So we're back to square one. There doesn't seem to be an easy way to connect all of my peripherals so that I can swap between two different computers. That seems to leave me with only two options:

  1. Buy the UltraFine 5K and maintain two unique setups. Two keyboards, two mice, etc. Nothing is shared because I don't want to have to do any unplugging of cables whenever I want to switch. Obviously this is expensive and takes up a lot of desk space.
  2. Buy a 144 hz, 4K monitor and just accept the fact I'll have to swap like four or more cables whenever I want to switch. Or I could do something crazy like still have two keyboard and mice and just hide the unused ones away somewhere. But that won't work with the DisplayPort cable, microphone or webcam so it doesn't really save me that much.

It seems that having two monitors side-by-side (one for macOS, one for Windows) will at least ensure I have a solid environment for both that I can easily switch between. If I decide to upgrade to a 144 hz, 4K monitor in the Fall for Cyberpunk 2077 then I can reevaluate my the one monitor solution.

Audible syncing with Apple Watch

I had really hoped to finish listening to Words of Radiance on Audible this month. I was planning on running at least 100 kilometers and doing other sorts of exercising so I figured I had plenty of time. But apparently it is impossible for any app to sync things from an iPhone to an Apple Watch. Not even Apple's podcast app has been working properly for me.

Honorable Mentions

Finished reading The Lies of Locke Lamora

It took longer than I would have liked but I finally finished reading The Lies of Locke Lamora. It started out really strong but seemed to lose whatever tenuous grip it had on some semblance of realism as the book went on. I wanted to hear more about their realistic Ocean's Eleven type heists. Instead at the end we're battling wizards and disarming alchemical nukes or something. I went ahead and read the plot summaries of the next two books in the series and they seem even zanier so there is no chance I'm going to continue.

Current plans are to pivot to the Foundation series by Isaac Asimov.

Streets of Rage 4

Streets of Rage 4 was on Xbox Game Pass so Elsie and I took two hours one night and blazed through it. It is a solid side-scrolling beat-em up but if you really are in the mood for one of those I still think Double Dragon Neon is the gold standard for this generation.

Review May Goals

June Goals

#MonthlyRetrospective

🎮