Wednesday, October 8, 2014

Legos, a Panda and What I Learned about Culture and Running a Company from Watching Kids' Films

As adults, we create stories for our kids that are meant to convey moral lessons; we create stories and movies that entertain and educate. Sometimes we would do ourselves good by listening to the morals lessons we weave for our children and apply those lessons to our own lives. I recently watched two animated children's movies that taught me some lessons about business that I won't soon forget. Those two films are The Lego Movie and Kung Fu Panda. Both of these movies each feature a normal main character (well as normal as a talking lego man and martial arts practicing panda get) who accidentally stumbles into the hero role and spends the whole movie searching for the special ingredient that will help them vanquish the villains in the films (President Business and Tai Lung, respectively). In both movies, the moral of the story and the resolution of the search for the secret to their success is the same. The secret is that there is no secret; the special is inside of each and every one of us and only by looking inside of ourselves and believing in what we are trying to accomplish can we be successful against our enemies. Managers and leaders in organizations can learn a great deal from this message; let's look at the scenes of the movies where these messages occur and what we can learn from them. Ultimately, The Lego Movie and Kung Fu Panda both teach us valuable management lessons about creating cultures of success.

In The Lego Movie, Emmet Brickowoski is facing down President Business. As President Business is about to complete his dastardly plot, Emmet holds up his hand to President Business and asks him to take it. He explains that his secret weapon of the special entails believing in what we can do together. Emmet says, "I want you to join me. Look at all these things people built." President Business then complains about how all those people built things that disrupted his perfect, orderly world. Emmet responds, "Ok, what I see are people inspired by each other and by you. People taking what you made and making something new out of it." Throughout The Lego Movie, the viewer learns of a central conflict between the master builders (innovators, creators, builders, founders) and President Business (monopoly on fun, micro-manager, etc). As a leader and manager in an organization, it is important to hire and create a team of master builders who aren't afraid of taking your vision and building something new with it. This is how innovation occurs within a company; you have a team of master builders all inspired by their leader and their team members to create new inspiring things.


Then there's the movie's theme song that plays repetitively during different parts of the movie and is incredibly catchy. The main hook starts off. "Everything is Awesome! Everything is cool when you're a part of a team. Everything is Awesome, when you're living for a dream!" Isn't this the exact message we want to deliver to our team. Don't we want our employees to believe and feel that everything is awesome when they are a part of your team working together towards a common dream. This is the essence of culture; as a manager you want to create a culture where there is alignment between individual and corporate goals (we highly recommend you read The Alliance by Reid Hoffman, cofounder of LinkedIn, for more on this subject).  


In Kung Fu Panda, we learn of the Legend of the Dragon Warrior; this warrior is supposed to present themselves as worthy of the Dragon Scroll and its secret that will give its bearer the power to defeat all enemies. Tai Lung, the bad jungle cat martial arts expert, thought he was worthy of the scroll but was denied it once. He is after it again but gets defeated by Po, an orphan panda raised by a goose who owns a noodle restaurant. He is an overweight klutz who is the opposite of everyone's definition of a typical hero. After accidentally getting selected as the Dragon Warrior, Po trains intensely to become worthy of the scroll. The scroll ends up being blank and reflecting back to the warrior their own image. At first Po doesn't understand the message; however, his dad tells him how the secret ingredient to his famous noodle soup is nothing. It is just believing in making a good soup. The lesson here is clear; as a manager you should be focused on making good soup (i.e. a good product) and believing in yourself, your team, and your product that it is special and the best damn soup on the market. Your team will become a clan of kung fu experts who all are focused on making the company's unique value proposition crystal clear to your customers. 

Management lessons come in all shapes and sizes. One cannot forget Dr. Seuss' management and life lessons in tales such as Yertle the Turtle, The Lorax, and The Places You'll Go. It is important to take a step back and use these fantasy stories to re-orient our management and leadership styles. Lets take to hear the lessons we teach our children and begin to believe in each other and the work we are doing as the most important thing that can make us successful in business.

Contact +Twin Engine Labs at contact@twinenginelabs.com if you would like to discuss how we take innovative principles from all walks of life to build the best mobile products on the market.



Monday, October 6, 2014

Crocodile in the Yangtze - Picking the Right Customer Segment


I recently had the pleasure of watching Crocodile in the Yangtze on Bloomberg the week of Alibaba's IPO. If you go to the documentary's website you can purchase the film for $4.95. I highly recommend doing so. It is an insightful look into how a man many thought was crazy built the company with the largest initial public offering ever. The title of the film comes from a speech Jack Ma, CEO of Alibaba, gave in which he said, "eBay may be a shark in the ocean, but I am a crocodile in the Yangtze River. If we fight in the ocean, we lose—but if we fight in the river, we win." This might be the single most insightful business analogy I have ever heard. Jack Ma realized that in order to remain competitive against the industry leader in digital payments and e-commerce, he had to first gain a foothold in a niche market before being able to claim any sort of significance in the industry and truly have a chance of being disruptive within the industry. He did this by creating an e-commerce revolution that was specific to China and it has been his innate understanding of the behavior of his target market that has allowed him to maintain dominance in the technology sector in China, despite the best efforts of Facebook, Google, and eBay to gain hold.


Peter Thiel, in his recent book Zero to One: Notes on Startups or How to Build the Future, has a similar message. He does not like when startups say, "We are in a highly competitive market but distinguish ourself for X reason" or "We only need to capture .1% of this trillion dollar market and we will all be rich." Peter Thiel argues that you should try and create a monopoly within a niche market first and then expand horizontally within your broader industry. He writes about competition: "Creative monopoly means new products that benefit everybody and sustainable profits for the creator. Competition means no profits for anybody, no meaningful differentiation, and a struggle for survival. So why do people believe that competition is healthy? The answer is that competition is not just an economic concept or a simple inconvenience that individuals and companies must deal with in the marketplace. More than anything else, competition is an ideology--the ideology-- that pervades our society and distorts our thinking." He goes on later in the chapter to explain why competition-driven and led thinking is detrimental to business, "Inside a firm, people become obsessed with their competitors for career advancement. Then the firms themselves become obsessed with their competitors in the marketplace. Amid all the human drama, people lose sight of what matters and focus on their rivals instead." "Rivalry causes us to overemphasize old opportunities and slavishly copy what has worked in the past."


Instead Peter Thiel urges us to create creative monopolies that are able to sustain profits and a monopoly on cash flow in their industry for the foreseeable future. One way to do this is by starting small and monopolizing a niche market. You can create a niche market by focusing on a geographic region (Alibaba in China), a specific industry (taxis - Uber's business model works in other industries but they did not create a generic services app), a specific customer base (Snapchat and millennials) or within a product line (Google is not a creative monopoly as a technology company but they are a creative monopoly in the search industry). 

The important lesson we can take from both of these works is to start small, focus on dominating and creating value for a particular market segment, and then focus on scaling to build a creative monopoly and create lasting shareholder value. Twin Engine Labs can help you and your business use mobile to become the dominant animal in your ecosystem. Contact us to get started today!


Tuesday, August 26, 2014

Growing Up and Our New Look: Introducing Twin Engine Labs' New Brand


Here at Twin Engine Labs, just like any company, we are constantly growing and as we grow we learn and undergo transformations. Some transformations are internal and some manifest themselves in external ways, but as a company whose main principle is transparency, we believe that the internal and external brand should reflect each other. Therefore, today we are launching a new brand that not only reflects shiny new exterior of Twin Engine Labs but reflects the company we have become over the past 4 years. 

Close to a year ago, one of our co-founders left to pursue life being a producer again in the startup world where he was happiest. Ken Hanson was our CEO's twin brother and you can read Keith's farewell blog post about looking forward here. His legacy will live on with us. While part of our brand was always based on the fact that we were founded by twin brothers, it really was always about what the twins represented. One represented an innovative style, creative outlook on user experience, and the marketing spark, while the other represented the experimental, iterative, and cutting edge engineering mind. Both of their legacies live on in our new logo, the blue sparks representing our design and user experience team and their tendency to provide the spark that brings our projects to life. The green chemistry bubbles represent the experimental and cutting edge day-in-day out operations of our engineers that help us put out mobile products that help our clients grow their companies. All of this is contained within the circle of the Twin Engine Labs' process and culture. 

Twin Engine Labs' internal processes have grown and evolved over the years we have been in business driven by those founding principles and legacies discussed earlier. But the internal processes and procedures that have evolved to help us build fantastic products for our clients have also shaped our brand and who we have become. 


Twin Engine Labs is a digital experience agency with a focus on web strategy, design, and development. Our methodology stems from Agile and Lean concepts, where we keep long-term objectives in focus while iterating through customer development and feedback. Twin Engine Labs creates stunning designs, scalable engineering software, and strategic criteria for how to pivot and how to validate a market. This post addresses avenues for product growth and success that we have developed, but it is our strong belief all assumptions need to be tested and validated by the market as efficiently and inexpensively as possible. That is why we follow the lean startup methodology first postulated by Eric Ries and heavily based on the customer development methodologies of Steve Blank.

Using these approaches, we create a build, measure, and learn cycle for our customers. We craft the first version of the product, and then build analytics and tools around the customer base, and finally learn from the results. This offers unprecedented cost savings and returns on investment, as we are able to move and pivot along with the quickly shifting marketplace. Assumptions and innovation ideas that we offer are tracked as a valid or invalid assumption, allowing all parties involved to make informed decisions about the way forward.

Our industry has coined the term “Innovation Accounting” for this exact scenario, which we use in earnest to ensure the directions we help our entrepreneurs take are ones based on previous learning and discovery, and rooted in time frames for validating or invalidating an idea, feature, or assumption much more quickly than other firms using traditional development methodology.

Twin Engine Labs’ design team kicks off the design process of all our mobile applications by translating the application flow into wireframes and a full aesthetic feel for the application. These wireframes will be used to ensure that all functionality is accounted for in the design and that the user flow and customer experience feel intuitive. The wireframes will lay the groundwork for the architecture of the entire application. Twin Engine Labs' business analyst steps in at this point to put the wireframes in front of real customers and users in our Test Pilot program and early adopters cultivated by our analyst. Once qualitative feedback is received by the market, the design team makes any iterations necessary based on market feedback. As the wire framing portion of this proposal concludes, Twin Engine Labs will be able to more accurately estimate out the rest of the work required in the design and engineering of the application. Twin Engine Labs' phased and iterative approach to development allows us to keep cost down by continuously revisiting the budget throughout the process, instead of worrying about scoping a huge fixed budget and bid upfront.

Once we have settled on the wireframe and application flow for the majority of the application, initial directions for the brand, color, look and feel, and full aesthetic direction will be proposed by our design team. Once an initial direction has been approved by the company we are working with, Twin Engine Labs’ designers will begin fleshing out the wireframes with full aesthetic design and feel of the user experience in the application. Throughout wire-framing and full aesthetic design we use a tool called Invision that allows us to not only communicate and collaborate with our clients on the design but share hot-linked wireframes to other users so they can walk through the experience on their phone as if they are really walking through the app. However, in reality, they are just tapping through a bunch of wireframes. As you can see, design provides the spark to get a project off the ground and the creative spark that shapes the entire user experience.

Simultaneously, the engineering team will begin creating the backlog and bootstrapping the product. By the end of this phase, the initial pieces of the product will have come together to have a fully branded look and feel, and the groundwork and backlog for the engineering team will have been created. Upon receiving the full design for the Engineering team to implement, the build phase will begin in earnest with weekly iterations and rapid, agile decision making required to successfully launch and build a product. Our engineering team uses Pivotal Tracker to keep clients up-to-date on the backlog and manage their time and budget wisely. Ultimately, we want to be your technical advisors and help the companies we work with make better decisions about the mobile technology investments they are making. By keeping this in the forefront of their minds, our engineers are able to build products that are able to gain traction and demonstrate market viability without breaking our clients' banks. Our engineering team has developed many out of the box tools and frameworks to get our clients from zero to MVP quicker than any other agency, without sacrificing the quality our customers have come to depend on us for. Our engineers are the experimental, innovative workers who tinker with our products until perfection.

All of our processes and what we do can be found in the formula. It is our Open Source look at our culture and the way we work. Please check it out and let us know what you think of it and the re-brand. Leave a comment below or reach out to us on social media! Overall, we are very excited to announce our re-brand, while being able to stay committed to the quality Twin Engine Labs has become known for.



Friday, April 4, 2014

RailsN00b: Hello World! [Entry 1]

RailsN00b: Journal of an Intern Rails Developer
Entry 1: The Obligatory "Hello, World!"

Tutorial Being Followed: "Instant Gratification" Ch. 2 of Agile Web Development With Rails 4. By: Ruby, Thomas, and Hansson.

Now that we have all the housekeeping out of the way, it's time to dive right in and make sure rails is working with the traditional "Hello, World!" test. If you rolled your eyes when you read that, you aren't alone; I also get tired of every single programming text starting with something so vanilla. So, let's spice it up a bit with a look at how Rails handles dynamic and a look at the Model-View-Controller structure of the Rails framework. Lets get started!

First we need to open up our terminal application and create a new Ruby on Rails application:

Move to whichever directory you want to create the application in. I will be creating a new director ( BlogProject ) as a subdirectory of my Work directory:

$ cd Work
$ mkdir BlogProject
$ cd BlogProject

Now we need to create a new Rails Application. I will be calling this application "demo" and use the Rake tool to examine it:

$ rails new demo
$ cd demo
$ rake about

Now we want to create (or, in Ruby on Rails, "generate") a controller called "Say" with two methods "hello" and "goodbye":

$ rails g controller Say hello goodbye

Now take a look at the new directory in your text editor of choice. Open up the file say_controller.rb found at /demo/app/controllers/say_controller.rb and add an instance variable for time in the "hello" method and user_name in the "goodbye" method. Assign time to the current time using Time.now and user_name to a string containing your name. 

The resulting code should look something like this:

class SayController < ApplicationController

# Hello method
 def hello
   @time = Time.now
 end

# Goodbye method
 def goodbye
   @user_name = "Carl"
 end

end

This is a controller. If you are new to the MVC pattern, I suggest reading the wiki page: here.

When you created the controller and it's methods via the "$ rails g" command, you also created two "views" for each method. These views can be found in demo/app/views/say/.. with the extension ".html.erb"-- meaning HTML Embedded Ruby. 

One of the cooler aspects of Rails framework is that you can inject ruby code into text the HTML by framing it with " <%= %>". You can also link pages to one another by utilizing the link_to() method which takes two parameters: a text to be displayed and a special variable in the format of class_method_path. Go ahead and add in a header and some text to these files, calling the appropriate instance variables inside "<%= ... %>". Also use link_to() to allow the user to move back and forth between the two pages.

The code should end up looking something like this:

<body align="center">
<h1> Demo Program 1: </h1>
<p> Hello there, the time is now <%= @time %> </p>
<p> Find me in app/views/say/hello.html.erb </p>
<p> Say <%= link_to "Goodbye", say_goodbye_path %> </p>
</body>

Now it's time to launch the rails server and take a look at your code. To do so, simply open your terminal (make sure you are still in the demo directory). Launch the server with the following command:
$ rails s

Now open up your browser and go to http://localhost:3000/ and you will see the Rails "Welcome aboard" message. Now go to http://localhost:3000/say/hello and you will (hopefully) see something like this:



Congratulations! You have just created a very simple Rails applications. In our next lesson we will talk a little more about the third element of the Model-View-Controller structure-- the Model, and dive a little deeper into page flow in a Rails application. 

By: Carl Bales, Twin Engine Labs
Date: 4 April 2014

ABOUT THE AUTHOR:
Carl Bales is an Intern at Twin Engines Lab in Shreveport, LA and a Cyber Engineering student at Louisiana Tech University in Ruston, LA. He has recently made the switch to Ruby on Rails after a few years of Python, Java, C/C++, and Perl programming. He writes these posts as a way of chronicling his descent into the Ruby on Rails programming framework and help others make an easy transition into this web-app development with Rails! He tweets at @RailsNoob and can be contacted via email at carl@twinenginelabs.com . 

Tuesday, March 25, 2014

Building the Next Generation of Entrepreneurs

Today's blog topic is an issue that is extremely important to Twin Engine Labs and relevant to our work with one of our clients, Higgy Ziggy! In the past, we have written on the blog about our work with programs such as Junior Achievement and the important lessons that teaching entrepreneurship to children can instill. However, today I want to explore how community programs, classrooms, and companies can do more to not only foster the entrepreneurial spirit within our youth, but actually help them accomplish their goals and successfully bring their first projects to life. 


1. Community - The community should give young students a public forum in which to speak. The community should do all that is possible to encourage attendance at these student events both by leaders in the community and other students from local area schools. A great example of an event that has done this is 1 Million Cups Shreveport, who is supporting a student edition of their weekly event, during the local school's Spring Break week. They are hosting our client, Higgy Ziggy, as he presents his mobile game he is building with us, The Lost Tribes. The 1 Million Cups Community has been incredibly supportive of this endeavor and has been doing a lot to encourage a large crowd to hear this 12 year old speak, especially students at local schools. Giving our youth a safe environment in which to voice their ideas and get positive feedback from community leaders who have experience building businesses of their own is a vital part of our students' development of critical thinking, problem solving, and public speaking skills that will help them in all future endeavors.

2. Business Support - Businesses are particularly well-suited to help our youth succeed because often they have the expertise in a particular subject matter, the resources, or the talent needed to pull off an entrepreneurial endeavor. Our youth may have none or very few of these things when they start, but what our youth do have are ideas and new ways of looking at problems that aren't hindered by perception of how things have worked for years within an industry. The creative thinking and problem solving potential of our youth is something industry can tap into for a wealth of new solutions to old problems. There are a number of helpful ways businesses can interact with youth. They can set aside time for their employees to participate in mentor relationships; businesses can help fund projects; companies can put on education programs for youth. +Twin Engine Labs, for example, has started a new training and transfer program with BPCC, working to help college students gain the real-world programming skills necessary for jobs. Our CEO, Keith Hanson, and one of our programmers, Brandon Buck, are mentoring Senior Projects for High School students. We are also helping Luke Higginbotham learn to code, while helping him get his project off the ground and execute quickly. However, we are always looking to do more and if you are interested in partnering with us, contact us.

3. Classrooms - I believe it would be interesting if classrooms started giving students the option of what they wanted to work on, instead of telling them to create a certain thing or product. Rather, students should have the freedom to pursue what interests them. In the end, you will see students learning the foundational skills that our schools teach us but using them in their own way to pursue entrepreneurial adventures of their choice. Schools can also partner with industry and community for more programs. One example of this in the Shreveport-Bossier community is the work that Cohab is doing with local high schools in their elev8 program.

In the end, it is everyone's responsibility to help our youth develop and express themselves in ways that will serve to benefit the youth and society in the future. Entrepreneurism is a great avenue of creative self-expression for our kids and can teach them important lessons in leadership, communication, fiscal responsibility and community. That is why Twin Engine Labs wants to do whatever we can to help build the next generation of entrepreneurs. We will leave you with this video from Cameron Herald on youth and entrepreneurship, but contact us or drop us a comment below if you want to discuss these issues further.