I am moving my personal blog to bennorris.org (@bennorris) and keeping bsn.design to become more focused as my company page. Hope you enjoy my first post on the new site:
I wanna vacuum
Lessons in motivation from a six-year-old
I am moving my personal blog to bennorris.org (@bennorris) and keeping bsn.design to become more focused as my company page. Hope you enjoy my first post on the new site:
I wanna vacuum
Lessons in motivation from a six-year-old
My 9-yr-old walked over holding a slice of lemon, showing us that he was licking it. My wife said, βGreat! Those are really healthy for you.β
Son: βUgh, I donβt want it any more.β
Me: βActually, they turn you into a mutant.β
Son, pausing to consider: βWell, Iβll try it…β
These are a couple of wallpapers I sketched recently for my phone to help me with mindfulness. π§π»ββοΈ
π π§ Star Wars: Thrawn
By Timothy Zahn
This has been a great week. Iβm thrilled to release another new app: Carrier. For those times when you went to message someone and realized it was the wrong time, but forgot later, now just schedule it. Learn more here.
As I return back to work after a nice vacation with family, I have to face questions about motivation and whether I am doing what I really love. I submitted two personal apps over the break, and was reminded how much I love building and creating and delivering. At work, I am now a manager, and have the opportunity to help drive our mobile strategy, but it also means that I get to code and ship much less. I am finding this to be a drain on my soul. This doesnβt necessarily mean that I need to quit or change jobs or anything that drastic. But I need to make sure that I am managing my time effectively so that I can continue to do what I love, even in the context of what I need to do. There are (almost) always opportunities for carving out space to do what feeds your soul amidst the daily pressures of commitments you have made. I am not sure where I see myself a few years from now, but I know that I need to be intentional about it. Hereβs to a productive December!
π π§ Star Wars: Outbound Flight
By Timothy Zahn
Happy Thanksgiving all! Even in a crazy world, there is so much to be grateful for.
π₯ Fantastic Beasts: The Crimes of Grindelwald
Really excited to ship my new app Agendum just before the holidays. If youβve ever needed to present or run a meeting, check it out here!
Iβve been working on a new app the last couple months, and Iβm getting really close to wrapping it up and shipping it. Such a great feeling!
Feeling lucky to be a dad today. Halloween is such a magical time! π
π π§ Star Wars: Vision of the Future
By Timothy Zahn
As I wrote about last month, I was able to speak at Cocoaheads on some work we have been doing with Xcode UI Testing. I am speaking again tonight at a different Cocoaheads group, which is exciting for me. I had created a sample project for my presentation last month, but lost the project when my computer died and had to get the logic board replaced. I have recreated the sample project, and am happy to share it here:
And just in case you would like to download the slides for reference, here is a link to the PDF:
π π§ Star Wars: The Last Command
By Timothy Zahn
π π§ Star Wars: Dark Force Rising
By Timothy Zahn
π π§ Star Wars: Heir to the Empire
By Timothy Zahn
π Rules of Deception
By Christopher Reich
Feeling like a lucky guy today. Brought my daughter to a teen motivational conference and my wife encouraged me to take the day to relax and recharge. π°π»πβΊοΈ
π π Into the Silence: The Great War, Mallory, and the Conquest of Everest
By Wade Davis
Just before the dark, a brilliant burst of light
At a Cocoaheads meetup listening to a presentation on shortcuts and tricks in Xcode. I was reminded how important it is to keep learning and realize that you will never know everything. New knowledge can always come from unexpected sources.
Last week I had the opportunity to present at our local Cocoaheads meetup. At work, I have been focused on testing more as of late, and have been working to get our UI tests in much better shape. I adapted an approach that our Test Engineering department has been taking with automated tests for our web apps. Essentially, we create a page object to represent each screen in the app, and include all of the elements, actions, and verifications needed for that screen. Then the actual UI tests just reference the page objects using the exposed API of actions and verifications. As an example, this has changed a call from this:
XCUIApplication().tables.children(matching: .cell).element(boundBy: 0).staticTexts["2018-07-03 20:45:14 +0000"].tap()
to this:
.tapOnCell(at: 0)
.
I have really enjoyed the productivity boost this has given us, along with the safety and security of good test coverage and wanted to share this approach with the community. Included below is a PDF of my presentation.
Update: The talk was recorded and can be viewed here.