How can we help you?


We will walk you through the steps to bring your product to life. From paper napkin to software design brief, we will ensure your project has a roadmap that is clear, actionable, and within your budget.


We build software products: web, mobile, and cloud. We will advise you on the best language and technology stack for your product depending on your requirements. Our team will then manage the development and collaborate with our partner network of UX/UI creatives to build your product.


Is your project not going as planned? Do you need to work faster, improve quality, or find a better process? We bring years’ worth of experience from building hundreds of projects to your doorstep. With our highly qualified staff and expert team of developers, project-managers, and architects, we’ll take your product to the next level.


App Development

App Development

We build software products: web, mobile, and cloud. Our team is dedicated to building products that are responsive, scalable, maintainable, and extensible. From mobile apps to platforms with customer facing API’s, we can help transform your industry with the power of software.



We all know that some battles require more troops or special forces. We can help get your development project back on track.

Rescue Team

Rescue Team

Sadly, it is not uncommon to find a business struggling to see their vision come to life. We have experience saving problem projects, recovering lost time, and managing team transitions. Our rescue team can immediately step in and help you regain control, direction, and peace of mind.

Hear from our clients


What makes us different?

We are an elite team of product managers, software architects, and developers who partner with business executives to build their next successful product. Whether you are engineering a new product or reinventing an existing one, we can help bring your vision to life.

We focus on our strengths

Your idea deserves the very best chance of success. This means having excellent aesthetics combined with functional, scalable, and maintainable code. Why compromise?

Our clients love working with a technology partner who brings strong product leadership and is willing to collaborate with their in-house creative group or external graphic design agency. If you don’t have a graphic designer, we will provide creatives from our vetted partner network, perfectly matched to your product’s style and target market.

With BoC you are free to focus on building your business, while we manage every aspect of building your product.

We are easy to work with

Are you tired of dealing with a team that is difficult to work with, inaccessible, and lacks transparency? We are supportive, insightful, respectful, and invested in your success.

We have the experience

We’ve been building apps, products, and platforms for clients since 2003. Prior to that, we were building our own. We know the journey you are on and we know how to make it a success. New clients often say that working with us has been their first enjoyable software building experience.

You are in safe hands.

Our clients include Fortune 500 companies such as Virgin, AT&T, Verizon, RBC, CIBC, Telus, and Rogers, as well as many venture funded startups.

Front End
Back End
Mobile Web
Mobile Native
Athletic Ability
Home DIY

Let's grab coffee?

Band of Coders,

1643 Mt. Vernon Rd. Atlanta, GA, USA 30338

+1 404.418.6341
Send us a email



The Foundations of a JavaScript Programmer: Prototypal Inheritance

JavaScript is a very dynamic language which likes to play fast and loose with traditional programming rules.  This makes JavaScript an easy language to learn, but a challenging one to master.  The amazing library, jQuery, lowered the bar to being a JavaScript programmer even further by abstracting out the more complex pieces of JavaScript.  Modern JavaScript has seen a proliferation of libraries and frameworks making it as easy as it has ever been to program in JavaScript.  However, all these tools should not be a replacement for taking the time to learn about the foundations that make JavaScript work.  One of those important foundations is how JavaScript manages inheritance.  It uses a process called Prototypal Inheritance.

“Each object contains a reference to the object it was derived from” 

Prototypal inheritance is different than traditional inheritance.  In prototypal inheritance, each object contains a live reference to the object it was derived from.  Prototypal inheritance functions like matryoshka dolls (Russian Dolls, pictured above).  Russian dolls are a series of almost identical dolls with one exception: each doll is smaller than the next.  From largest to smallest, each doll holds the dolls smaller than inside itself.  Prototype chains function in a similar way.  Every object in JavaScript has a prototype property that is a pointer to the prototype it is based on.

Just like the dolls, once you open the first doll there is another similar but smaller doll inside.  For example, we create 2 prototypes in JavaScript.  The first is a Person prototype, which we plan to use as a base for more specialized objects. Next, we create an Accountant prototype based on that Person prototype.  Each individual object created from the Accountant prototype will have a pointer to the Accountant prototype, which in turn, will have a pointer to the Person prototype.  This will be true for all objects in the prototype chain until you reach the end of the chain.  Like the smallest doll, the prototype of the final object in the chain has no prototype inside it.

Read More

Some Fun Facts

Countries Operated In
Languages Spoken
Years in business
Satisfied Clients