Tag Archives: tubik

ruby on rails web development

Ruby on Rails Development: Benefits and Pitfalls.

Any driver in the world knows: it doesn’t matter how powerful, innovative and high-tech is your vehicle if you have no chance to try it on the good road. This small everyday situation easily shows that lots of things, concepts and activities are deeply interconnected and mutually influence each other. In digital design and development it works the same way: there’s a huge lot of factors having an impact on final result. Bad design will spoil well-written code as well as badly developed code can bury the most sophisticated design solutions. Every side plays its big role in the final outcome which should present a user-friendly product.

 

Earlier we have already given closer insights into the definition, processes and tools for web development. Today’s post is going to continue the theme presenting considerations on a particular tool for web development Ruby on Rails and reviewing its benefits as well as possible pitfalls that need to be taken into account.

 

Brief background

 

Let’s start with a tiny bit of history. Ruby is dynamic, object-oriented, open source programming language with a focus on simplicity and productivity, created by Yukihiro “Matz” Matsumoto and first released in 1990s. It powers famous websites such as original version of Twitter, Hulu, Living Social, Basecamp etc. Many companies use Ruby in some capacity: BBW, Cisco, CNET, IBM, JP Morgan, NASA, and Yahoo. Moreover, Ruby has framework which supports high level of flexibility for developer in the process of creating code for particular aims.

 

“Ruby is named after the precious gemstone; it’s not an abbreviation of anything. When I started the language project, I was joking with a friend that the project must be code-named after a gemstone’s name (àla Perl). So my friend came up with «ruby». It’s a short name for a beautiful and highly valued stone. So I picked up that name, and it eventually became the official name of the language.” said Yukihiro «Matz» Matsumoto, the creator of Ruby, in his interview about the roots of the programming language.

 

Ruby on Rails is an open-source web application framework for the Ruby programming language optimized for programmers’ sustainable productivity. David Heinemeier Hansson extracted Ruby on Rails from his work on the project management tool Basecamp at the web application company also called Basecamp. Hansson first released Rails as open source in July 2004. Major brands like Amazon and eBay even have Rails projects.

 

“Rails (Ruby on Rails) was extracted from my work on Basecamp—a project collaboration tool from 37signals. So it was motivated by needs, not predictions. And I believe that’s a big part of why we’re currently enjoying such success. I didn’t try to imagine what some programmers might need for a fantasy job. I just built what I needed to get my work done with a smile.” says another interviewee David Heinemeier Hansson, the creator of Ruby on Rails.

 

ruby on rails web development article

 

What is Ruby on Rails?

 

Ruby on Rails often just called “Rails” is a development tool to give web developers libraries providing structure for all the code they write. Actually, it is a server-side web app framework that extends the Ruby programming language. Ruby presents the operating language for Rails the same way as PHP does for Symfony and Zend or Java does for Struts. Rails combines Ruby programming language with HTML, CSS, and JavaScript to create a web app. This framework uses Ruby to dynamically assemble HTML, CSS, and JavaScript files. Rails helps developers to build websites and web apps abstracting and simplifying common repetitive tasks.

 

Rails apps operate upon a model–view–controller (MVC) pattern. Many other web frameworks use this pattern, such as AngularJS (JavaScript), Django (Python) and CakePHP (PHP).This means that the apps are divided into three parts: models, views and controllers. These components have the following roles:

 

Models. They are used to represent forms of data used by the app and contain the logic to manipulate and retrieve that data. In Rails, a model is represented as a class. These forms of data are not low-level like strings or arrays.

 

Views. They are the templates (typically formed of a mix HTML and Ruby code). Views are used to build up the data that users of web app see in their browsers or through other clients. They can be rendered as HTML for web browsers, XML, RSS or other formats.

 

Controllers. Controllers provide the logic that binds together models (their associated data) and views. They process input, call methods and deliver data to the views. In Rails, controllers contain methods known as actions that, generally, represent each action relevant to the controller, such as “show”, “delete”, “view”, etc. The framework can be used with various operating systems such as Windows, Mac OS X and Linux; various databases such as SQLite, MySQL, PostgreSQL and others; various web servers such as Apache, Nginx, etc.

 

Talking about operations via the platform, developers usually mention several core principles. Among the main ones, convention over configuration (CoC) should be mentioned. It means that developers don’t have to spend a lot of time configuring files in order to get setup, Rails comes with a set of conventions which help speed up development.

 

Another important principle of software development in Rails is don’t repeat yourself (DRY). It encourages developers not to make duplications in their code and isolate functionality in small functions or files. The principle helps to make code modular, easier to understand, read and debug. When code is duplicated, the outcome becomes more complex, making it more difficult to maintain and more vulnerable to bugs.

 

Ruby on Rails uses Representational State Transfer (REST) architecture that rests around the relations between the client and the server. The architecture helps to create logic around the app and code that developers find highly intuitive and functional.

 

Another key feature is RubyGems, a package manager that makes it easy to create and share software libraries (“gems”) extending Ruby. RubyGems provides reliable and simple system to install “gems”. Anyone can upload them to the central RubyGems website, making the “gem” immediately available for installation by others. The RubyGems website is where developers obtain the most recent version of Rails.

 

ruby on rails web development

 

Benefits and drawbacks of Rails

 

As well as any tool or software, Ruby on Rails has its strong sides and pitfalls that need to be considered. Let’s briefly review both aspects on the basis of various feedback from developers.

 

Benefits for developers on Ruby on Rails

 

Large Community. Generally, Rails is more than development tool, it is also large community. The members share their works, often use the same tools, and support each other. The informal community provides diversity of jobs, recruiters, meetups, conferences, examples of businesses building websites with Rails, and clients funding startups. It is no surprise that Rails is popular on social coding resource Github. This aspect is particularly helpful for beginners.

 

Variety of gems. “Gem” is the software package that contains a package Ruby app or library. Commonly it is used to extend or modify functionality in Ruby apps. Some “gems” provide command line utilities to help automate tasks and speed up developer`s work. They are all publicly available at RubyGems.

 

Cost-effective. The process of building functionality with Rails is fast because it has the collection of open source code available within the community and set of conventions. Ruby on Rails also runs on a free operating system and works with mostly free databases and web servers. These features provide less number of working hours, quick development process and low overall cost.

 

Code Quality. Rails uses Ruby programming language whose code has a high level of readability. This aspect increases productivity with the lower need to write out separate documentation or comments, making it easier for other developers to pick up existing projects.

 

Tester’s perspective. Rails has been developed with a focus on testing and has good built-in testing frameworks.

 

Diversity of tools. Rails provides fantastic variety of tools that help developers to deliver more features in less time. For example, it has a standard structure for different web apps in which all the common patterns are are available for programmers.

 

Flexibility. It is one of the biggest pros of using Ruby on Rails. For example, Rails interacts perfectly with technologies and frameworks like AngularJS. This factor offers developers opportunity to separate layers of the app and use multiple technologies.

 

web development ruby on rails

 

Potential Ruby on Rails problems and limitations

 

Performance. Some developers complain that Rails apps are not as fast as Java or C. The statement is generally true, but for the majority of apps it is fast enough. Rails web app may become a little slow and bloated when it is large although a high-skilled programmer has the means to tune the performance up whenever it is necessary. There is also the option of running the app under JRuby, so it will show the same performance characteristics as Java.

 

Hosting Issues. Not all website hosts can support Rails. The main reason is that Rails can be more resource intensive than PHP, a fact which deters some providers. Alternatively, there is a number of hosts (Virtual Private Servers) such as Amazon EC2, EngineYard, Linode or Rackspace, which can satisfy Rails developers’ needs.

 

Popularity. The number of Rails developers is growing year by year as more people switch to it from other programming languages. Yet, Rails is still not as popular as Java and PHP. Probably, one of the reasons for this is that the language is relatively difficult to learn especially compared to PHP. However, one of the main differences between the Rails and others in this aspect is the big amount of open source code (“gems”) which is publicly available. “Gems” are helpful for beginners because they appreciably simplify the process of web development.

 

Lack of documentation. It can be hard to find good documentation for the less popular “gems” and for libraries which make heavy use of mixins. Developers often end up finding the test suite playing the role of documentation and they have to rely on it to understand behavior of the written code. This aspect isn’t bad in its essence, as the test suite should be the most up-to-date representation of the system; however, it can still be frustrating having to dive into code, when sometimes written documentation would have been much quicker.

 

web development

 

Let’s draw up the balance. Rails is a huge web app framework with a great number of built-in features. It can be used to create either small or large apps, but it tends to use more memory and resources than the other frameworks and performance can be a bit lower. In the majority of cases, Rails apps will be composed of many tens of files and have tight structure of models, views and controllers. Anyway, nowadays the framework is popular because it is powerful, standardized, reasonable and well-established.


Welcome to read more articles on web development

web development and programming

Back-End Development. Foundation of Digital Product.

Seeing an elegant building, we often don’t even imagine that its shape, height and loads it carries are possible due to solid and powerful foundation hidden from the field of vision. The same happens with digital products: when we open the website that downloads the history of our interactions with it in split seconds, or set the application connecting us with friends and saving our data on any device, when we do simple everyday operations like sending emails or downloading files, most of us don’t know that those interactions are possible due to back-end development which establishes the foundation for effective front-end and enables steady functionality of websites and applications.

 

A lot of internet users and clients ordering services for creating a website or an app think that web development is one-stage process. In fact it is divided into two parts: front-end and back-end development, and for people standing far from this sphere of professional activity, it might be really hard to understand the difference. In our previous articles we have already described general directions of web development and gave a closer review of front-end development issues. Today the theme we raise deals with back-end development, its essence, tools and specific nature.

 

What is back-end development?

 

In general terms, a website or dynamic web application is a number of files containing structure, design, content, and functionality. The technologies and codes that enliven a site, the area of web development which  makes the site run invisibly to users is called back-end. It consists of the server, the database, and the server-side applications. Back-end is the far side of the webpage or screen functionality; to set the analogy, it could be imagined as the brain or the engine of a website or app.

 

For example, when users navigate their web browser to http://tubikstudio.com/, they actually turn to the server where Tubik Studio website files are located and send a request to see them. It should be also noted that loading a website, users aren’t looking at that website directly on the server. The server sends the files to the web browser, which then looks at them locally, on user’s computer. In fact, back-end sets the basis on which front-end development is able to come into play. Back-end developer programs core computational logic of the system including software, website and information.

 

back end development programming

 

What are the objectives of back-end?

 

The key tasks of back-end are accessing the data that users request through the web browser or app, combining and transforming it, and returning the data in its processed form to the requester.

 

Accessing the data that users request
Any time of day or night, there’s always the chance that users will ask for data surfing the website or using the app. Taking it into consideration, back-end should be available on demand being ready to react and respond users’ requests.

 

For practical situation, let’s imagine someone launches an e-commerce startup before their website or app is prepared for a considerable number of users to log in and shop, especially in high season of celebrations like Halloween or Christmas campaigns. In this case the launch is done on shaky ground. What will happen? One day, the website or app will crash. Make no mistake, not being able to get the respond from the website, users will get angry and quickly find deals from the competitors. This is how the invisible foundation of back end directly supports not only digital product, but far more — brands, companies and clients.

 

Back-end always works with data. Developer has to understand it is vital for back-end to be developed on the basis of security practices. This is even more significant when the data interacts with secure information, such as medical, personal, or financial data.

 

Combining and transforming the data
The data that is required for website or app can come from a variety of sources called databases. The task of back-end is finding information the user needs within the databases, which contain enormous amounts of data, and then combine it in a way that provides useful and required results.

 

Imagine that someone downloads the app for travelling or opens the website aimed at this theme and wants to know how to arrive to a particular destination. The website or app will need to get access to the information from the city transport databases, taxi companies, Google Maps and so on and so forth.

 

What happens if the questions, which back-end has to respond, change over time? The structure of back-end is always optimizable which means that developers will be able to respond new requests within its code.

 

Returning the data
Eventually, as soon as back-end gathers and combines all the requested information, the data should be sent to the user. How many internet users can read the information in code produced for back-end? Perhaps, a small handful of chosen. What should others do? To solve this problem, here come the famous APIs playing the role of back-end “translators” transforming pure code into a language legible and edible for humans.

 

For the efficiency of a digital product performance, it is perfect when web designers, front-end developers and back-end developers can work together from the earliest stages of any project and have a constant feedback loop. It provides the ability to choose the best design and development solutions and techologies so that the final result could look great and operate properly.

 

What is the structure of back-end?

 

Back-end includes three parts: server, databases, and APIs.

 

The server is a computer, a device or a program whose purpose is managing network resources and data.

 

web development

 

Alternatively referred to as a databank or a datastore, and sometimes abbreviated as DB, a database is a big amount of indexed digital information. It can be searched, referenced, compared, changed or manipulated with optimal speed and minimal processing expense.

 

APIs (Application Programming Interfaces) are the tools that transport the data sent from back-end to front-end of the website or app. This data, in particular, can include elements of the layout such as buttons, menus, controls, tabs, images, copy, etc.

 

Back-end presents a combination of the databases and the applications written in a server-side language running on the servers.

 

Server-side languages

 

PHP. It is an HTML-embedded scripting language. The main aim of the language is to allow creating dynamically generated pages quickly. PHP is easy to install and deploy, it is staying competitive with lots of modern frameworks, and is the foundation for a number of content-management systems (CMS). PHP powers famous web sites and platfroms such as WordPress, Wikipedia, Facebook etc.

 

Python. It is an interpreted, object-oriented, high-level programming language with dynamic semantics. This programming language is fast, making it effective for getting things to market quickly. Python is simple; its syntax is easy-to-learn, readable and therefore reduces the cost of program maintenance. It is the oldest of the scripting languages, and often referred to as powerful and effective. Python powers famous sites such as YouTube, Google, The Washington Post etc.

 

Java. It is a programming language designed for use in the distributed environment of the Web. Java is similar to C++ language, but it is simpler to use than the latter and enforces an object-oriented programming model. It can be used to create complete applications that may run on a single computer or be distributed among servers and clients in a network. Java powers famous sites such as Twitter, Verizon, AT&T, Salesforce.

 

Ruby. It is dynamic, open source programming language with a focus on simplicity and productivity. Great for building complicated logic on the database side of a website, Ruby connects the back-end and database functionality that PHP and SQL can offer. It is characterized as the language of easy maintenance and high-traffic demands. Ruby powers famous sites such as Hulu, original version of Twitter, Living Social, Basecamp etc. Moreover, the framework Ruby on Rails for this programming language has extensive libraries which support higher level of flexibility for developer in the process of creating code for particular aims.  Here in Tubik we also use this programming language as the basis for back-end development.

 

C#. It is type-safe, object-oriented language that enables developers to build a variety of secure and robust applications that run on the .NET Framework. C# can be used to create Windows client applications, XML Web services, distribute components, client-server applications, database applications, etc. It also can be used to build iOS and Android mobile apps with the help of a cross-platform technology like Xamarin.

 

С++. It is an enhanced C language typically used for object-oriented programming. C++ is effective for complex applications also built on the .NET Framework.

 

Erlang. It is a general-purpose programming language. Erlang has built-in support which increases its level of competitiveness and distribution. It is used in several large telecommunication systems from Ericsson.

 

Server-side frameworks

 

ASP.NET. It is an open source web framework for building modern web apps and services with .NET. It creates websites based on HTML, CSS, and JavaScript that are simple, fast, and can scale to millions of users.

 

Ruby on Rails. It is an open source Ruby language framework for developing database-backed web applications. Ruby on Rails is also full-stack framework which includes everything needed to create a database-driven web application, using the Model-View-Controller pattern.

 

Django. It is a high-level Python language web framework that encourages rapid development and clean, pragmatic design. Django is also free and open source.

 

Node.js. It is a JavaScript runtime built on Chrome V8 JavaScript engine. Here are some examples of Node.js frameworks:

  • Hapi.js
  • Socket.io
  • Express.js
  • Mojito
  • Meteor
  • Derby
  • Mean.js
  • Sails.js
  • Koa.js
  • Total.js

 

Relational database management systems (RDBMS)

 

In order to work properly, every website needs a database to store its code, images, files and other data. The following relational database management systems (RDBMS) are the most popular for web-based applications:

  • MySQL
  • PostgreSQL
  • MongoDB
  • Microsoft SQL Server
  • Oracle
  • Sybase
  • SAP HANA
  • IBM DB2

 

web development

 

Let’s draw up the balance. Front-end is the part of the website or app which users see and interact with. Back-end is the engine behind the interface, allowing data validation, processing and storing.

 

Recommended reading

 

Server-Side Scripting: Back-End Web Development Technology

 

Web Development. Basics of the Job.

 

3 Web Dev Careers Decoded: Front-End vs Back-End vs Full Stack

 

The Languages and Frameworks You Should Learn in 2016

 

I Don’t Speak Your Language: Frontend vs. Backend

 

Basics of Back-End Development

ios development tubik swift objective-c

Swift or Objective-C? Tool Tips for iOS Developers.

In creative process, there are always some points of choice and contradictions. While UX designers are debating about Photoshop vs Sketch theme and give their opinions on efficient prototyping tools, iOS developers also have their own big debate. Today we are going to pitch in and add some of our thoughts to this global discussion of which programming language is better, Objective-C or Swift. We asked Tubik CTO and experienced iOS developer Maria Nazarenko to share her opinion with Tubik Blog readers.

 

Brief background

 

Let’s start with a tiny bit of history. The first and therefore the eldest in the discussed pair of programming languages was Objective-C. Primarily it saw the light of the day in early 1980s and was created by Brad Cox. So, one of the points that could be definitely applied to this programming language is that it’s really tried-and-true and tested by several generations of developers.

 

At the moment Objective-C is commonly described as the general-purpose, object-oriented programming language adding Smalltalk-style messaging to the C programming language. Before Swift came into play, Objective-C had been the main programming language used by developers for OS X and iOS operating systems, and their APIs.

 

Swift, introduced at Apple’s 2014 WWDC, brought its own dose of revolution. In general description, Swift is a general-purpose, multi-paradigm, compiled programming language broadening the previous scope of operating systems as it was developed for iOS, OS X, watchOS, tvOS, and Linux. Swift was designed to enable work with Apple’s Cocoa and Cocoa Touch frameworks as well as the large body of Objective-C code already written for Apple products.

 

Initially Swift was intended to be more resilient and safer than Objective-C, and also more concise and developer-friendly. It was built with the LLVM compiler framework including in Xcode 6 and using the Objective-C runtime library that enables C, Objective-C, C++ and Swift code to run within one program.  Therefore, it enhaces broadening professional horizons for developers making their work more efficient.

 

That was the milestone when developers started their discussion of what is better, tradition or innovation.

 

tubik ios development

 

What is better: Objective-C or Swift?

 

Some time ago expressing our opinion in the hot global discussion about the choice between Photoshop and Sketch we mentioned: “The answer we would like to give is really simple. There is no any vs. There shouldn’t be any war between the options which can complement each other. Obviously, now there is no any perfect and ideal software for design: if it existed, everybody would use only this ideal choice and there wouldn’t be any need for fight.»

 

It seems that in iOS development the situation of today is really similar. The choice is not so obvious as it could seem even after reading about all the extended functionality of Swift in comparison with Objective-C. In practice Objective-C is checked and tested over the years while Swift is young and new. Huge bulk of products have been developed in Objective-C so transition to the other perspective is definitely taking some time and effort.

 

Briefly characterizing the programming languages according to her extended practical experience in iOS development, Tubik CTO Maria mentions that although Objective-C is older and common, Swift could be described as more simple in syntax and stable in work process.

 

Swift Objective-C development tubik

 

Which programming language is more useful to know?

 

Due to Xcode which is the integrated developing environment (IDE) with a set of software development tools iOS developers can work applying either Objective-C or Swift in fact using the same developer tool.

 

As long as Objective-C exists much longer, it’s natural that plenty of simple and complex applications have already been accomplished with this language. Not knowing Objective-C and starting straight from Swift can limit developer’s professional flexibility. It can be especially obvious in case when developers have to update existing products.

 

Sometimes it happens that developers, knowing only Swift, recommend to rewrite existing (perhaps big or even huge) piece of code from Objective-C to Swift, the customers logically do not see this acceptable and certainly do not accept the necessity to pay for this work.

 

Considering this, the best option is knowing both languages. That gives developers natural professional flexibility for any task and environment they have to tackle with in current projects. There are two strategies which mostly depend on the time available.

 

In case if there is considerable amount of time between studying basics and applying them into real practice, our advice is to start with Objective-C. Although it is often described as more complicated, it establishes a solid foundation of basic principles and routine of creating applications for and using iOS system. On this basis, learning another iOS language such as Swift which is syntactically simpler will not seem too hard.

 

However, there can be also another strategy, a bit more dynamic than the previous one and applicable for those who don’t have enough time in their disposal needing to start actual work asap. In this case, you can start with Swift as it is easier in syntax and more similar to other programming languages so it will take less time to start practical coding. Getting the basics of development in this way, don’t forget to add Objective-C to the practice and polish skills in both languages. It will definitely give result if approached thoughtfully and rigorously.

 

iOS development swift objective-c

 

Here in Tubik Studio we believe that the only single thing that a designer and developer should think about is the high quality of the final product. The highest. Quality. Possible. Period.

 

Any tool and method chosen for this aim is a good way as long as it provides the efficient product to the client and the final user.

 

Don’t miss our next articles on iOS development giving practical tips and case studies of coding complex design decisions.


Welcome to see designs by Tubik Studio on Dribbble and Behance

Case study Ribbet Designing illustration

Case study: Ribbet. Designing illustration.

It is not a secret that the fast-paced and dynamic development of web and app design brings new trends into other spheres of creativity in non-stop mode. No doubt, illustration is one of the fields which is constantly and significantly affected by all the numerous changes and currents in the Web. Working on different projects and preparing various shots for Dribbble and Behance, Tubik Studio designers get regularly updated on how multipurpose and versatile can illustration be. So, today we would like to present you the new case study, this time about illustration for a web online editing service.

 

Earlier we have already presented here the case study telling about creation of a logo for the on-line editor Ribbet by Tubik Studio designer Arthur Avakyan. This article continues telling about the collaboration with the same customer. This time the assingment was concentrated on illustrations for the site created by the other designer Evgeniy Tomashevsky.

 

Tubik Studio designer

Evgeniy Tomashevsky working on sketches

 

Task

Designing thematic illustrations for the specific feature of online photo editor Ribbet.

 

Tools

Pencil sketching, Adobe Illustrator

 

Process

Undoubtfully, most — if not all — the illustrations in the web fulfill several functions instead of one. They should be not only decorative stuff but can also become important features of user interface and in cohesion with other elements of the layout help to guide a user and make using the site faster, easier and more enjoyable.

 

The illustrations accomplished by Tubik Studio for Ribbet were no exception. To be more particular, the task for the designer was to create a pack of thematic illustrations that would reflect the ideas of popular annual events. The images were intended to work as fancy cards which could be used for instant creating invitations for birthdays, weddings, parties as well as nice postcards and other pretty stuff.

 

So, given to the task, the whole pack of illustrations needed to have the same format and style providing the feeling of consistency. Moreover, it was important to make it corresponding to the general design of the site. This requirement was eased due to previous studio work: Tubik Studio designers had worked with Ribbet on new design of the site and new logo, which soon are going to be presented on the site itself and are already widely seen in Ribbet social networks accounts. So, starting work on illustrations, the designer had already got the general concept of the editor design. It influenced on general style of the images as well as selection of appropriate colors and shades.

 

Case Study Ribbet Tubik Studio

General design of the web-site and logo for Ribbet by Tubik Studio 

 

In process it was also vital to remember that the images had to obtain high level of adaptability and be recognizable, bright and clear in all sizes possible to be seen at. Moreover, they had to be ready to save their beauty and style in printed version as well. As you can see, the designer had to keep loads of things in his mind.

 

The first stage of the work required making choice about the general stylistic decision which would satisfy all the parts of the assignment. Although there are numerous stylistic trends for digital illustration nowadays, in this case search of the style was not really long and the decision was made to create all the pack of illustrations in flat design stylistics. It matched efficiently with general stylistic concept of the site and was obviously defined as trendy and diverse.

 

After deciding on general style, the next stage witnessed the most creative and elaborate part of the process which was classic old-school pencil sketching. The designer worked hard and devoted a lot of soul and passion to creating catchy details, pleasant-looking backgrounds and bright characters that would be easily recognizable, capturing, stylish and fancy.

 

Illustration in sketches

 

Illustration in sketches

 

Illustration in sketches

 

Illustration in sketches

Tiny part of sketching stage

 

When all the ideas were completed and agreed-upon, the sketches were converted into their digital body by means of Adobe Illustrator.

 

One more part of the task included sophisticated and thorough work with color. The reason was that it had to correspond not only with the general design of the site but it was also vital to reflect color associations which users typically have for specific holidays, events and special occasions. This kind of multipurpose solution could make user experience even more effective and pleasant. So, the designer accomplished this work with a deep research of common color assosiations about holidays and only afterwards selecting the colors that would fulfill both association and general consistency sides of the editor idea.

 

Having processed each image thoroughly, the designer presented bright and catchy images for the pack of thematic fancy cards, some of which you can see below:

 

Independence Day

Independence Day card

 

St_Patrick_s_day

St. Patrick’s Day card

 

Thanksgiving

Thanksgiving Day card

 

Remembrance_day-01

Remembrance Day card

 

NY_eve

New Year card

 

Mother_s_day

Mother’s Day card

 

Father_s_day-01

Father’s Day card

 

Valentine_s_day

Valentine’s Day card

 

Wedding_day-02

Wedding Day card

 

As it can be seen, the images covered the wide range of religious, public and family holidays.

 

The customer, fully satisfied with all the work presented, has already been using the images actively in their social network accounts as the promotional materials for new features of Ribbet service.

 

Case study Ribbet Designing illustration

The set of cards from Ribbet Facebook page

 

This assignment was full of creativity and inspiration. It has become one more case proving how much sophisticated and rigorous work should be done to create bright multipurpose digital illustration. It also showed that doing preliminary research can help to make the result even more efficient.


Welcome to see other works by Tubik Studio on Dribbble and Behance