App Development

What is source code? How it works and why you should own yours.

24 October 2019 • 5 minutes

Written by Leo Mylonas

image for 'What is source code? How it works and why you should own yours.'

Source code is a set of instructions that a computer program will follow. It’s the genetic makeup of your application or website. When you don’t own your source code, you are 100% at the mercy of the development firm that built your app.


What is source code?

If you’re picturing 1s and 0s flying past your head in a green hue like in The Matrix, you’re not far off. Source code is a set of instructions that a computer program will follow. These instructions are written by programmers or developers as text files. There are many different languages and dialects of code, and each has its own unique way of writing instructions.

Image

Getting started with app development.

When you have an awesome idea for an app, but no idea how to actually make it, where do you start? Maybe you send an out-of-the-blue message to that kid who was “good with computers” back in school. You know, the one that you haven’t talked to since graduating? When that idea inevitably fails, what do you do next? If you have a swag of cash behind you, you might contact an software or app building company.

After months - if not years - of back and forth, ache, and hardship (cough, cough..scope creep), you finally have an app that you’re happy with. At this point, you probably feel like Frodo on Mt Doom at the end of Lord of the Rings, or Jack on the Titanic.

Image: /site/files/frodo.jpg Image: /site/files/titanic.jpg

Without your source code, you have no control over your app.

At the end of your app building project, you probably expect that you can take your app and do what you want with it. Not so fast.

While you might be given the app binary (the program that actually runs), it is very possible that the development firm you worked with will retain ownership of the underlying source code.

But who cares, right? What do you need with the source code? You have your app! Slap it on the app store for 99c and wait for the money to pour in.

Sounds great… until you realize the size of the hole you’ve dug yourself into.

Want to add a new feature? Nope.
Found a bug you need to fix? Nope.
Security breach you need to resolve? Nope.
Want to review the quality of the code? Nope.

Want to test how secure your application is? Nope.

Imagine you want to grow a plant from seeds. You aren’t a horticulturist, and have no idea how to grow plants. You source a gardener to help you. You pay the gardener to plant the seeds, and pay all the maintenance costs for cultivation. All goes well and your plant grows, but your plant is on the gardener’s property. The gardener gets busy with other clients, and neglects your plant. Maybe they forget to water your plant, or accidentally poison it. As much as you want to keep your plant alive, the gardener has all the power.

Your software application development is like the plant. Without regular upkeep and attention, it will die. The owner of an application’s source code ultimately holds the reigns.

What if you can’t afford to invest any more money into development? What if the development firm goes out of business? What if the development firm is super busy and doesn’t have time to make your critical changes for another 6 months? What if the development firm changes their internal processes and they “no longer support” your app’s tech stack?

When you don’t own your source code, you are 100% at the mercy of the development firm that built your app.

DIY app building tools, citizen developers and low-code platforms.

If you don’t have swags of cash behind you, app building tools like low-code platforms are a more cost effective alternative to traditional software development. How awesome are they? Now non-techies can become citizen developers and build their own apps with drag and drop interfaces. Who needs developers?

Sure, low-code technology may seem super cool, but most of these low-code platforms hold your app’s source code hostage. Either you don’t have access to your source code at all, or you are expected to pay a small fortune to have the privilege of accessing your source code. If you opt to pay, the “source code” you receive is completely unreadable - it’s machine gobbledygook.

Feeling a bit disheartened? I don’t blame you.

Image: https://codebots.com/site/files/may-i-have-some-more.jpg

Own your own source code with Codebots.

Codebots is a Platform as a Service (PaaS), powered by code-writing software robots (codebots) that can write over 90% of an application’s code base. Codebots is where freedom meets control - the source code is all yours. No machine gobbledygook here either. Our codebots are trained by human developers following industry standards and best practice, meaning a codebot will write 100% human readable source code.

Codebots enables bots and humans to work together on the same source code, solving creative and complex challenges more efficiently. Bots write common extensions and boilerplate code to provide out-of-the-box functionality, while human developer focus on niche business logic and the true intellectual property of app development.

Clean, bot-written code means Codebots reduces the technical debt your application incurs, but the most important point of this article, is that the source code you create with Codebots is yours, even the code your codebot writes. You have the freedom to do whatever you want with your source code.

Want to add a new feature? Yep.
Found a bug you need to fix? No problem.
Security breach you need to resolve? Consider it done.
Want to review the quality of the code? Go for it.
Want to test how secure your application is? Let’s do it.
Want to stop using Codebots, go old school and write it yourself? Be our guest.
Want to hand your source code over to another firm? Sure thing.
Want to print it out, and get a picture of yourself standing next to it? You do you, boo.

Image

Owning your app’s source code is super important, and not having it can cause a world of hurt. Do the sensible thing and use Codebots for your next software application development project.

PS: If you use Codebots to write code that takes us to the moon again, please let me know because that would be awesome, and you are awesome and I’d like to buy you a drink.

Leo Mylonas

Written by Leo Mylonas

CEO

When Leo isn’t implementing our DevOps process or heading up the development of our products, he is usually found eating a juicy steak.