Content Management: Static web site generated offline

From plain static to LAMP and back to static

A lot of years ago CERN engineers invent Word Wide Web technology as a linked set of plain text documents with links to each other and special formatting for visualization. Ancient Content Management was just an editing of static files on the disk. Times changed. We passed several huge revolutions in Web Development and Content Management. LAMP stack and its similar analogies based on other platforms were like standard for decades. We hold data and other content in relation database with SQL interface to access it. The pages have been treated as HTML content generated dynamically on server side by some engine implemented in a programming language with appropriate library or framework. All parts of this scheme have been re-designed or re-invented from time to time. Some of them even several times. There was a lot of hype about Web 2.0. For making development process more robust and performance of solution better, we started to use solution appropriate for specific task or project, e.g., MongoDB instead of MySQL, MVC instead of mess of code. One of such method is to present web site as a set of pure static web pages without any dynamic logic on server side, absolutely.

 Generate static content offline

Main idea of such approach is to have a project with sources like data, html templates or includable parts and containers to wrap all those elements together and configure navigation between pages. On another hand, we need a tool or even several utilities to build the project into destination representation of static web site. First time, our team experienced such technology in the Fitness project for very famous Top 50 public Web Portal 10 years ago.

Read more

Application Development: LESS as more robust CSS3 development

Nowadays, nobody code raw CSS3 in real-world HTML5 Applications Development. Huge amount of monotonic repeated code is too hard to create and support. Usually, one of CSS preprocessors are used to implement CSS3 styles in more elegant way. LESS [http://lesscss.org/] is one of such approaches. It doesn’t need to spend a lot of time to start using it. Try online tool [http://lesscss.org/less-preview] to process LESS into CSS code.

 Really less

First of all, LESS is pre-processor of special syntax into CSS code. Besides, CSS code is a correct LESS code as well. You can start porting your existing pure CCS3 project into LESS just by a copy-paste action. When we mark some section or module with specified CSS class we are going to format and style not just wrapper but all its inside components as well. LESS helps us in this most used case by its nested syntax. E.g., LESS code:

Read more

Application Development: Asynchronous JavaScript code by Promises

Both front-end JavaScript code and runned on server side node.js applications are designed not just a long-run set of instructions, but rather a set of functions, which are runned by the engine as handlers of appropriate events. E.g., user clicks the button, server received request from the client, page loaded, server started started. Any JavaScript engine is just very sophisticated implementation of Event Loop pattern. There is a lot of stuff written about V8 engine, which node.js based on. Such architecture has asynchronous nature by design. That’s why it’s very important to deal well with asynchronous Application Development for any professional JavaScript developer.

Callbacks and other approaches

The simplest native way to deal with asynchronous code is to use callbacks. It may be ok in case of small application or use case. On the other hand, in real life Application Development, Iflexion company have complicated huge solutions splitted into many modules and layers. To use pure callbacks in this situation is antipattern.

Read more

Content Management: Speed up page loading

Nowadays, search engines impose much more strong requirements for web sites to be ranked on top positions or even be parsed at all. Fast rise of mobile market pushed sites to be responsive to all kinds of screen widths and input schemas. But it’s not just about support mobile devices. For any Content Management system there is very important to load the pages as fast as possible. It’s not a recommendation anymore, but rather a rule. Google and other search engines may ignore your cool web site with a bunch of modern features just because it’s too slow.

Check loading speed online

First of all, check how fast is your page loading by Google’s PageSpeed test [https://developers.google.com/speed/pagespeed/insights/]. After several seconds you’ve got pretty complete report about issues at line of loading speed and suggestions how to improve it. If you receive green checks, congratulations, you are doing Content Management in right way. As it’s a Google’s service, so we can look at this list of points as optimization plan for Google Search Engine. On the other hand, the issues and methods to solve them are common for any search engine and for user experience as a whole. There are two separated modes (workflows) of analysis: for regular usage via PC’s browser and exploring on mobile devices like smartphones.

Read more

Application Development: Backbone framework: modern professional front-end approach

Nowadays, web is not just loading pages and displaying them correctly. Modern browsers allow web application developers to create complicated one-page rich solutions on the client side: rich text processors, graphics editors, spreadsheets, etc. Backbone [http://backbonejs.org] is one of the best straight forward solution to organize even very complicated project in robust professional way. Practically, it’s very small set of JavaScript classes, that you can review in an hour.

The main idea is to split the code into 2 sets of classes: Models and Views. A Model is responsible to handle all data of specified component. It loads, saves and represents it for a View. A View is rather a controller to handle UI, render widgets and specify actions for a Model to provide any changes. You can use any front-end HTML templates system within Backbone Views.


As I said above, Backbone is just a set of approaches to organize complicated project in robust way and a bunch of source code to help with it.

Read more

Meteor framework: a revolutionary Web Application Development

In 2014 was released first officially stable version 1.0 of the Meteor [http://www.meteor.com] most cool web application framework nowadays. Software developer have been using a lot of web application development frameworks and libraries in development and production for 10+ years. Why Meteor is so excited? It’s not one more platform in a row or new pure marketing buzzword. It’s rather a new approach to the construction of the project. This technology provides to Iflexion a new quality of Web Application Development process.

The same JavaScript for client and server

Despite the novelty, there is no new programming language. Meteor is based on already known node.js platform and JavaScript programming language. If you prefer CoffeeScript or TypeScript, that’s ok. Anyway, it’s JavaScript as a result. JavaScript is used both on the front-end and on the server side. And even more, the same JavaScript code may be used on server and client.

Read more

Single-page Web apps vs Web sites?

Remember time when you had to download the whole website in order to search through the needed information? You had to dig through the whole mass of data in order to get what you really need. That was bearable when you work on PC, but became totally inappropriate the time you appeared to be working on any mobile device.

The reason is that the connection is unfortunately not as fast as on local PC. Moreover you have the limited screen and cannot accept there all the information at once.That is when the single page web applications appeared to be far more popular than full size websites.

Specialties of single-page web apps

Web app developers composed the front end to any content database. While website programming offers you to deal with all data at once, single-page applications let you pull the needed piece of data right into your hands without losing any time.

Read more

Freshest software trends 2014 – keep an eye on hot news!

Since 2014 has already knocked at our door and even kicked it wide open, it’s perfect time to take a look at the most popular and important trends this year has to offer.

Iflexion team has done its best to prepare the list of long awaited changes in IT world.

Let’s have a look at the short list:

  • Clouds get top popular
  • Data scientists go down
  • Big data and social data go up
  • Analytics of complex specialized systems are wanted along with agile business intelligence
  • Everyone goes for storytelling
  • All efforts get accumulated in mobile sector
  • Embedded business intelligence begins to emerge in attempt to put analytics in the path of everyday business activities.

Now it’s time for detailed information.

Hadoop and NoSQL

These systems are now completely linked one to another. You shall keep this in mind in order to take full range of IT advantages.

Read more

6 best E-commerce design trends

Category: Ecommerce

Let’s have a close look at most craved brilliants of the mobile ecommerce application design. A lot of sites have been redesigned lately in order to match the best expectations of nowadays audience.

Most platforms like WordPress, Shopify, Magento etc. are totally linked to shops’ designing. The latest trends make people redesign a lot of stuff, by the way some features get simplified as well as the others keep getting more and more complex.

Here’s the list of 6 most popular trends emerging this year.

1. Interface that is finger friendly

A lot of people will see your site on any kind of mobile device before they actually reach to in on their PC. This leads to a lot of sites being mobile-oriented and rather finger-friendly (meaning they’re designed with high touchscreen options).  Some are made for stylus, others are more like multi-touch feature.

Read more

Brand new social networking software

Neo4j, Cassandra, and FluidDBoffer the brand new set of databases for social networks

Social network if one of the best things to be found in the net. With its help you can easily fix the links and attitudes between various persons including your friends and people you only want to get to know about. The social life appears to be rather transparent with these networks.

Still if you’re searching for some specific information, the graph databases will be really handy, since with their help you can definitely how many of your friends’ friends’ friends are allergic for milk.

Still the simple graph database cannot give all the answers. Schema-free relational databases are simpler and might be better for social networking software developers for getting quick answers.


This database is created by Java and can successfully link to Python and Ruby. You look for the answer by creating the traversal object streaming along the relationship lines between the nodes until it finds what you’ve been looking for. Its best ability is to run the repeated actions in the network. It stored all new nodes to the disk, so even in case of power failure you will lose no data.

Read more