Month of hard work in silence

It’s been a while since I’ve posted an update on our project.
I was very busy with day job and helping my wife with kids.

What has changed since I wrote the previous post?

First of all, I’ve used a free account on Product Hunt Ship to make a landing page.

Here it is: http://withmetrics.com

About Product Hunt Ship: it is a good product for the initial start when you have no time to write a copy.
In my opinion a bit expensive in a paid version, but I haven’t explored it yet.

During the last month, we had a lot of work to do with WithMetrics.

Currently, the app is running in closed beta for several e-commerce sites.

It was running an old version of the app, with MVPish interface, old functionality, old performance and so on. But it was working for a long time and did a great job for those who happened to be on our shortlist of beta-testers, bringing the value.

I have decided to develop a new version based on an existing codebase.

Old codebase was pure Django project with server rendered templates, with celery, Django REST Framework and couple less known libraries.

First thing I have changed was a custom user model. We wanted to get rid of usernames and make customers use their email instead.

I have replaced the user model and moved on with building the interface and improving internals of the project.

After some time and we have noticed that our new codebase outperforms our old one, that was running in production. Plus we have implemented some new features that wanted to get tested on real data.

Here our problems began.

The root of all problems was that changing the user model in Django on an existing project is super complicated and has no single solution and requires a lot of manual work.

What I have done: I have created another branch, based on production code, changed user model, recreated all users with the same IDs and used dumpdata/loaddata built-in Django commands to import apps data from production.

Then manually applied changes and recreated migrations.

I was lucky not to have any Content Types linking to User model because this causes more work to update relations.

The nerd part is over.

Some ideas from the product part.

We’ve done some research and figured out that the most valuable step for the worldwide market would be Shopify Integration. From what I have seen Shopify stores are about 80% of customers of other e-commerce related services.

So Shopify integration will be our priority when preparing the English version of our product.

With lack of time, this is it for today’s update.

I want you, readers, to subscribe on our landing page to receive updates and get notified when we are ready to launch.

To do this:
– Go to http://withmetrics.com
– put your email and click subscribe.
– optionally you will receive a confirmation email where you have to click a link to confirm your subscription.

I promise more interesting stuff and hope to post it more often!

Writing documentation for yourself

It sounds weird to write documentation for yourself, right?

No!

Imagine a project you are working on. You finished it, deployed and haven’t touched it for few months.

Now, after this long period of time, you decided to get back to it, make some improvements or fixes, update some packages.

Continue reading “Writing documentation for yourself”

What it takes to build a side project?

If are talking about building a side project it means that by definition we don’t spend fulltime building it.

If you have a day job you are probably spending most of your time thinking how to solve issues and complete tasks related to that job.

It is very costly to switch between trying to do both your day job and your side project during the day because switching between two projects that require creativity is very costly for your brain.
Continue reading “What it takes to build a side project?”

What e-commerce focused SaaS are we actually building?

What our SaaS is about?

Let me start uncovering this secret 😁

To describe our web app I’ll start from some distant point to give readers some context to better understand the purpose of the service.

One of the most important things for e-commerce companies is CPO, which stands for Cost per Order. This term means, how much money does company spend to make a customer put an order.

There is no secret, that acquiring new customers is very expensive.

One way to reduce the marketing cost per order is to find cheaper ways to advertise.
Continue reading “What e-commerce focused SaaS are we actually building?”

What tech stack to choose for building a project?

TL;DR
If your goal is to build a project in a reasonable time – use any tech stack you are familiar with.

Long answer:
As developers, we often try new tech for our side projects.

It happens because we have our day job where we have to work on existing applications built on top of mature and often dated libraries and frameworks.

Many side projects are usually started as a playground to learn new things, that you cannot use in existing projects. Such projects may never be finished because finishing them was not the goal from the beginning. Trying a new library/language/framework was.

Continue reading “What tech stack to choose for building a project?”

Building SaaS in 2018, backstory of creating e-commerce focused webapp

Hey everybody!

I want to share with you the story of how I built a SaaS product in 2018.

First of all, I already had a project that was in an MVP-state for a long time, while still serving customers and giving them value.

Continue reading “Building SaaS in 2018, backstory of creating e-commerce focused webapp”

Шпаргалка по оптимизации производительности сайта

Главные пункты при оптимизации скорости работы сайта.

Continue reading “Шпаргалка по оптимизации производительности сайта”