request-quote
Ruby on Rails

Popular Ruby Videos for Everyday Learning

There are numerous ways to study and improve Ruby on Rails level. Whether getting valuable knowledge from books or podcasts or enrolling into an online course or trying some tutorial, you are sure to open the door into one of the most popular...

Alex B.
Alex B.

Project Manager at iKantam

Project Management

Employees vs. Independent contractors: do you know the real price of hiring?

Have you ever thought about the real hourly cost of on-site employees? Global experience has shown that it’s hard enough to calculate your expenses exactly. Employees can cost twice and even triply higher than you expect. Does it sound unreal? Have...

Alex B.
Alex B.

Project Manager at iKantam

Project Management

Employees vs. Independent contractors: do you know the real price of hiring?

Have you ever thought about the real hourly cost of on-site employees? Global experience has shown that it’s hard enough to calculate your expenses exactly. Employees can cost twice and even triply higher than you expect. Does it sound unreal? Have...

Alex B.
Alex B.

Project Manager at iKantam

Project Management

Employees vs. Independent contractors: do you know the real price of hiring?

Have you ever thought about the real hourly cost of on-site employees? Global experience has shown that it’s hard enough to calculate your expenses exactly. Employees can cost twice and even triply higher than you expect. Does it sound unreal? Have...

Alex B.
Alex B.

Project Manager at iKantam

Mobile Development

Bitcoin Hardfork Developed by Ikantam Team

What is Bitcoin? To start with and avoid confusion, we need to separate it into two components. On the one hand, you have bitcoin-the-token, a snippet of code that represents ownership of a digital concept – sort of like a virtual IOU. On the other...

Alex B.
Alex B.

Project Manager at iKantam

Web Development

More or Less Scss: Comparing Parts of Awesomeness

Sooner or later every front end developer comes to the conclusion that CSS has limited functionality. A few years ago when I used to work on a project I questioned myself a lot: why isn’t it possible to create one variable for block colour/width/height and then call it when necessary? When I acquainted with Less and Scss such questions disappeared. Let’s compare Less and Scss:        There are many options to work with colours in Less and Scss. You can find them in the documentation for each preprocessor.   Conclusion As it can be seen from the table above each...

Inessa K.
Inessa K.

Frontend Developer at iKantam

Ruby on Rails

PHP vs. Ruby. Quick Comparison Notes

Some time ago I started using Ruby in my projects. Before that moment I had been mostly coding in PHP. So comparison of these two languages was quite inevitable when I switched to Ruby. On initial stage I used Codeacademy resources to learn more about language potential and its distinctive features. Even now having good command of the Ruby language I still keep comparing Ruby and PHP and come to new conclusions. In this article I would to make a quick comparative overview of Ruby and PHP based on my initial experience.    Ruby as an object-base language   Despite the fact that...

Igor P.
Igor P.

Ruby on Rails Developer at iKantam

iOS

Using Swift Modules When React Native Is Not Enough

Have you ever faced the problem when you lack React Native resources to implement certain functionality? Say you want to send iOS Local Notifications and process an event when a user clicks on Local Notification. React Native provides some API to send Local Notifications but it lacks API for their processing. There two ways to solve this issue: 1.      Write a handler tool in a native language 2.      Write API in a native language for javascript By default, a basic React Native project is written in Objective-C. At first, we will move the...

Alex K.
Alex K.

Senior Ruby on Rails Developer at iKantam

Web Development

Web and Mobile Prototyping as the Way to Perfection

Web and mobile development is a complex process which requires a certain amount of preparation. Building prototypes is definitely considered to be such preparation. Let’s see why it is so and how to organize prototyping best. Prototypes help to understand the core of the project and walk in the right direction from the very start. Project estimate and deadline are often based on prototypes that clarify many initial project questions. We all know how it is important to be mutually agreed on requirements and expectations. I prefer Axure and Justinmind prototyping tools. For websites I use the...

Anton N.
Anton N.

UI Designer at iKantam

Web Development

CSS Files: When Messing Up Style Sheets Is Not in Style

Many developers are often required to implement new functionality on the website. It is obvious that it is not possible to avoid CSS editing in this case. So how does it all happen? The developer finds a CSS file titled as “style.css”, “main.css” or “layout.css”. Then he scrolls it down and add his own styles. There is another example. Let’s imagine that it is necessary to modify a block which contains styles from different classes. Not giving it another thought the developer creates his own class with required styles and overlaps the previous code by adding “!important”. In the course of...

Inessa K.
Inessa K.

Frontend Developer at iKantam

Project Management

Whooshing Sound of Deadlines

We live in a busy world where we set goals and try to find the best use of our efforts to achieve them. Nobody likes time wasters who are unable to meet deadlines.  It is true for all spheres of life but I would like to talk about deadlines in web development. It is obvious that every client cares about time and no agency wants to lose face.  Douglas Adams, English writer best known for The Hitchhiker's Guide to the Galaxy, once said, “I love deadlines. I like the whooshing sound they make as they fly by.” So what’s wrong with deadlines? What hurdles may possibly prevent us...

Alex B.
Alex B.

Project Manager at iKantam

Ruby on Rails

You Shall Not Pass Unless You Know How To Build Routes

The use of Open Source Routing Machine is not always that straightforward and simple as it may seem at first. Very often additional factors should be considered. Server choice and its proper configuration are definitely one of them and we learned it from our own experience.   We used to have a project to develop a logistic service for goods transportation. It was in Ruby and the main algorithm was Ruin And Recreate. We also used Amazon instance. During the development process we had to calculate transportation time. The best option was to use OSRM. So we created a gem to support OSRM API...

Igor P.
Igor P.

Ruby on Rails Developer at iKantam

UI/ UX

Simplify, Simplify and Simplify. Recalling Redesign Project

I have recently finished working on a wonderful project. I enjoy creating design for small e-commerce stores so it was a great experience to take part in custom kids’ clothing website redesign project – The Patchery.  They do cool stuff on the website: in a few simple steps you can design T-shirts, dresses, hoodies and other clothes for children. The clothes are tailored according to the design created and delivered right to customer’s door. My aim was to improve the current design concept. I tried to make UX simpler and more intuitive for both kids and their parents.  Modern and...

Julia G.
Julia G.

UI Designer at iKantam

Ruby on Rails

CSV Import. Just SIT (Split, Insert, Think) Down and Do It

Sometimes it happens that we have a really big .csv (~100 MB) file and we need to import it to our RoR application database. We can try to use the built-in class: require 'csv' def import(file) CSV.foreach(file.path) do |row| product = Product.from_csv_row(row) product.save! end end   However, it will take too much time for .csv files to be imported. What is more, you will have to import the .csv file again in case some rows are broken.    So how to solve this problem? If your models are not linked you can just use activerecord-import as mass insertion is much faster...

Alexey S.
Alexey S.

Ruby on Rails Developer at iKantam

Ruby on Rails

When Fat Models Are No Big Deal

Working on the RoR project with ActiveRecord we noticed an increase in the number of models (more than 1000 lines). So it was getting more difficult to add new functionality. The project scope was increasing as well so we had to find a solution to the problem. We decided to spend some time on refactoring. After fat model code analysis we learnt that database query methods had taken 30% of the overall code.  class FirstModel < ActiveRecord::Base # relations section # ... # query methods class << self # ... def custom_method_to_fetch_data joins(:...

Alex K.
Alex K.

Senior Ruby on Rails Developer at iKantam