2
0 Comments

Custom coding your startup. Is it for you? CTO insights.

Hello, Indie hackers,

This is a piece about our custom-coded extension with insights from Ratepunk's CTO. Read this to find out if an approach like this is the right one for you.

I'm the CEO of a startup called Ratepunk. Ratepunk is a web extension that compares booking prices on most of the OTA's in existence - you would go to a booking website, choose your dates and the exact room you want, and then our little extension would pop out on the right side of your screen and tell you that there is an exact same room on the exact same dates you picked but just a few hundred EUROS (just an example, sometimes it's tens of euros, sometimes even thousands) cheaper than on the OTA you're currently looking at. We also have a few more complicated and sophisticated features, like live comparison on what IPs get the best price or whether the booking would be cheaper if you booked via your mobile device, etc.

whats cooking good looking

Now, I explained what we do in detail because it is important to understand why we chose custom-coded solutions instead of the more traditional approach.

Here are the insights from our CTO, Tadas Gricius, who is nothing short of a coding and technical wizard. He leads our dev team here at Ratepunk.

"What are the pros of custom coding an extension like this?

  • Flexibility - You are not tied to a specific framework. This gives you unparalleled freedom to explore and create all the features and functionalities that the team comes up with. It simply invites innovation.

  • Scale - you can scale the product without any issues.

  • Innovation - most of our extension functionalities are created by thinking "out of the box," and in this case, standard libraries are useless, and we need to create custom systems to overcome the problems that we face.

  • Performance - scaling a web extension will result in more and more power being consumed. Having an entirely custom extension allows us to be extremely flexible in the ways that we approach these scaling issues.

"Now, what are the cons of custom coding your software?"

  • Decision making - because there's no framework behind your back, you will have to, obviously, create everything from scratch. Every decision has to be well considered, looked over time and time again, and future-proofed. No quick solutions and no half-measures are acceptable.

  • Architecture - while creating the architecture for your custom-coded software, it is extremely important to plan ahead and kind of see the whole picture so you avoid any fuck ups in the future. Because if you suddenly start to shift the extension's logic - the entire thing can and will come crashing down. You kind of have to see into the future.

  • And, of course, it is very time-consuming when compared to the traditional approach. There is no guide for us on how to create the production-ready extension that we want; therefore, it is entirely up to us to figure it out. It requires A LOT of time and trial and error.

Our crown jewel achievement of the dev team is, without a doubt - AirBnb price matching.

If you didn't know, you can find AirBnb listings on other OTA's and for cheaper! It's just extremely hard to find them because Airbnb and OTA hotels most of the time have different names, pictures, descriptions, etc., despite being the exact same hotel. It's, in the eyes of Google, completely different content, sometimes with no similarities whatsoever (apart from the location).

This was a problem like no other, but we found a solution, a custom-coded one. No framework would've been flexible enough for us to do what we did, but we managed to do it anyway. Sadly, I am not at liberty to discuss the technicalities and details of this feature).

"Why did the team choose to custom code Ratepunk? Was it always the plan?"

For all the pros, probably. There were no other solutions that would allow us to create such a complex system.

"Why is it easier to scale a custom-coded project?"

Because it gives you complete freedom in project creation, whereas frameworks would limit us with functionalities and approaches that we can use.

"Is it harder to find coders who are open to working on this type of software (entirely custom-coded)?"

"I don't think so. The project is created using plain Javascript, which is popular among developers, but it's harder to train new developers because the system will be entirely new for them."

"Is custom coding most often the non-traditional approach when developing apps, extensions, and software similar to this one?"

"Extensions do not have production-ready frameworks like web devs (React, Angular, etc.) So, it's up to developers to decide if they want to use a framework/boilerplate from some hobbyist who was also working on Chrome extension or create a framework from scratch. The problem with working with other frameworks is that they will not always be suited to your needs. This is a good article about framework classification. This is a good article about framework classification"

"What flexible solutions were you able to execute only thanks to the fact that the extension is custom-coded?"

"Some flexible solutions:

  • MV3 - at the beginning of our project development, all the frameworks(or at least what we could find ) still used MV2, which is deprecated
  • Multiple builds for different systems: chrome, firefox, safari, ios"

Do you have custom-coded software? Share any pros and cons tips I might've missed. Also, feel free to reach out with technical and code-related questions; I'll relay them straight to Tadas and see if I can get the answers you seek!

Trending on Indie Hackers
Passed $7k 💵 in a month with my boring directory of job boards 40 comments Reaching $100k MRR Organically in 12 months 33 comments 87.7% of entrepreneurs struggle with at least one mental health issue 14 comments How to Secure #1 on Product Hunt: DO’s and DON'Ts / Experience from PitchBob – AI Pitch Deck Generator & Founders Co-Pilot 11 comments Competing with a substitute? 📌 Here are 4 ad examples you can use [from TOP to BOTTOM of funnel] 10 comments Are you wondering how to gain subscribers to a founder's X account from scratch? 9 comments