Zappos Gear Tracker on MapMyFitness

You’ve got the goals, and Zappos has the gear! has partnered exclusively with MapMyFitness to bring you the revolutionary Gear Tracker.

Learn more at

We’ll help you keep track of every mile you put on your shoes, alerting you when it’s time for you next replacement. With thousands of styles from the industry’s top brands, 24/7 customer service and “Fast, Free Shipping” and returns we can help you run, bike, walk, or hike your way to your fitness goals.

Available on the Apple App Store, Google Play and Web.



AthleteTrax is a startup simplifying sports management with a platform that allows coaches and players to stay organized with practices, games, and more. AthleteTrax provides a cloud-based team management solution to reduce the headaches and hassle of running an athletic team at any level. This is also a great concept for athletes and administrators, as it has a video sharing feature for practices and workout routines to help improve games. Users also have access to exclusive deals and travel and apparel discounts.

Did someone say apparel and gear discounts? AthleteTrax is certainly something to keep an eye on for athletes looking for superior customer service and a vast selection of performance gear.

Learning Java: Blackjack

Project: Write a program that allows a human user to play a simplified version of Blackjack against a computer opponent. Make it as cool as you can. Programming by Doing –

Blackjack is a card game of probability between the player and the dealer. The objective is to beat the dealer. Get 21 points on the player’s first two cards without the dealer Blackjack and you win. If you reach a higher sum than the dealer without exceeding 21 then you win. If you exceed 21 or have a lower total than the dealer then you lose.

Getting Started

This project was a starting point to learn about classes and objects in an object-oriented language. It was a fitting first project, who doesn’t love a good game of Blackjack living in Las Vegas. I’m going to trace my approach, explain where to start, and the basics to make sure your code is “playing with a full deck”.

  • Create a new classes: Blackjack, Card, Game, Dealer, Player
  • Current Card –  This is an instance variable holding the current card.
  • Total – Instance variable
  • Dealer Total – Static methods will hold the dealer or the player, the program doesn’t care which.
  • Player Total – This static will hold the player total to compare dealer vs player at the end.
  • Random – New random to generate a random card.
  • Scanner – Input whether you want to hit or stay
  • Constructor – Chip bet goes right into the game
  • Trace Logic – Deal, Display First Card, Generates Random number 2-11, Display Second Card, Generates Random number 2-11, If Thens on Dealer and Player Turns
  • Who Won – Prints outcome using If and Else Statements

Project Add-ons:

  1. The dealer has infinite amounts of chips.
  2. Cards are drawn randomly from multiple decks.
  3. The player can continue to play only when at least 1 chips in hand.
  4. Splitting or doubling rules are not implemented.

Real-world game sequence:

  1. I created the elements that are important to the game in the code as a complete beginner.
  2. You sit down at the table, a new game begins. You put your chips on the table, dealer begins the game.
  3. 2 cards are dealt to you. I used while, if, else  here to check if any Aces are dealt. These are methods from the If Statement section.
  4. Dealer deals 2 more cards, with one facing up and the other down.
  5. Player inputs signal to the dealer whether to Hit or Stand. The game follows outcome logic from there on.
  6. It’s commonplace to play several hands of Blackjack in one sitting, but based on your bankroll. So this is taken into account by asking the user if they want to keep playing.

What’s going on in the app:

What made sense for this project was to make a diagram to map out the Blackjack app. When making classes I can always ask , what is the data I want my class to hold and do I want command will be used to print the next step on the screen? Here is the link to my Blackjack project on gitub.

Blackjack. java

import – Used at the beginning of a source file to specify classes or entire Java packages to be referred to later without including their package names in the reference. 

Player Bets – “How many chips do you want to bet?”

Check Number of  Player Chips – “You only have: newGame.player.chips + Chips.”

Deal Cards to Player and Dealer – Check for Aces

Game Score – A new scanner to select if you want to hit or stay.

The instance variable holds the current hand’s bet and the instance variable holds the card and the dealer values. This part of program doesn’t care whether it’s a dealer or a player.


What defines a card? Without getting complicated, it’s the value, generated by the random number generator. This data is only available within the card and making a constructor is the method we use to create an instance of our class card when we use the new command in the game.

You can use a switch statement to return the name of the card, but I chose just return the value and not to implement names. A switch statement is pretty simple, it gives you the option to test for a range of values for your variables. They can be used instead of long, complex if statements.


We’ve got the class for Dealer here , which defines the number of chips the dealer has and creates an instance of the dealer score.


We’ve got the class for the new game here, which defines each new game hit, stand, and points for both the human Player and the Dealer.

Create a boolean command to declare a points variable that can store a boolean value; that is, either true or false.


We make one more class called Player, this represents the “human player” and the Dealer. The other information relevant to the player is the hand (cards) and the chips in the bet.

There are two instances tell the program how many chips the player has and how much should be allocated in one particular sitting of the game.


Computing Logic

Similar to the create your exercise, the card game’s logic is core to what you actually build. Example: Your dog wakes you up in the morning (A) roll over (B) take him for a walk. Selecting (A) roll over begets further logic. Your dog feels ignored then chews your favorite shoes (A) roll over (B) buy new shoes on Zappos. And so on…


This is basically what a shell of a Blackjack game looks look like and there are many different ways to build it. This is a beginner project, the next step is to make it graphical. This project is a part of a Java development boot camp at Zappos.

Thanks for reading!

Quantified Self Meets Customer Service

The “Quantified Self” movement just got more amazing because of the new Zappos partnership with MapMyFitness. Starting today, you can now purchase shoes directly from Zappos on MapMyFitness mobile app! The new Zappos Gear Tracker allows users to track their gear directly on the MapMyFitness mobile app for Apple iOS. It will alert users of their footwear usage and prompt them to replace their shoes on Zappos upon reaching their final logged mile.

My team had the opportunity to wear many hats (which pretty much sums up Business Development at Zappos) starting with leading the partnership vision after an introduction email to MMF,  to negotiating this awesome partnership, and acting as product manager for the launch. When runners, hikers, walkers, cyclists are training for a 5k or just staying fit, Zappos will literally be there every step of the way!


Lastly, here are some ways you can help:

1) Share the news. Twitter, Facebook, Linkedin, somewhere else. Give some love to this blog post or one of the articles covering it. CNET

2) Download the app and see how cool the product is. Go for a run, hike, or walk and start tracking your gear!

3) Let me know what you think in the comments or email me at kyle at

We also had the opportunity to dabble in a “Producer” role while helping shoot the commercial (coming soon) for the partnership.






Facebook Start Offers Resources For Mobile Developers


Facebook Start is a new program that gives new or seasoned mobile developers a free package of tools and services. There are two tracks, Bootstrap for those who are just starting out and Accelerate for the more seasoned developer looking to scale their app into a real business.

Any mobile developer with an app that has been live for at least 30 days may apply for a free package of tools and services worth up to $30,000 from several partners.

Adobe Creative Cloud – Creative services
Appurify – Mobile app testing
Asana – Project management
Blue Jeans – Cloud-based video collaboration service – Customer support app
HootSuite – Social media monitoring
MailChimp – Email marketing – Mobile app prototyping
Quip – Mobile productivity suite
SurveyMonkey – Online survey platform
Transifex – Localization
UserTesting – Usability testing
Workable – Recruiting

To be considered apply for FbStart, the application looks like this simple form below.


6 Common Roadblocks to Deals

roadblocks to deals_ start at goThe word roadblock is rarely a positive thing, primarily in business and especially in traffic. To be hindered, barricaded or slowed down can cause a great loss in a business deal’s momentum. However, if we examine the signs of roadblocks and approach them carefully, we can save ourselves from an uncomfortably bumpy road ahead.

6 Common “Roadblocks” to Deals

1. Can’t

I will refrain from exemplifying the multiple times I’ve heard “can’t” tossed around in meetings as a way to quickly shut the door on an idea or project. The more appropriate and less cowardly word ought to be “won’t.”

When it comes to business most things can be done, but it takes a great deal of thought, time, and problem solving to weed out the good from the bad and finally make a decision to not do something.

2. Risk

Evaluating risk is a critical part of any business deal and partnership. The health and reputation of the company are always at stake and are what matter most. There have been instances where a potential deal seemed sweet but the risks were too sour, and I inevitable had to close negotiations and walk away. Short wins do not always equal long term success.

3. Resources

Tony Hsieh once said to approach  problems as if you have unlimited resources to solve for it. The reason is because it will help uncap your thinking beyond the boundaries of money, labor, land, and other economics of a deal or new business venture.

4. Change

Nascent ideas may be misunderstood for long periods of time. And you must be willing to be fine with that. There is a long list of companies who didn’t embrace shaping their business to the market and the market to their business. The open internet beat AOL. Netflix beat Blockbuster. BestBuy is essentially the showroom for Amazon. Bottom-line: Don’t be averse to growth opportunities that change your business.

5. Group-Think

A mistake too often made is relying on consensus to make decisions. The most entrepreneurial characteristic of Biz Dev in both small and large organizations is that nascent ideas may be misunderstood for long periods of time. This is okay.

While some may not fully understand the perceived changes that can come with new ideas, it is important to keep an open mind, challenge the doubt and commit.

6. Ego

You can’t trust business partners whose ego clouds their understanding, economics, and motivation of a partnership. You’ll always be looking over your shoulder and constantly checking the mechanics of your relationship. Yes, you will have a water tight legal document, but their is no legalese or financial reward in the world that can carry an ego that might just sink you.