Altabel Group's Blog

Archive for March 2016

BI

When a technical term is used more and more frequently the exact definition becomes “blurred” and its true meaning is usually greatly distorted.

This what happened to the term ‘business intelligence’ or BI. Ever since, when the term had only appeared, the development of technologies has substantially expanded our understanding of BI and of what advantage and benefit the company can retrieve from their available data.

So, what does ‘business intelligence’ mean today? How it could be useful for companies and how to apply its underlying ideas correctly to ensure the steady growth of efficiency and profitability of a business?

What is business intelligence? Why is it important?

BI consists of two completely diverse, but at the same time complementing one another aspects.

  1. Value for the business.

    Implies how companies can use the available information in order to multiply profit and efficiency and bring new products and services to the market successfully.

  2. IT strategy.

    Includes the idea of what technological solutions to apply in order to achieve greatest possible utility of BI.
    Presentation of data in a specific format for efficient usage by the company has always been a challenging task. For many organizations, it is quite complex to determine what particular information is required for a specific use.

Such business analysis requires certainty in methodologies and goals.

Earlier BI resources were limited by the lack of available data collection technologies. Nevertheless, modern technologies such as big data, analytics, mobile services and cloud computing in their combination allow obtaining a continuous flow of detailed information quite fast and with no serious investments.

Still, the current bottom line lies in extracting some valuable sense from these data and, in many respects, it is much more complicated than collecting information itself.

Five efficiency criteria of BI-system (and BI-strategy)

1. While selecting a BI-system one should be guided by the real needs of a particular company

The most common and at the same time the most dangerous mistake is when the BI-systems dictate the strategy of their usage. As a result, the company gets plenty of non-synchronized applications, awkward interface and the infrastructure that is already out of date, yet so entrenched in the IT system that could be barely substituted.

2. Be flexible

Flexible model of the integration of the appropriate software involves constant repetition of certain operations with the gradual development of the system. This allows companies to evaluate the success of the project at any point of time, to determine at what stage it is and towards what it moves.

As a rule, creating, testing and integration of BI-technologies goes much more smoothly when the company receives real-time feedbacks from all the running processes and is able to make required adjustments on the fly. It is vital for BI-systems!

3. User-friendly interface

BI-solutions focus on collection, visualization and management of the data.
Usually, when it comes to large amounts of numeric information companies face a risk to get exceptionally technical, inconvenient and incomprehensible data for the “illiterate” users of the system. This information is highly functional, but impractical, especially when it is badly integrated with other applications.

Integration is a key point in deploying BI-technologies. In case the interface is non-intuitive, complex and inconvenient for the end users, BI-system will definitely work inefficiently.

There is a tendency to allocate significant resources for the integration of the latest technologies promising unprecedented results. However, such investments potentially may do more harm than good. Intelligent, targeted and smooth integration is the key to avoid serious errors during implementation.

4. BI is a tool available to everyone

BI has been long used by completely different users, not only by experts with appropriate education and experience. BI-system should be simple and easy to understand to everyone.

For this purpose, companies have to attain the convenience of analytics and the reports drawn on its basis; it should be simple and demonstrative. The collected data should be presented in the way so that any user could easily make definite conclusions.

5. Centralize your data

The desire to achieve the result, based on useful information implies proper data handling. Receiving data from multiple sources and storing it in a centralized information DB, capable of filtering, sorting and removing the unnecessary is critical for the deployment of the applications involved into making business decisions. Apart from that, risk management also becomes more effective through transparency and structure.

General excitement over BI is evident

The role that IT plays in the world has significantly changed over the past few years thanks to the information ‘boom’. Still, construction of a technological infrastructure is not enough for successful data management.

That is why, ‘business intelligence’ it is not just a fashionable term it is a concept that demonstrates the need to move beyond the paradigm of a separate, isolated existence of data analysis and business goals.

In fact, BI reminds us that technologies and business must be closely linked, so that the business goals and business guidelines predetermine the choice of software and, the software in return would provide useful information leading business to success.

 

Tatyana Ogneva

Business Development Manager

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

mobile

Can you spend a day without your smartphone? I can hardly imagine it.
Could we imagine about 10 years ago that we would use smartphones and tablets every day, everywhere for almost everything: playing games, ordering taxi, watching tv, ordering food, etc? Possibly, not.
The mobile application industry is growing increasingly fast. It`s almost beginning of 2016 and it`s time to speak about top mobile app development trends that will rock this year.

Cloud driven apps will be on top

Cloud is going to play a leading role for a number of mobile apps in 2016. The cloud gives the possibility to sync apps across multiple devices. As the number of people using multiple mobile devices ( smartphones, tablets, wearables) is on the rise, the cloud approach makes it easy for them to access any data from any channel. Also, thanks to the cloud, app developers can retain the small size of mobile apps.
Gartner.com predicts that by 2018 at least 30% of service-centric companies will move the majority of their ERP applications to the cloud.

Focus on Mobile apps security

We witnessed a great increase in information leaks and hacker attacks in 2015 that affected a lot of organizations from small companies to industry giants and government organizations. Reports just prove this fact, more than 75% of mobile applications would fail basic security tests in 2015.
This is horrible as many mobile applications store sensitive and personal information. Gartner predicts that by the end of 2016, more than 50% of global 1000 companies will have stored customer-sensitive data in the public cloud.
So security is a key principle mobile developers should focus on in 2016.
IOS has proved itself as the most secure platform. Android has always been claimed as a non-secure platform, however developers paid more attention to security issue in the latest Android versions.

Shift towards enterprise mobile applications

This trend of the year 2015 will continue to boost in 2016.
According to a survey conducted by Vision Mobile in the beginning of 2015 43% of developers working on enterprise apps were making more than $10,000 per month. In comparison, only 19% of the app developers focusing on consumer apps were making a similar income. The percentage of successful enterprise apps developers is double the percentage of consumer apps developers.
So it`s not a secret that mobile apps developers will focus more on enterprise applications development to generate more revenues

Internet of Things / IoT and wearables

We have seen a big increase in usage of wearable devices in 2015 and this trend will continue to boost in 2016 as well. Certainly, IoT is still in its infancy and it`s mostly consumer based at the moment, but it`ll be adopted for commercial as well as industrial use.
Wearable tech devices, such as Google Glass and iWatch, have already created a huge buzz in the market and are becoming more and more popular.
Analysts predict that IoT will be the next big technological breakthrough and more and more people will be connected to “Things” in the nearest future.
It means that mobile developers and entrepreneurs should be prepared for this trend and consider IoT and wearable technology while developing new applications.

Focus on swift programming

Swift, a relatively new programming language from Apple, has already gained quite a substantial popularity. Apple’s CEO, Tim Cook, claimed that this set of tools was downloaded more than 11 million times in the first month alone. Now, these numbers are bigger.
Swift is designed as both an application language and a systems language and gives the possibility to develop apps for iOS, OS X, watchOS, tvOS, and so on.
I`m sure we will hear more about Swift in 2016.

Vaster adoption of location based technology/ Beacon

Another great trend for mobile developers is beacon technology.
This technology has already revolutionized the shopping experience and is expected to be adopted by other domains other than retail for its location tracking benefits.

New cross platform tools

With the rise of wearable devices, smart TVs, mobile applications need to suit the requirement of multiple platforms and devices. Cross platform tools may be a good solution. Sencha, Titanium, Unity 3D, Cocos2D, PhoneGap, are already playing a big role in the mobile app development market. In 2016 we may see the emergence of new cross platform development tools.
So, this was a short list of mobile app development trends that will be on their rise in 2016. I`ll be happy to hear you opinion on the future of mobile industry. What trends would you like to add to our list?

 

Anna Kozik

Business Development Manager

E-mail: Anna.Kozik@altabel.com
Skype: kozik_anna
LI Profile: Anna Kozik

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

jsframework

Whether you’re building apps for the browser, mobile or desktop, Aurelia can enable you to not only create amazing UI, but do it in a way that is maintainable, testable and extensible.

Retrospective and today

Aurelia is a project of Rob Eisenberg, the author of a very popular MV * – framework for Caliburn.Micro XAML-platforms, Durandal. Understanding all the disadvantages of Durandal, Eisenberg engaged in the development of so-called NextGen framework. In 2014 he began to work in Angular team on the second version of the framework. However, several months later, Rob decided to leave the Angular team since the direction of Angular 2, in his opinion, had changed a lot. He gathered a large team and returned to work on the framework of his dreams. And Aurelia is the result of that work.

JavaScript of tomorrow?

By using modern tooling Aurelia was written from the ground up in ECMAScript 2016. This means you have native modules, classes, decorators and more at disposal.
Aurelia is written in modern and future JavaScript, it takes a nowadays approach to architecture. It’s built as a series of collaborating libraries, which form a powerful and robust framework for building Single Page Apps (SPAs). However, Aurelia’s libraries can often be used individually, in traditional web sites or even on the server-side through technologies like NodeJS.
Aurelia’s code is open sourced under the MIT License, a very permissive license used by many popular web projects today. The starter kits are available under the Creative Commons 0 license. There is also a Contributor for those who wish to join the team in working on Aurelia. Ultimately, this means that you can use Aurelia without fear of legal repercussions and it can be build in the same confidence.

Benefits of Aurelia

Clean and Unobtrusive – Aurelia is the only framework that lets you build components with plain JavaScript. It stays out of your way so your code remains clean and easy to evolve over time.

Convention over Configuration – Simple conventions help developers follow solid patterns and reduce the amount of code they have to write and maintain. It also means less fiddling with framework APIs and more focus on their app.

Simple, But Not Simplistic – Because of the simple design developers are able to learn a very small set of patterns and APIs that unlock limitless possibilities.

Promotes the “-ilities” – Testability, maintainability, extensibility, learnability, etc.- Aurelia’s design helps developers to naturally write code that exhibits these desirable characteristics.

Amazingly Extensible – Aurelia is highly modular and designed to be customized easily, so developers will never hit a roadblock or have to “hack” the framework to succeed.

Web Standards Focused – Focused on next generation JavaScript and Web Components, and avoiding unnecessary abstractions that obscure the underlying web, Aurelia is the cleanest and most standards-compliant framework today.

Integrates Well with Others – Easily integrated with any 3rd party library or framework: for instance, with jQuery, React, Polymer, Bootstrap, MaterializeCSS and much more.

TypeScript Support – Each Aurelia library is released with its own d.ts files. There are also official TypeScript beginner kits and production quality starter kits.

An Official Product with Commercial Support – Being an official product of Durandal Inc., it has commercial and enterprise support available, so you can use Aurelia for building core technology for your business.

Thriving Community and Ecosystem – Having one of the largest developer gitter channels in the JavaScript world, oodles of contributors and a huge core team, Aurelia has been used to build just about every type of application and is used by large, well-known multi-national companies and enterprises.
 
Aurelia, Angular and React.js – what’s common and what’s different?
 

Aurelia vs. Angular

Similarities between Aurelia and Angular 2:

  • Aurelia offers ES6-support out of the box and supports all forms of alternative abstraction syntax such as TypeScript and CoffeeScript. Migration documentation about migrating from Angular 1 and 2 have been put on the roadmap.
  • The basis of both Angular 2 and Aurelia application comprise components associated with the corresponding template.
  • Differences in vision details and options range:

  • The syntax is much simpler and more explicit (i.e. self-explanatory) than Angular 2 and looks a lot like standard JS syntax. ES6 and JSPM are used by default and a gulp file with a custom-built system to transpile ES6 to ES5 using the Babel transpiler is included in the standard package.
  • Aurelia also uses conventions instead of its own syntax and boilerplate code. No special characters like the ones in Angular 2 (*, (), [] en #) here.
  • Aurelia is built in a modular way making it very pluggable. You can plug in internationalization, routing, virtualization, animation, … Besides that, third party plugins are available as well such as the aurelia-flux plugin adding the Flux dispatcher to Aurelia.
  • The presence of a root-component is necessary; it represents an application (app). The metadata may / should be attached to components by using decorators. Component initialization is performed by using dependency injection. In addition, each component has a declared lifecycle, which can be built by using the lifecycle hooks. The components may be formulated into a hierarchical structure.
  • Communication between the component and the template is performed by using data binding. The process of template rendering to the final HTML can be integrated by using pipes (Angular) or value converters + binding behaviours (Aurelia).
  • The main advantage of Aurelia in comparison to Angular is an advanced composition mechanism and template parts. Aurelia is designed with an emphasis on unobtrusive, the number of framework structures in the final code is minimal. Aurelia is more compact, while Angular sometimes simply forces to produce copy-paste.
  • Aurelia is new to the market while Angular has a big user base because it’s already been around for 6 years. On the other hand, Aurelia has great documentation available, it’s an official product of Durandal Inc, and the company has a long term vision for the product, something the Angular team doesn’t seem to have and is blamed for a lot.

Aurelia vs. React.js

  • While on the surface it might not seem fair to compare Aurelia to React.js, they’re both being used for the same things. Despite the fact that React.js is a fully-fledged and functionally released product without the early preview alpha tag and Aurelia is not, at current stage they are both pretty at the same level. You can achieve the same tasks within both, just in different ways.
  • As for React components and Aurelia’s ViewModel’s, they are both quite similar in that you’re essentially using a class to define properties and methods bound to a particular view. The primary difference between them is React doesn’t separate the logic from the view, meaning in React the View and ViewModel are both within the same file.
  • However, that’s not to say that Aurelia doesn’t allow you to achieve the same thing by rendering the View from within the ViewModel as well and forgoing a traditional View.
  • The original intent behind React.js was not to be a competitor to the likes of Angular or Aurelia, but rather be the library that everyone uses with their SPA framework like Angular to improve performance.
  • Therefore, this means you can easily use React.js within Aurelia. Aurelia and React.js can be used together and in doing so, it provides you with a level of power other frameworks cannot without subsequent complexity and strict convention like EmberJS.

Aurelia vs. Angular and React

  • Two-way binding is provided out of the box and the framework does so very precisely. By default, 1-way databinding is used except for form controls, a clear plus when compared to React. Do keep in mind that two-way data binding can only be done through explicit syntax, as is the case in Angular 2.
  • The learning curve for Aurelia is comparable to that of Angular 2 and thus a lot steeper than React’s. Luckily, the extensive documentation makes up for that a great deal.
  • Angular 2 and Aurelia Architecture is very similar. Aurelia looks a lot like Angular 2 in the sense that it’s a complete framework that relies on the web standards. It’s as pluggable as React is and as Angular 2 will be.
  • While Angular was created by Google and React by Facebook, they don’t provide commercial or enterprise support, something that Aurelia will do.

 
Conclusion

It goes without saying why these three frameworks are so popular. They all have a lot of strong advantages. Eventually, I’m favoring Aurelia: there’s solid documentation available and the overall philosophy is the same with Angular 2, but Aurelia is a better choice from the syntax and execution point of view. The architecture and syntax vision of Aurelia team seems to be more clear than the vision of the Angular team. The company and enterprise support of Aurelia is also a big pro.
What is your personal experience with these frameworks? Which one would you choose for your projects and why? What’s your prediction “who” will win the crown in the nearest future? Please feel free to share your thoughts with us.

Thank you in advance!

 

Darya Bertosh

Darya Bertosh

Business Development Manager

E-mail: darya.bertosh@altabel.com
Skype: darya.bertosh
LI Profile: Darya Bertosh

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

Content Management Systems help to control and manage the content of any website where business is efficiently managed. .NET CMS gives you the power you need to develop high-concept, beautiful websites with a strong backbone which gives an experience working with .NET platform used in various kinds of business.

Sitecore CMS and Sitefinity CMS are two content management systems based upon ASP.NET framework. We have chosen to focus on these systems as they are flexible, functional and easy in using. They are proved to be compatible on multiple devices, albeit using slightly different mechanisms, and customizable for the needs of differing countries. Also they are able to deliver vast amounts of information as part of logical information architecture.

Both of these CMSs have similar features and can meet various business needs with different requirements. Websites get more customized, gain more potential and get more interactive with these CMSs.

Hope the information in this article will assist you with the choice of either Sitecore or Sitefinity as more appropriate option for you.

Sitecore

Sitecore is a flexibile, scalabile and secure CMS, used by many leading global organizations such as Experian, Toshiba, Canon and Nestlé. The CMS incorporates a powerful desktop interface that is controlled by a fully-customizable role-based system. This desktop is very similar in look to a Windows desktop, which makes it easy for users new to Sitecore to pick up and learn the system. There are also multiple applications, like in Windows, aimed at specific tasks such as editing content, managing users, monitoring campaigns, setting up workflows, etc.

Sitecore enables web content editors and marketers to have full control over all aspects of their website from social integration and blog posts to advanced personalization, e-commerce and more.

Points in favor:

• The possibility to customize content based on user activity, such as completing a form;
• The opportunity to add an engagement metric, allowing developers to give visitors a value based on how much they’ve engaged with your solution;
• Sitecore CMS makes it easy to create world-class websites with its open architecture and rich development environment and tools;
• The function to send triggered emails (automated marketing messages based on a prospect’s behaviors) direct from the platform;
• On top of the CMS foundation, organizations can optimize the experience of their customers through multivariate testing, personalization and engagement automation;
• The CMS capabilities offer complete customization while maintaining data integrity so that organizations can manage large amounts of content efficiently not just on the web presence but across email, social, mobile and print;
• The ability to analyze the journey in either a campaign or a journey view, giving full visibility of the value to relevant sources;
• Sitecore CMS helps you to reach your customers in their preferred format with functionality to deliver content on multiple devices, including mobile.

Points against:

• If you do not have developers with .NET experience or operate on a small scale, Sitecore may not be the most appropriate option for your needs;
• The email marketing capabilities are still maturing along with volume capacity. The basics are solid, but the more advanced features still have some caveats in their function;
• When a platform offers an immense amount of features the usability becomes more challenging. For those organizations that can truly take advantage of the enterprise-level capabilities, proper training and onboarding (organizational change management) is a must-have in order to see the vision fulfilled;
• Sitecore CMS has a licensing cost. Pricing is based on the number of Sitecore Server installations, as well as the number of simultaneous users logged in (such as developers, designers, content editors, etc.).

Sitefinity

Sitefinity CMS is used for the construction and management of commercial websites, community portals, intranets, etc. Different successful organizations such as NASA, Chevron, Expedia, PepsiCo, Panasonic, Roche and more, rely on this CMS to optimize customer experiences across multiple digital channels. Sitefinity is engineered with flexibility and extensibility in mind to give developers the freedom they need to integrate legacy applications or use custom 3rd party controls and modules.

This CMS doesn’t require any special skills. You don’t even need to know any web development languages to use this system. But if you want to customize the system like our experts, then some of the languages you’d need to know.

Points in favor:

• Content Authors and Marketers need the ability to change and edit content on the fly. With Inline Editing feature you can create and edit content right on the page;
• Sitefinity’s page editor makes it easy to create rich, dynamic content by interacting with user-friendly interfaces. Content is created by simply dragging & dropping widgets onto a page;
• This CMS makes websites fully accessible on other platforms such as tablets and smartphones, which is really useful nowadays;
• Sitefinity provides a rich toolset for automatically connecting visitors with personalized content showing the right content to the right person by defining your audience, transforming the content, and testing the result;
• The multisite management makes it easy for organizations to manage a collection of websites and microsites through a centralized interface. Content authors can easily contribute to multiple websites, or utilize content from other websites. Users, roles, content, permissions, templates, images, and others can be effortlessly shared or synchronized between sites;
• Extensive Out-of-the-Box Features: there is an extensive toolset for addressing the challenges associated with managing a modern website. Solutions for mobile, email campaigns, social media, ecommerce, blogs, forums, search, and much more are instantly accessible. This allows organizations to focus on what to build instead of how to build;
• Sitefinity also provides inbuilt Search Engine Optimization (SEO) while enabling you to customize basic meta-data such as the title and page descriptions.

Points against:

• While the documentation is available, sometimes it isn’t extensive enough for some of the advanced concepts because it is of a quite basic level;
• Sitefinity provides a high level of granularity to customize the system, but sometimes this is a bit overkilled. For example, e-mail notifications are disabled by default in the installation system. If you want to see e-mail notifications after a form was submitted, you have to update your system settings, notification profile, and also enable notifications for forms;
• This CMS works on a “feather” template that is supposed to be more bootstrap friendly, so ultimately you have to write some special template code. A large scale HTML mode could help with some updates;
• There is licensing fees. Sitefinity tailors their licensing toward different user bases. There’s a free edition, a small business edition for companies who don’t need to use a lot of the advanced features/modules, standard, and enterprise.

Conclusion

As we can see, there are various attributes of Sitefinity & Sitecore CMSs and the choice definitely depends on your preferences.

If you are not up to build very structured site we would like to recommend Sitefinity because you don’t need any specific skills to work with this CMS. The licensing price seems good compared to others .NET CMS platforms and the out of the box features assist to get you up and running a site. The templating model is good and the extensible models aren’t overly complicated to work with.

On the other hand if you have a relatively big website or host many websites Sitecore is better in this case because this CMS is the most effective when it’s using as part of a full digital strategy, targeting content at your audience and using the personalization features to create real engaging websites. However in case your budget is limited and you have only a few sites to manage, this product is not the best option for you.

So wish you good luck with your own choice! I really hope this article was useful for you.

Also it will be nice to know your opinion. Which CMS do you use for your business? Which CMS do you think is more appropriate for your projects and why?

Please feel free to share your thoughts in the comments below!

 

Evgeniya Chajkovskaya

Business Development Manager

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com


%d bloggers like this: