The Brainstorming and Planning Phase

Brainstorming and Planning might seem like obviously steps to take when going from idea to launch. Unfortunately, many people skip over these steps because:

  • They’re too anxious and have to start
  • They feel like they’re behind schedule
  • They don’t want to face the fact that they have no idea how they’re going to turn their idea into reality

The reasons why people skip over these steps should clearly reveal just how important they are.

Being anxious or feeling like you’re behind schedule is only going to result in sub-par work.

And not wanting to face the fact that you have no idea how you’re going to turn your idea into reality is simply insane: at this phase, you’re not supposed to know!

That’s exactly why this phase exists: so you can write out the steps you need to take and the milestones you need to hit in order to accomplish your goal.

3 Steps to getting your plan started

There are 3 steps to successfully completing the Brainstorming portion of this phase, and those are:

  1. Writing out what you already know
  2. Doing research
  3. Asking others who have already done what you want to do


Once you’ve completed your Brainstorming, it’s time to take the information you’ve gathered and put it into a plan. This means specific steps – in order – with due dates in place.

Be sure to tune into this episode to get details on each of these steps, along with other critical tips for successfully completing the Brainstorming and Planning phase of your journey from idea to launch!

The 9 Most In-Demand Programming Languages of 2016

Glassdoor recently published a report on the top 25 lucrative, in-demand jobs. More than half of the jobs listed are in tech and require programming skills. If you’re interested in a fast-growing and lucrative career, you might want to make learning to code next on your checklist!

Next, comes the hard part – deciding on the best programming language to learn.

To help narrow things down, we compiled data from (database including current computer programmer jobs). While this isn’t an extensive list, it does provide insight into the most in-demand programming languages sought after by employers.

Breakdown of the 9 Most In-Demand Programming Languages

1. SQL
It’s no surprise SQL (pronounced ‘sequel’) tops the job list since it can be found far and wide in various flavors. Database technologies such as MySQL, PostgreSQL and Microsoft SQL Server power big businesses, small businesses, hospitals, banks, universities. Indeed, just about every computer and person with access to technology eventually touches something SQL. For instance, all Android phones and iPhones have access to a SQL database called SQLite and many mobile apps developed Google, Skype and DropBox use it directly.

2. Java
The tech community recently celebrated the 20th anniversary of Java. It’s one of the most widely adopted programming languages, used by some 9 million developers and running on 7 billion devices worldwide. It’s also the programming language used to develop all native Android apps. Java’s popularity with developers is due to the fact that the language is grounded in readability and simplicity. Java has staying power since it has long-term compatibility, which makes sure older applications continue to work now into the future. It’s not going anywhere anytime soon and is used to power company websites like, and For more info behind Java’s popularity, see our beginner’s guide to Java.

3. JavaScript
JavaScript – not to be confused with Java or mean stack development – is another one of the world’s most popular and powerful programming languages, and is used to spice up web pages by making them interactive. For example, JavaScript can be used to add effects to web pages, display pop-up messages or to create games with basic functionality. It’s also worth noting that JavaScript is the scripting language of the World Wide Web and is built right into all major web browsers including Internet Explorer, FireFox and Safari. Almost every website incorporates some element of JavaScript to add to the user experience, adding to the demand for JavaScript developers. In recent years JavaScript has also gained use as the foundation of Node.js, a server technology that among other things enables real-time communication.

4. C#
Dating from 2000, C# (pronounced C-sharp) is a relatively new programming language designed by Microsoft for a wide range of enterprise applications that run on the .NET Framework. An evolution of C and C++, the C# language is simple, modern, type safe and object oriented.

5. C++
C++ (pronounced C-plus-plus) is a general purpose object-oriented programming language based on the earlier ‘C’ language. Developed by Bjarne Stroustrup at Bell Labs, C++ was first released in 1983. Stroustrup keeps an extensive list of applications written in C++. The list includes Adobe and Microsoft applications, MongoDB databases, large portions of Mac OS/X and is the best language to learn for performance-critical applications such as “twitch” game development or audio/video processing.

6. Python
Python is a general purpose programming language that was named after the Monty Python (so you know it’s fun to work with)! Python is simple and incredibly readable since it closely resembles the English language. It’s a great language for beginners, all the way up to seasoned professionals. Python recently bumped Java as the language of choice in introductory programming courses with eight of the top 10 computer science departments now using Python to teach coding, as well as 27 of the top 39 schools. Because of Python’s use in the educational realm, there are a lot of libraries created for Python related to mathematics, physics and natural processing. PBS, NASA and Reddit use Python for their websites.

7. PHP
Created by Danish-Canadian programmer Rasmus Lerdorf in 1994, PHP was never actually intended to be a new programming language. Instead, it was created to be a set of tools to help Rasmus maintain his Personal Home Page (PHP). Today, PHP (Hypertext Pre-Processor) is a scripting language, running on the server, which can be used to create web pages written in HTML. PHP tends to be a popular languages since its easy-to use by new programmers, but also offers tons of advanced features for more experienced programmers.

8. Ruby on Rails
Like Java or the C language, Ruby is a general purpose programming language, though it is best known for its use in web programming, and Rails serves as a framework for the Ruby Language. Ruby on Rails has many positive qualities including rapid development, you don’t need as much code, and there are a wide variety of 3rd party libraries available. It’s used from companies ranging from small start-ups to large enterprises and everything in-between. Hulu, Twitter, Github and Living Social are using Ruby on Rails for at least one of their web applications.

9. iOS/Swift
In 2014, Apple decided to invent their own programming language. The result was iOS Swift – a new programming language for iOS and OS X developers to create their next killer app. Developers will find that many parts of Swift are familiar from their experience of developing in C++ and Objective-C. Companies including American Airlines, LinkedIn, and Duolingo have been quick to adopt Swift, and we’ll see this language on the rise in the coming years.

Any great craftsman has a belt full of tools, each a perfect choice for certain situations. Similarly, there will never be just a single programming language, and each language will evolve and improve over time to keep pace with innovation.

Self-taught Courses vs Coding Bootcamps

A few years ago, I was at a crossroads in my career, trying to teach myself how to code and eagerly searching for the fastest, most affordable path to becoming a software developer. Like many others in my situation, I asked myself: should I continue teaching myself how to code online or attend a coding bootcamp? After 10 months of deliberation, I signed up for Coding Dojo, a programming school in the Bay Area.

These days, I’m seeing more and more people in the same position as I was: stuck between these two options. As someone who’s used bootcamps and self-taught courses to learn to program, I wanted to share some of the insights from my journey. Hopefully, this will help you, or people you may know, navigate your journeys as well. Here’s my breakdown on the top differences between coding bootcamps and online courses.


Fits your schedule
One of the biggest benefits of self-taught courses is that you pick your own schedule. Online courses make it easy to balance school or keep your day job. You can maintain your lifestyle, coding in the evenings and on the weekends.

Unfortunately, this also comes with all the distractions that work and school bring. Very quickly, online courses can become the easiest thing to cut from your schedule, especially as finals approach or work gets busy!

Affordable, Low Barrier for Entry
Luckily, the internet makes learning resources readily accessible and you can get started right away. There’s a huge spectrum of courses, from free material to paid courses of every price range. Even the most expensive online courses can be affordable.

Focusing on free online resources may sound attractive, but to a certain extent, you get what you pay for. The quality and consistency of the material can vary quite a bit, and typically it’s only enough to get you started.

Pay for what you need
Self-teaching enables you to pick and choose the material you need to know, a more à la carte style where you can focus on particular technologies instead of buying into large packages. This makes it a low investment for beginners and lets experienced developers zero in on what they need.

This comes at a price, however. A beginner will have a hard time knowing where to start or which technologies to work with. Without a solid foundation, you wouldn’t know the right courses to pick.


Faster Learning in Groups
One thing that struck me when I was first placed in a bootcamp environment was how much collaboration accelerated my learning. Talking about concepts, helping others understand them, and communicating about code was a powerful learning tool. Being able to pair with somebody at my level and learn with a fellow student was huge.

This created a more social learning environment; I don’t know if I would have been as successful if I didn’t work with other students going through what I was going through. Learning solo would have made these concepts harder to pick up, and it would have taken much longer.

Cohesive Curriculum and Mentorship = Fast Progress
In a bootcamp, there is more structure to your learning. These are carefully planned out programs that can take months to complete, building up your skills one level of mastery at a time with the mentorship of knowledgeable instructors. This learning style gives you a big picture view and keeps you progressing forward, at a speed difficult to replicate by yourself.

However, the more rigid material can make it more difficult to learn if you don’t keep pace. Move too slowly, you’re going to be spending late nights and long weekends catching up! Move too quickly, and you can be waiting for the rest of the class to catch up.

Full Immersion, No Distractions, Tons of Content
A bootcamp is called a bootcamp for a reason. You eat, drink, sleep, walk, talk, and breathe code for months at a time. You surround yourself in a learning environment, packed with curriculum, push all other distractions off your schedule. With this intensive focus, you get a lot more done in less time and learn new technologies at a rate you wouldn’t think possible.

The flip side is, you’ll have limited time for a social life. Give your friends and loved ones a heads-up, and make arrangements for your pets ahead of time, because these courses are loaded with things to learn. You’ll have very little time for anything else!

When you join a bootcamp, you’re surrounded by people with the same goal as you: learn how to code. You immediately set foot into a network of developers-in-training with a similar skill set. This is important making a career switch, as you’ll organically create a professional network to leverage for more job opportunities. We’ve seen countless alumni find jobs through referrals from former alumni.

Of course, you can’t stop at the bootcamp. Networking requires constant maintenance, and to give yourself the most opportunities you’ll have to extend your network outside of the bootcamp. Local meetups, hackathons, and online communities are great ways to meet more people who are passionate about tech.

Guidance through the Job Search
Some of the most crucial services bootcamps provide are career guidance. Tech is a new industry for a lot of people and the ground rules for the job search change. What could pass as common wisdom in any other industry might not work when looking for a tech job! Bootcamps help you clear that job search clutter, find your top job prospects, and provide you with the tools to nail the interview.

Keep in mind, as a veteran developer there’s only so much job seeking advice you can get. Sometimes these services might be unnecessary for your skill set. You may be better off tapping into your network for job offers.

Which is the right choice?
When it comes to career switching, it’s hard to beat the immersive and collaborative environments you can get at a coding bootcamp, especially for people who don’t have a background in code. In just three months, the bootcamp life was able to impart more technical knowledge in me than ten months of self-study.

But that doesn’t mean online courses don’t have their merits. They’re flexible, cheap, and easy to access, and there’s actually a large population of developers in the tech industry who are self-taught. Furthermore, even as a bootcamp grad, I still use online courses and hunt out free material. Self-teaching is convenient and affordable, works around my schedule, and now I have the skills to know what courses I want to learn. Even when I first started out, I was able to get a taste of the coding world while working a full-time job.

How to Price an Online Course

How to price an online course? Maybe, you are ready to create an online course. Or, maybe you are planning to launch an online course you already created.

You sit down to write your sales page and it’s time to decide: How do I price an online course so that I know my people will buy?

This year alone, I have had over 30,000 students attend workshops with me on how to create and launch an online course. A big question that comes up is often, “How do I price an online course?” I hear over and over from experts like you that “someone suggested I price on the low end” or “an online course I took taught that I should price at $697 because that’s the best number for conversion.”

When you price an online course, you have to remember:

It will determine what kind of content and support you include in your online course.
It will determine how much of an ad budget you have to attract clients into your online course.
It will determine how many clients you need to find to reach your revenue goals.
It will determine the type of client you attract.
It will determine how your community perceives the value of your offer.
It will determine what kind of resources you can add to your online course in the future to add value and improve your content.
It will determine how many people you need on your team to support those clients.

In essence:
Determining how to price your online course determines what your life as an entrepreneur is going to feel like.
Why? Because…

If you price an online course on the low end, you are in the quantity game.
You will need to find lots of people to enroll in your course to hit your revenue goals.

If you price an online course on the higher end, you are in the quality game… you need to deliver quality content that delivers results and develops a quality of relationship with your clients that keeps them coming back for more.

You will need to deliver high value to fewer people to hit your revenue goals.

If your revenue goal is 6-Figures:
If you decide to price an online course at $997: You need 100 people to enroll in your $997 program (or 8 people a month over one year)
If you decide to price an online course at $997 with an up-sell offer: You need 50 people enrolling in your $997 program and 10 of them a year buying your next level $5k program.

Let’s look at how this is different when you price lower:
If you decide to price an online course at $97: You will need 1000 people buying a $97 online course with you this year to hit $100,000.
If you decide to price an online course at $197, you will need 500 buying a $197 online course.
Or, for comparison, you have to find 1000 people spending $8 a month in your monthly membership site community.

What many experts don’t share about pricing an online course at the lower end is that you have to go deeper with clients to generate a profit. It is difficult to generate enough profit to survive with only a low-priced course offer.

Couple this with another challenge in being in the quantity game: you don’t have the time to market AND serve all those people by yourself.
This means you need additional team support which means even less profit.

When you price an online course at the lower end, you play the QUANTITY game and…
You are constantly moving from one focus to another.
You are constantly overwhelmed.
You need support to handle the volume
You can’t afford to advertise so you have to beat the bushes online to find leads and get on the phone to close sales.

When you create high-value offers that command higher investments, you are in the quality game.

When you price an online course at the higher end, you play the QUALITY game and…
You choose who is a right fit.
You can go deeper with clients.
You have more profit margin available to market to find those perfect people.

You have a bigger profit margin which means more budget to invest in paid traffic.
You attract clients that are invested at a higher level.
You have clients go deeper with you into next level offers because you generate results at every level of interaction.

7 year old speaks 5 languages

Meet my friend Yukine.
She’s 7 years old and speaks 5 languages: English, Spanish, Japanese, German and Sign Language. When I visited the Canary Islands recently, we sat down for a chat, and I asked her about her languages and what she likes about each of them. Now, it’s a common myth that children are much better language learners than adults.
Unfortunately, this is a myth that’s perpetuated wherever you go, and is often used by adults to justify not trying so hard themselves…
When you watch this video, you may find yourself feeling the same thing.
But I want you to look a bit deeper into exactly how Yukine has managed to learn these languages because there’s a very important lesson in there.

How a child can learn 5 languages

  • Here are the facts:
  • She lives in Spain
  • She speaks Spanish and Japanese at home with her parents
  • She attends an English medium international school
  • The school has a language focus to it, and runs a number of German classes as part of the curriculum
  • She also takes regular extra-curricular sign language classes at the school, and has done for a while


  • She visits Japan for 2-3 months every summer and attends Japanese summer schools whilst she’s there
  • Her uncle and cousin, who she sees regularly, are native English speakers

So, has she just “picked up” all these languages?
Absolutely not.
Children vs. adults
Whether she knows it or not, Yukine has accumulated 1,000s of hours doing the exact things that result in successful language learning.
It’s no accident.

  • For years now, she’s been spending the majority of her waking hours learning or speaking
  • one of her 5 languages.
  • She uses 3 languages regularly with the people she loves.
  • She takes regular classes in the other 2 (and will be for years to come).
  • The people around her understand the importance of learning languages, and are incredibly encouraging and supportive.

As regular readers of the blog will know, these are exactly the same success factors that I spend my time encouraging people (i.e. adults) to go after…

  • Spend time on your languages every day…and keep it up for years
  • Speak regularly with people you like
  • Be clear why you’re learning, and stay motivated by surrounding yourself by the right people

It really is no different whether you’re 7 or 70! ?

Of course, the big advantages that kids have, are plenty of time on their side, and an unquestioning attitude, that means they’ll just do anything.

Adults tend to be busy, and will often sabotage their progress by demanding “progress now!”, getting frustrated, and moving on to the next new thing.

So, think about how Yukine has learnt her languages.

Then, compare it to the last 6-12 months of your own language learning.