Minimum Viable Product is only viable for so long

Nobody sets out to build a slow site, a buggy interface, or a difficult to maintain application.

You might have launched with a minimum viable product and never brought it up to standard for long term maintainability. Or perhaps you didn't have the right team for that.

Team changes, too, can leave an application in a state of undocumented inconsistency, including seemingly arbitrary architectural decisions, sharp stylistic differences, and the detritus of teams learning on the job.

All applications eventually suffer from entropy, from bugs to performance lags, testing woes and dependency issues.

Is your Django application serving your business, or is your business serving your Django application?

Slough off technical debt and build value

Technical debt is the sum cost incurred as a result of previous technical decisions. In plain English, it's the cost incurred for replacing the windows in your house after designing it with non-standard sized windows. It's the extra cost of making changes because of early decisions.

Often these decisions were the best decisions at the time. Getting to market with your minimum viable product was most important. And you couldn't have known about the change demanded by your customer base.

Without addressing these legacy decisions each additional feature gets a bit harder to develop, and more and more time is spent on getting it out of the way, rather than creating value for your own customers.

Is your Django application ready to sail for the horizon or laden with yesterday's baggage?

Like having an instrument panel for your project

It's easy to look at a finished product and think you know where the problems are. But without certain knowledge subsequent investment is just as likely to be money down the drain.

A comprehensive code review is the first step in getting your Django site on the right tack. Without perspective like this is like starting surgery without conducting an exam or any tests first.

You'll learn about your code quality, test coverage, documentation gaps, performance and security issues, and a developer's perspective on the architecture of the application all in respect to the business goals of your application.

You know where you want to go, but do you know where you are?

The confidence to make smart decisions

You'll learn a lot about your code quality and where there are gaps in tests, as well as what's rock solid. And you'll learn about the architecture and any hidden gremlins in your code that automated tools just can't make sense of.

It's important to know that just as much as you need to know what's wrong, you need to know what's right. Don't spend thousands of dollars fixing problems that aren't or chasing perfection where it's just not needed.

It's near impossible to make the right decisions without the right knowledge. The knowledge gained from a comprehensive project review - including code quality, developer and architect level assessments, and a recommended prioritized action plan - makes the difference between building your business and just digging holes.

How valuable are the right decisions to you?

What do we know?

See for yourself!

Do you have the necessary experience on hand?

Have questions? Get answers.

Do we get a grade for our code?

No, we think single metrics like that are more distracting than useful for most projects. A grade might suffice for test coverage, or how well your code hews to PEP8. It can't properly take into account the business goals of your application, your technical priorities, and the issues you bring to the table.

Why not just use automated code review?

Not one automated code review product takes into account known issues, decision trade offs, project history, business prioritization.

Code coverage reports don't tell you whether your tests themselves are fragile. And they don't tell you whether the tests meaningfully test the code beyond just exercising it.

Is my code protected?

Your code is your intellectual property. Our agreement provides a non-disclosure clause to this effect.

What does it cost?

  • Basic review ($495): review the code base and provide assessment and initial prioritized recommendations
  • Ready review ($1100): includes the basic review plus client-side application code and configuration review
  • Finish line review ($2500): this includes what's in the ready review plus implementation help, including setting up CI and deployment process, and 2 1-on-1 (or 1-on-several) architecture and refactoring coaching sessions.

The review fee is payable via credit card using Stripe. Invoiced after we've discussed your project, payable before the review.

What if I'm not satisfied with the review?

If you wish you didn't know any of this about your app we offer a money back guarantee (applicable to cost of review, excluding implementation or coaching.)

How do I start?

Read on.

Let's start

Here's what we'll do:

  1. The first thing we'll do is discuss what specific issues - if any - you're struggling with currently. If possible we'll set up a time to talk over the phone or Skype, but email works too.
  2. After this discussion I'll provide you with a non-disclosure agreement. In the event this agreement is unsatisifactory to you we can accept for review customer NDAs.
  3. After this small step you'll provide a copy of your code. This can be by providing read access to a repository (e.g. GitHub or Bitbucket) or by sharing a zipped copy of the codebase.
  4. Code review time! It usually takes a few days but can take up to a week depending on our backlog.
  5. When we're done we'll provide you with a detailed copy of the review report, including assessment, concrete suggestions and fixes, and a strategy for continuing development.

Are you ready to take a look under the hood and get your Django project cranking?

Get your Django code review started