Blog

CocoaConf 2016 Cyber Monday Special

CocoaConf has announced a 20% discount on their blog for Cyber Monday for all 2016 events. I had the opportunity to speak last year and will be speaking again this year in Seattle. I've met some of my best friends at CocoaConf. You'll learn a lot, meet some great people and have a wonderful  time.

2016 Schedule:

Chicago, IL: March 25 – 26
Austin, TX: April 15 – 16
Seattle, WA: May 6 – 7
Washington, DC: September 9 – 10
San Jose, CA: November 4 – 5

Details on the promo code here: http://cocoaconf.com/blog/2016-us-tour


Profile Protoype Exploration

I love Principle for Mac. It has quickly become one of my favorite prototyping tools. I often use it really early on when exploring design concepts. This is an example of a profile study I put together to explore different interactions. You can try (and then buy!) Principle here: http://principleformac.com/

principle


tvOS Parallax

With the release of tvOS, a primary focus (pun intended) is on layered images. Apple provides a really nice parallax preview tool for your app's assets. The model in this prototype is Emily Ratajkowski, which I jokingly call this Ratallax.

Resources:


Lembas iPhone App Prototype

Since it's New York Fashion Week I have been thinking a lot about digital products that could enhance the shopping experience of a shopper. My friend Lana is the owner of a store called Lembas, which sells handmade jewelry and bridal accessories. I asked her if I could use her store as an example of a prototype to build. She also makes some amazing products, so consider shopping there!

lovisaarmpiece001

One problem often encountered in shopping is a way to preview or get a vibe of how something might look on you. Context and occasion are key. I decided to explore ways to integrate a preview experience that seems supplementary to the use of the app; remaining useful while not being the primary focus.

In this prototype I knew I wanted to use the iPhone's native camera view and decided to use Form, a prototyping tool by Relative Wave (recently acquired by Google). At first glance Form has many similar aspects to Quartz Composer. I like to work with nodes and patches because I like to visualize prototypes in a radial fashion.

form

I essentially created a camera view that lives at the bottom z layer of an app, almost like a drawer you could access as if you were reaching for a mirror.

In an ideal world, I would get 3D rendered images of the jewelry, but since this is a prototype I took one of Lana's photos to mask out the object.

mask

For prototyping, I often work with Sketch paired with a prototyping tool in parallel. The level of fidelity I use is as much to get the idea across.

lembas

IMG_1188

 

Here is a quick video of the prototype I put together.

[pexvimeo pex_attr_src="https://vimeo.com/139134265"][/pexvimeo]

You can learn more about Lembas here. Follow on:


"iWatch" Sketches

A few sketches I did months before Apple Watch was announced, in speculation of use cases for it.

tumblr_n0g8rjjbZP1qzpb7uo1_1280

tumblr_n0g8snPNaN1qzpb7uo1_1280 tumblr_n0g9jfLWhY1qzpb7uo1_1280

 


What a raid in Destiny teaches you about product teams

Note: This post contains spoilers about the Vault of Glass Raid in Destiny. If you have no idea WTF I’m talking about, you should be fine to read on.

The title of this article alone might clue you in that a liberal arts graduate wrote it. How could someone possibly write about some video game and compare to something as complex and high-end like shipping software? Well, the truth is that software isn’t as hard as people may think and Destiny is harder than people may think.

1-VUg7_Bf6KcICeEy9HEalIw

If you are not familiar with Destiny, it is a first person shooter created by Bungie (most notable for making Halo). It is a massive-multiplayer shared world environment with certain role-playing game elements to it.

Destiny takes place in a mythic science fiction universe. Players are allowed to choose three classes: Titan, Warlock, and Hunter. Each class has unique abilities, strengths and weaknesses (sound familiar?).

1-TOzYArtvUYU0aDWvZD8Gug

In Destiny, there are several modes of play, from single player missions that you can play cooperatively with up to three people (called a fireteam), player vs. player (PvP) in the Crucible, player vs. enemy (PvE) patrol missions where you can complete bounties to gain experience points.

One of the most notable modes is the raid, which is not an uncommon mode in a lot of MMO games (though Bungie avoids saying it is a MMO but does have traits similar to one).

The raid is a six-player cooperative mission that is very difficult, highly complex, requiring excellent communication, and high-level abilities and gear. Sound familiar?

Shipping products.

Unlike other modes of play, the raids have very minimal instruction and require players to figure out the mechanics themselves. Though raids have checkpoints, they must be completed in a week before the weekly server reset on Tuesdays.

Going over the storyline of Destiny would be a multi-post series in and of itself, so this post assumes you have played Destiny, so there could be some potential spoilers. However, if you are familiar with gaming and know the concept of a raid, you’ll be just fine. If you need a quick overview, Sir Wallen does some excellent videos about the lore of Destiny.

Our Clan

I am going to speak specifically on experiences of our clan (Army of Dinklage) regarding the raid. Coincidentally, our clan is made up of a lot of friends from Seattle Xcoders, so the correlation of playing Destiny and shipping software is familiar to us.

At the moment, there are two raids: The Vault of Glass and Crota’s End. We will focus on the Vault of Glass as it is our clan favorite.

Leveling Up

The character structure in Destiny allows you to choose between three classes: Hunter, Titan, and Warlock. In product teams, we have: Designer, Engineer, Tester, Product Manager, and many more.

Within the three classes each has a subclass. At the moment there are two, but with The Taken King update, there will be a third one for each character. Each subclass has elemental powers to them: Void, Arc, and Solar. These three elements are encountered during the game, such as enemies with shields. For example, if an enemy has a solar shield, a solar-based weapon or subclass will do far more damage than a normal weapon.

Bil Moorhead, our CTO at Black Pixel, often likes to describe certain roles with sub-classes. I will speak about my domain, design, specifically for this. Within the designer, he or she can have many subclasses are specializations: information architecture, visual design, prototyping, etc.

This means you simply cannot say “Oh, let’s put an engineer on the project” and assume that because they are an engineer that there will be no issues or challenges. Perhaps the engineer is more of an architect who specializes in CoreData, but you put her on a UI-heavy project. Specializations are important to consider in the decisions you make to solve a problem.

I play as a Hunter, which has the subclass of Bladedancer (better for closeup attacks with arc damage) but often will have to switch over to Gunslinger (focused on solar attacks with longer range) for certain areas in the raid.

Characters are able to level up to 34. Players are able to level up based on experience points and the amount of light special armor produces. As other RPGs, you are allowed to play modes at higher levels while your character is lower, but it will be much more difficult and you will hold your team back. You’ll encounter enemies that can resist or be immune to your attacks.

Like on product teams, sometimes you are not qualified or ready, and you need to level up. In recent conversations with friends who are looking for work on a product team, this is a recurring theme. They are not ready and need to polish their skills a bit more.

When I first started playing with my clan, my character was only Level 24 and I was literally useless. Some enemies displayed as a double question mark (??) which meant they were immune to my fire. Though they were still nice and invited me to play with them, I felt like I wasn’t contributing at all. What I had to do was spend time on my own running through some of the other game modes (like Crucible, patrols, and strikes) to level up my character to become more effective.

Like on your product team, you need people to be leveled up appropriately to be successful. This depending on the type of challenge or product you are working on. Is your product Easy, Medium, or Hard? You can get away with a Level 27 designer on easy, but not on hard.

My philosophy on product teams is I do not want people on my team where they will likely fail. This does not mean I expect everyone to never fail, but they need to be in a position to succeed as well. If I have a Hard product, I’m brining Level 34s on the team.

The Vault of Glass

1-iMNtd-EGnyyU2BlEz88iJQ

Destiny’s first Raid was released about a week after the game came out. The Vault of Glass (VoG) is located in the Ishtar Sink on Venus. The beginning of this raid really emphasizes the teamwork you’re going to need to display. To even enter it, your raid team must protect three sink plates that will create a spire that will open the entrance. Enemies attack you and sacrifice themselves to take down the sink plates. If they succeed, your whole team has to start this process all over again.

Establishing the Plan

1-kddIpmfO-M3J5BzqFHugWA (1)

This screenshot below is our team planning the next section we need to accomplish. The ultimate goal is to defeat Atheon (the final boss) but before we are able to achieve that there are challenges we need to take care of first to even put us in a position to fight Atheon.

Planning is very important when you play with new people. In my first run, Chris Parrish (@twenty3) would shoot at certain areas and the tracer would show me what to look at. While doing that, he would explain the goal we need to achieve and brief me on what sort of enemies we would encounter and what to expect.

1-C15-dHB8TOwElbQ0QoWtfw

There are a few sections we are able to sit (quite literally) and talk about the plan.

In the stage of the raid where you fight the Templar, there are a series of enemies that appear, with primary targets called Oracles that you have to take out. These are priority zero targets because if you do not destroy them everyone dies.

We made our game plan to account for that. In this diagram below, you see we have a 6th guardian (usually Gus Mueller) on the platform to cover every area. Gus (@ccgus) plays as a Hunter which is skilled in sniping and long range attacks, which gives him more range than the other guardians. It is important to find the right personnel to fit the responsibility.

1-xAm4gZRTMQfoTFyK9F78kA

The Plan Goes Wrong...Very Wrong

So, that did not go as planned. Any time we create a strategy, something unexpected happens: someone dies, the weapon loadout was suboptimal, etc. If you have ever worked on a product, you know that plans change as soon as you establish them. People leave your company, new requirements come up. There are so many factors that are out of your control, and adjustments have to be made to succeed.

We often create fallback plans and re-assign guardians to cover in a different way until we have all six members again. In the diagram above, if I am at Position 2, and Position 1 goes down, I need to shift over and cover between both areas.

People Screw Up...a Lot

I cannot tell you how many times you fail a part of a raid because someone screws up. Quite often, it is because of me. Certainly there are people on the fireteam who get frustrated, because you get so close and because of something you messed up on, the mission failed and everyone died.

However, our clan is very supportive, and say things like “Don’t worry, we will get it next time” and value running through things in order to get the hang of it.

When we fail, we often spend a bit of time to discuss what happened to make adjustments. Maybe I felt too overwhelmed by having to cover two zones if someone dies, and I need to cue Gus in on covering that area with his sniper rifle more to help me out. Maybe something did not get communicated well enough and an Oracle did not get destroyed in time.

Constant Communication

In some ways, I think I communicate in Destiny better than most places I have worked. In a raid, communication isn’t optional, but essential. At first it actually feels a bit cheesy as it feels like conversing on CB radio but the communication is required in order to be successful.

1-L5sh3NfvY0yCoZ-BnYV_wA

A good example of this is at the end when you face Atheon, Time’s Conflux. In this final stage of the raid, there are two portals (one to Venus, and the other to Mars) that hold a relic that your fireteam must get in order to use it against Atheon. This relic will allow you to have a shield that you can fire through to attack Atheon.

The trick about this is that only half of your team is transported, and the other half of the team is at the gatekeeper. It gets better…the people are randomly teleported, so you cannot choose who gets sent through. What we realized we had to do is designate people to be the relic runner. We created a system in which three of our team members are highly skilled at running the relic.

The relic team has to call out what planet they are on in order for the Gatekeeper team to know which portal to protect, while the Gatekeeper team has to fight off enemies to ensure the portal is clear for the Relic team to come through.

1-q1_e0cXeF7NUlmgN1JF8HQ

Once the Relic team is through, the Relic Runner can create a shield so everyone can fire on Atheon.

1-rTUfUw6kh_PFVNpv1h93DQ

A few good iterations of this together and Atheon goes down and the raid is complete.

Empathy

Yes, you can learn to be more empathetic while playing Destiny. I was talking to one of our clan members (@darrylhan) as we were playing the other night about designers learning to code simply to have more understanding of what their team members have to go through to implement or solve a problem. It creates mutual understanding and respect.

Darryl mentioned it is similar to a part in the Vault of Glass with our friend Jake (@jakecarter) who is the relic runner. There is a certain point where Jake will always call the two of us to come to the middle of the map so he can cleanse us. The cleanse has a limited range and requires both guardians to be close together to effectively do it. I never understood this until one time I actually had to run the relic myself, which basically was like this:

1-Ii6SMrJfHSBDp4bqkj9tEA

From that point on I understood where I needed to be to be more effective for Jake to do his job. I still never run the relic (nor do I ever really want to) but I make everyone else better (including myself) by understanding.

Progressive Enhancement Through Practice

Jake was not always a good relic runner. It was something that he had to learn through running through the raid several times to understand its mechanics and strategy.

This is basically the reason we love playing this game. Weapons have specific mechanics and properties that make them usefule and bad. You can upgrade weapons and change specifications to your liking. You have to spend a lot of time to master tools and techniques that work for you.

Ultimately, you will assemble a collective of people with great skills who can help you ship something great.

Play Often and Play Together

Your product team (and fireteam) are people you see just as much (if not more) than some of your loved ones. It is important to support each other and expect the best out of them.

The thing I enjoy most about Destiny is playing together with friends. I honestly believe I am better friends with the people I play with because of the time we spend together.

To have the best product team, the principles are simple: Work hard, be dedicated, and have fun. Ship software…so you can play Destiny.

Our clan motto: “We Try Hard.”

1-4refk499BdCDbXpjHCxIYg


Cell animation prototypes

https://vimeo.com/131626155

I've been inspired by my friend William Van Hecke (User Experience Lead at Omni Group) who has been posting daily on his blog about thoughts on design. I will try to follow his example by writing daily as an excuse to use my 12" MacBook (yay) but may not post everything. However, what I will do instead is create a design prototype once a week. I'm doing a presentation in July about creating prototypes with Origami and will share these prototypes eventually on my GitHub account.

This project is an exploration of the behavior of cells. In this fictitious app I explored the idea of custom cells that can expand. This allows a user to tap on a list of people to contact them.

I also wanted to prototype the behavior of marking something as done. This gesture recognizer interaction is popular among many 3rd party apps on iOS. In this prototype, swiping slightly will be conditional and show a user a checkmark indicating that "This will be marked as done".