Web app development

We have answers to your questions. But it goes both ways: we do ask questions too, especially at the outset, so you better have answers. We work as single team with your people.

We want to know you and your business very well in order to design a system matching your unique needs. We will then build it efficiently, following your guidance, keeping you involved (and thus informed) about the process. We will deploy it as quickly as possible and keep it running for as long as it takes.

What we do

  • We build:
    • Web apps, looking good on a computer, tablet or mobile phone
    • Back-end systems, exposing an API for your native
  • We design and build new systems from scratch, based on your idea, made concrete as a collection of user stories.
  • We bring stalled software projects up to date regarding framework and language versions, as well as tools and external dependencies it is bound with.
  • We find cost-effective hosting options and set up deployment processes, including back up of your database and user-uploaded content. We have our own DevOps engineers available for assistance.
  • We connect applications to any number of external systems through their APIs. Your app can be integrated with Facebook for sharing, with Twitter for authentication, with Google Maps for mapping and geolocated content.
  • That includes setting up integration with payment providers. You need a way to get money from your clients, we know how to make the process swift and secure.
  • We design and deliver scalable applications for handling large traffic in a pinch, if your idea becomes viral. It did happen to some of our clients’ apps in the past, we know what to do if that time comes.
  • We watch your apps for you, monitoring the traffic, network outages, hardware failures etc. We will alert you when necessary, but we will act proactively, doing what is necessary to restore interrupted service, whether by increasing server capacity to match the traffic peaks or by fixing production bugs, should they require immediate action.

The stack

Tools we have tried and found them good:
  • Ruby on Rails web framework
  • Sidekiq for processing background jobs
  • EmberJS - for building Single Page Applications
  • Vue.js - for when we need just a sprinkle of dynamic JavaScript
Databases:
  • PostgreSQL - our old favourite - capable and scalable
  • Search/Indexing tools - if you need to find something fast: Sphinx, ElasticSearch, Solr
  • Redis - for caching and storing the background job queue, among other uses
12345678910111213141516171819202122232425262728293031323334353637383940
class Ragnarson < ApplicationRecordhas_one :teamhas_many :core_valuesendclass Ragnarson::ClientsControllerdef index@clients = Client.allenddef newenddef show@client = Client.find(params[:id])enddef createif ragnarson.client_create(client_params)redirect_to root_pathelserender :newendendprivatedef client_paramsparams.require(:client).permit(:name,:phone,:email,:street,:zip,:city,:country)endend

Why Rails?

Ico 1

Is it not too old? No!

In the terms of software, 12+ years which have passed since the first version of Ruby on Rails was published seems like a very long time. Certainly there are newer frameworks out there. But newer does not always mean better. Rails has aged well, it has matured over years, it has been refined - like good wine aging in a barrel. It has made itself known and a large a friendly community has grown around it. Which brings us to the next point ...

Ico 2

It is popular

There are many developers out there, if you ever need to enlarge your team. It is not always the case with other frameworks, where the pool of experienced developers is small and hiring a specialist might be a lengthy and costly affair.

Ico 3

It gives you a head start…

…for there is an abundance of learning materials, use cases, extensions (known as gems) providing additional functionality. Consequently, we will not waste your resources by reinventing the wheel, solving problems for which there are already solutions within the Rails ecosystem. Instead, we will be able to concentrate on problems which are unique and essential for your business to thrive.

Ico 4

It minimizes your risk

You’re taking huge risks with the business itself anyway, not knowing if it will catch on and bring you profits you are expecting. Why lower your chances for success by having additional risk in the tech stack. Rails is proven to work and allows you to quickly build your MVP / prototype and start growing your user base.

Ico 5

We know Rails well

We have been using it since July 2006, when it was at version 1.1.3 We do remember every lesson we learnt along the way. It takes a few weeks to learn a new language or framework, but it takes years to fully master one. We did master Rails. We want to make sure our clients are getting the most value for their money - we’re using a proven technology that we know well.

Ico 6

Rails has great defaults and conventions

With the right approach and discipline, it’s easy to keep the project accessible to new developers. They know what to expect, where to look for things. It’s not as easy in the JS world. This makes it easy to onboard new people and to eventually hand the project off to the client’s team.

Ico 7

It gets the job done

We’re not hired to stroke our programming egos or to show off how clever the code we write is. Simple and reliable is the way to go.

Ico 8

It is the default choice, but not the only choice

Sometimes clients approach us with a problem that’s a perfect match for another toolkit / framework / technology. That’s when we will not use Rails - only when it makes sense.