Book Review: Getting Real – Build A Successful Web App

What this book is...

Getting Real is a blueprint for creating a service or product online that you love, that you use, that actually works and that your new community of like minded people will love too.

Written from a founder / developer point of view but without all the tech code talk.

What this book is NOT...

You will not get any fluff in this book, no self serving promotional crap and NOT written in a "GURU" point of view.

Overview

Getting Real is on my phone, tablet and laptop via Kindle reader. It has earned a permanent place on the top shelf of my "must read" books because it's short, to the point and packed with value for anyone at any stage of SaaS development.

For example, I read this book after creating AppKPI ( iOS Keyword Optimization Tool ) and before I created FeedSumo ( Twitter Content Management Tool ).

AppKPI.com - App Keyword Optimization

After reading Getting Real, I started to see how much opportunity I missed by working on AppKPI silently for over TWO YEARS!

How I should have been sharing my experiences, successes and failures along the way. How I should have been connecting with users of AppKPI and how much that would have ultimately helped me create a better service. Instead, I had a tool that I understood how to use, but left users confused. Good thing I read this book, I am now fixing all of these issues.

FeedSumo - Twitter Content Management

Because of Getting Real, with FeedSumo I was able to keep things very minimal and quickly reject scope creep that would only add complexity, plus avoided hours of dead end development time. I was able to create an MVP ( Minimal Viable Product ) in 44 hours and have real people using the tool and giving me feedback. Updates are rolled out regularly and communication with FeedSumo users has been extremely helpful in shaping the tools feature set.

Take Away #1: Build A Web App You Need And Will Use

Build a Web App you actually use in your own business, because you are more likely to make a better product or service.

Even if there are GIANT competitors in your space, there are several reasons why you would make a new similar product or service:

  • Other's cost too much
  • Other's don't have certain features
  • Other's have too many features
  • Other's lack great service or support
  • YOU CAN DO BETTER!

Guess what? There are people who think the same thing and want an alternative choice.

If you think you can do better, then DO IT and USE IT!

Because if your Web App sucks, you will know it.

Take Away #2: Make Decisions To Avoid Complexity

The concept of DECIDING was a real eye opener, here is what I mean...

Imagine your product or service has a scheduling component, you can do one of two things:

  • A.) Enable your customers to decide when something will happen
  • B.) Decide when your product or service will make something happen

#----#
Scenario A
#----#

Could mean complexity of both front end and back end development...

In the front end, we could be talking about calendars, drag and drop, repeating events, one time events, special events, etc.

In the back end we now have to handle event collisions, just in time updates, multiple event updates, etc.

What about the user, they now have more work to do for each event entered and they have to THINK about when the best time to schedule would be?

#----#
Scenario B
#----#

You decided that your Web App triggers events three times a day, that's it.

In fact, your Web App handles finding open slots and auto-schedules.

Your users know this, accept it and continue to use your tool or decide it's not for them.

#----#
WINNER: Scenario B
#----#

Choices define your SaaS, they simplify both front end and back end development, creates a better user experience and defines the culture that your users will love.

If all that is needed is a simple button, make that choice and move on.

Take Away #3: Release Early And Update Often

As I mentioned above, one of my SaaS tools sat around for over TWO YEARS!

Why? Because I wanted to get it just right... Sound familiar?

I am not making that same mistake with FeedSumo, the MVP was made in 44 hours over 7 days then I pushed it live.

Since then, I have been steadily releasing daily updates, improving the overall service and have REAL users not only using the tool but giving me feedback and reporting bugs!

Setup two environments for your SaaS tool along with a GIT:

  • Development - This is where you can experiment with new features, test updates safely and PUSH code changes to GIT. In my case, I set this up on my MacBook Pro, this way I have an exact functional replica of the site and can make code updates from just about anywhere.
  • Live - This is likely your hosting company server, what your users see when they got to the site and you PULL from GIT to make site updates.

Taking a bit of time to create a simple process for releasing updates, it keeps the site fresh and your users engaged knowing someone is awake at the wheel.

Final Thoughts...

Are you still reading this?

If you are serious about creating a Web App, Go buy "Getting Real", it's a no brainer!

$10k per month SaaS Membership Challenge

Time for a new challenge...

The goal is simple: $10k per month in NEW monthly recurring revenue via SaaS Membership sites in 6 months or less.

Why am I doing this: After 20 years of building online apps for others, it's time I make a few of my own!

And you get a front row seat to every "Ah Yeah" and "WTF just happened?!?!" moment...

Interested?

Here's how it's going down...

1.) Revenue cannot be one time, it must be monthly recurring revenue from a new online service I create.

2.) I will post updates of my progress and what third party services/software I use, with follow ups, that way you know which to use and which to avoid!

3.) Bootstrappin it all the way homey! I will be doing all the code and design work. If I do hire someone to help, I will mention what they did and the cost.

4.) Comments for this challenge are in AMA (Ask Me Anything) style, so go ahead and ask me anything (challenge related of course)! The point of this challenge is to document my journey, AND also help out those who are stuck or building their SaaS / Membership sites too.

Here is a list of what I think I will be using...
(will update as it changes...)

Server / Code
PHP
CodeIgniter
MySQL
Amazon EC2
Gearman
Supervisor

Task Management
Trello (keeps me organized)

Analytics
Clicky
HotJar
Intercom.io
Webmaster Tools

Email
aWeber
SendGrid
Mandrill

Payments
Stripe
PayPal (maybe, thinking I might stick to Stripe...)

Ready, set, go!

If you are up for the challenge, tell me about your project or feel free to ask me anything in the comments below and signup on the special $10k challenge email list, I will only send email updates when I post something new.

If you just want to follow along, that's cool too, go ahead and signup on the list using the form below!

You can also hit me up on twitter @cesarserna

That's it... nothing more to it but to get to it...

How to stop / start / restart Gearman Server

How to stop, start and restart Gearman server via command line took me a bit to find, so I figured I would post it for future reference...

First, know the path to gearmand and gearadmin, on my server it is:

How to STOP Gearman Server

How to START Gearman Server

Note: If you are not using a database to queue Gearman worker jobs, that means all pending jobs are in memory, all pending jobs will be lost when you shutdown! If you do use a database, your pending jobs will be available upon restart and will not be lost.

Hope this helps!

😉

How to integrate Kiip ads into Cocos2d

Here is a quick example of how to integrate Kiip rewards into your Cocos2d game.

If you have questions or updates, please post them in the comments below, thanks! 😉

Required:

Kiip Account: http://www.kiip.com/
Cocos2d: http://www.cocos2d-iphone.org/
Kiip SDK: http://docs.kiip.com/en/downloads/

AppDelegate.h
1. Add #import <KiipSDK/KiipSDK.h>
2. Add KiipDelegate to the AppController interface

AppDelegate.m
1. Add Kiip init code at the end of the didFinishLaunchingWithOptions method just above the return YES;

Note: You will need to get your "KEY" and "SECRET" from your Kiip dashboard.

HelloWorldLayer.h

1. Add #import <KiipSDK/KiipSDK.h>
2. Add <KiipDelegate> to interface

HelloWorldLayer.m

1. Added Kiip rewards call inside a CCMenuItem block call ( you would make your own method and triggers to call Kiip rewards )

That's it, if you have questions or comments, write them below!

How to Integrate AppLovin rewarded video ads into Cocos2d

Here is a quick basic example of how to start showing rewarded video ads from AppLovin using Cocos2d 2.x.

NOTE: This is just a base template, there are several bits to be improved like:
+ Handling auto load for next video
+ Handling prompting player after the video box is closed
+ Whatever you guys can think of...

Hope this helps gets you guys started with making some money using AppLovin in your apps.

If you do update the code, post it in the comments and I will update the code here, thanks!

REQUIRED:
+ AppLovin Account: https://www.applovin.com/developers
+ Cocos2d 2.x
+ AppLovin SDK 2.4.0

======

AppDelegate.m

HelloWorldLayer.h

HelloWorldLayer.m