Retrospective Jan 14 – 20/ Planning: Jan 21 – 27

This week was fairly productive despite a few setbacks. An overall workflow is becoming clearer for me and I’m confident that I’ll still be able to meet my delivery date of end of February.

Learning Cocoa (iOS/macOS):

Work load didn’t allow me to move forward with CloudKit and In-App Purchase (which will get pushed back into early February). I took a deeper dive into sharing code by way of the DTSEssentials framework.

Last Week This Week
  • Generics in Swift
  • Sharing Code and Building Frameworks
  • CloudKit
  • Concurrency
  • NSURLSession

DTSEssentials Framework: Shared Code for iOS/macOS apps

Ran into some hiccups with the Generic List Table View Controller but I’m pleased with the progress that I’ve made. Testing in conjunction with an existing project has really helped.

Last Week This Week
  • Create Xcode project
  • Int Extensions
  • Date Extensions
  • String Extensions
  • UIColor Extensions
  • ViewCell Extensions
  • Storyboard Extensions
  • DesignableButton (IBDesignable)
  • DesignableView (IBDesignable)
  • DTSStyle (UIAppearance)
  • Test use of Framework with Gobo
  • Test use of framework with Puffin
  • Generic List Table View Controller
  • PopoverDataPicker
  • PopoverItemPicker
  • App Coordinator

  • Generic List Table View Controller

  • UIAlertController Extensions

  • Support for closures in UIButton target actions

  • LoadingViewController

  • ErrorViewController

  • ValidationViewController

Puffin (iOS): Daily Standup App

The biggest disappointment was that no progress was made on Puffin last week. I’ll be able to resume work on it this week.

Last Week This Week
 
  • App Icon Update (version 2.0)
  • Subtasks Feature
  • Standup Entry
  • Change Task Status
  • Quick Add for Projects
  • Quick Add for Tasks
  • Support Previous/Next swipe in Daily Standup View

Gobo (iOS): Nomad Travel Log

I’ve been moving along with Gobo and it has been the primary project for building out the DTSEssentials framework. Pretty excited and confident that I’ll be able to demo something by week’s end.

Last Week This Week
  • Create Xcode project
  • Add DTSEssentials Framework
  • Add Category icons
  • Create Models
  • Trip List
  • Expense List
  • App Icon (version 1.0)
  • CloudKit Support

Voice Over Work:

A pleasant surprise here as I picked up 3 gigs this week. I’m getting better at the the workflow, including setting up/tearing down my mobile studio.

Last Week This Week
  • 3 VO gigs
  • Create Fiverr Profile
  • Create Voice Bunny Profile
  • VO gigs as they come in

Health:

I’m in a good routine with the walking/cardio and will probably add a boxing workout back into the mix this week

Last Week This Week
  • Cardio: 215 minutes total (avg. 30.75 min/day)
  • Walking: 83,518 steps (11,931/day)
  • Cardio: (30 min/day)
  • Walking (10000 steps /day)
  • Boxing workout 2 times

Reading List:

Reading has been a total bust. I’ve just not made any time to do it. I’m constantly reading web articles and technical documentation but haven’t set aside any time for long form reading. I’m going to actually schedule reading time this week instead of waiting of it to appear.

Last Week This Week
  • Veins of Latin America by Eduardo Galeano (Part 1)
  • The Walking Dead (En Español) (Vol. 1: Dias Pasados)

Retrospective Jan 7 – 13/ Planning: Jan 14 – 20

IMG_5210I’m currently working on 3 software projects (2 apps/1 framework).  The goal is to get Gobo and Puffin submitted to the App Store by end of February with each using the DTSEssentials framework.

Learning Cocoa (iOS/macOS):

Ongoing learning to improve my knowledge in Cocoa/Swift:

Last Week This Week
  • Generics in Swift
  • Sharing Code and Building Frameworks
  • In-App Purchase
  • CloudKit
  • CloudKit
  • In-App Purchase
  • Concurrency
  • NSURLSession

DTSEssentials Framework: Shared Code for iOS/macOS apps

I’ve isolated some code that I find myself reusing and decided to create a library to shared code amongst my projects.

Last Week This Week
  • Create Xcode project
  • Int Extensions
  • Date Extensions
  • String Extensions
  • Generic List Table View Controller
  • App Coordinator (Router)
  • DTSStyle (UIAppearance)
  • Test use of Framework with Gobo
  • Test use of framework with Puffin

Puffin (iOS): Daily Standup App

I updated the design of Puffin and reworked a few screens. I removed a lot of view controller code, instead opting to use a generic table view controller. I look to be ready for alpha testing by week’s end.

Last Week This Week
  • Backlog Grooming
  • Project List View
  • Task List View
  • Standup History View
  • Daily Standup View
  • Update App Style
  • App Navigation Coordinator
  • Fixed crash when accessing Daily Standup
  • CloudKit Support
  • Subtasks Feature
  • Standup Entry Edit
  • Change Task Status
  • Quick Add for Projects
  • Quick Add for Tasks
  • App Icon Update (version 2.0)
  • Support Previous/Next swipe in Daily Standup View

Gobo (iOS): Nomad Travel Log

Last week, I got an idea for a new app, because of course I did. I started brainstorming and doing some initial basic sketches. It seems like a good candidate for testing the framework.

Last Week This Week
  • Create Trello project
  • Paper sketch for App Icon
  • Select app colors
  • Paper sketch for quick entry
  • Competitive Analysis with existing apps
  • Locate API for currency exchange
  • Define entry categories
  • Source category icons
  • Create Xcode project
  • Add DTSEssentials Framework
  • App Icon (version 1.0)
  • Add Category icons
  • Current Day View
  • Entry View
  • Create Models
  • CloudKit Support

Voice Over Work:

I’m working with an experienced voice over talent to get started but I’m going to create my own profiles on various platforms in the next few weeks to increase my chances of getting work. The beginning of the year seems to be a slow period. Hopefully things will pick up in the next few weeks.

Last Week This Week

No work

  • Create Fiverr Profile
  • Create Voice Bunny Profile

Health:

I’ve reset my workout plan and for the first few weeks am focused on a simple routine of cardio and walking.

Last Week This Week
  • Cardio: 238 minutes total (avg. 34 min/day)
  • Walking: 95,003 steps (13,571/day)
  • Cardio: (45 min/day)
  • Walking (10000 steps /day).

Reading List:

My book challenge attempt last year didn’t go well so I’m rebooting with just two books. I’ll try to read at least one of the books in the rotation in Spanish.

Last Week This Week
  • Veins of Latin America by Eduardo Galeano (Part 1)
  • The Walking Dead (En Español) (Vol. 1: Dias Pasados)

2018: A Year in Interview

So you want to talk about your 2018 New Year’s Resolutions?

I’d rather skip the stereotypical screeds about resolutions and jump right into the goals that I’ve set for 2018 and why.

But what about the goals from 2017?

2017 was a reset year for me. I only shipped a few small things (a prototype app for a friend and a few t-shirt designs that weren’t well marketed. I did some contract work for a few months and tried to launch a few other projects without success.

Why do you think that happened?

I lacked clarity of purpose. You should boil an endeavor down its essence. What is the most important thing? For most of the year, I was lacking that in the products that I was building. It’s primarily what stopped me from shipping. By focusing on the essential thing that a product does, I’m less likely to get distracted by feature creep or gold plating. Does it do the essential thing? If so, ship it! It’s never going to be finished anyway.

So how will you tackle this in 2018?

For me, it starts with transparency. I was apprehensive in talking about what I was building because I’d bought into the idea that talking about things impeded me from actually doing them. But there is also a benefit to doing it as well that I was ignoring. By being transparent, I can induce others to hold me accountable. For example, when I announced my plan to read 6 books in one month, someone unexpectedly followed up with me and asked how it was going.

A virtual “Accountabili-Buddy”?

Exactly. And by publicizing it, the onus isn’t on any one person and it’s completely voluntary.

Great! What’s on tap for 2018?

  • Ship 10 Apps/Frameworks
  • Complete at least 1 month of voice over work with trainer
  • 52 Blog Posts
  • Fluent in Spanish
  • Conversational in Portuguese

Depending on one’s perspective, that’s either very ambitious or very easy

True, yet it encompasses what’s essential for me. Weekly blogging about building the apps/frameworks fulfills my need to be transparent and underlying all of these goals is skill building in areas that I’d like to improve: speaking, writing, design and marketing.

What about those monthly income and expense reports. What happened to those?

I stopped doing them because there wasn’t much revenue to speak of from apps, tees and Amazon. I never felt comfortable including consulting income because the referee in me felt like that was “cheating” and those “points” shouldn’t count. However, I am working on an alternative outlet for the disclosure of expenses, as I still think there is value in sharing the cost of living in the places I visit.

C’Mon Man. It takes money to live and travel. You can’t act like it doesn’t count.

It does count but is it a good metric of success for these goals? Let’s take a look at my first goal: ship 10 apps/frameworks. If each one hits its target: doing the essential thing and existing in the world, I’ve already succeeded in regards to the goal. Sure there’s an ancillary benefit, the aforementioned skills I’ve built in doing so have increased my market value and I’ll be able to make a living from that. But regardless of whether I set goals or not, I’d still have to make a living. That’s table stakes.

So are you saying that you don’t care about the money?

I’m saying that if I’m successful in achieving these goals, I’ll be quite pleased looking back at 2018. Using income from these endeavors as a metric can muddy those waters, especially since it’s something that I can’t control. And why waste a year worrying about things I can’t control?

 

Star Wars: The Last Jedi

It is time for my fandom to end.

My love affair began at age 9 with The Empire Strikes Back, as it was my first memorable theatre experience. I had seen Star Wars but the feeling of seeing Luke and Vader battle in Cloud City, Yoda dispense wisdom while training young Skywalker and the beautiful set pieces of Cloud City & Hoth was a hallmark of my youth. It was evident in my toy collection: the Hoth base, Luke and Han in their winter gear, the snow speeder & Boba Fett’s ship.

After reaching the acceptance stage of grief that were the prequels, I held out hope for the new trilogy. So much so, that I gave the Force Awakens a pass for its insistence on nostalgia over story. It felt like it needed to pay back the long time fans for previous disappointments. I was wrong.

Each generation of Star Wars movies is speaking to a different audience. It’s message and tone are a byproduct of how stories are told in its respective time.

I’ve been eating at McDonald’s since I was a kid but the menu has changed immensely in the last 30 years. I still return on occasion (like yesterday) and I get the same thing that I’ve always loved (the Big Mac). But as much as I connect with McDonald’s and despite the number of years that I’ve supported it, it doesn’t belong to me. It never did.

Likewise, The Last Jedi story illustrates why this is so important. If we don’t move past the rigidity of the old ways, we become confined by it in ways that prevent us from moving forward. It would’ve been great if J.J. Abrams *The Force Awakens* was bold enough to make those choices as we’d now be well on our way to fully exploring this new chapter of the amazing universe that Lucas created 40 years ago. Thankfully, Rian Johnson was given leeway to do so.

Star Wars movies shouldn’t be about rehashing and reliving your favorite moments in the original trilogy. That’s what DVDs and Netflix are for. New stories should introduce new characters and take existing ones (including the Force) into new directions, boldly if possible. In this regard, The Last Jedi succeeds.

I’ve been bored of the Skywalker saga for a while. While I fell in love with the story as a child, it was the promise of the universe that kept me. It’s why I loved the Kevin J. Anderson novels. It’s why I watched the Clone Wars. It’s why I wrote a term paper on *Tales of the Bounty Hunters* for a science fiction literature course in college

My old Star Wars fandom is dead. All hail my new Star Wars fandom.