QCON London 2017

I found this experience really nice – to be able to get some insights on how people have solved big issues and how they got pwned.  What is more, it was good to see that I am personally going in the right direction (or at least, let’s say, getting on the trends)

These are technologies and trends that got my attention as the most used:

  •  Technologies/languages/tools:
    • Go
    • ELK
    • Luigi/Airflow – Tools for pipelining jobs
    • Redis
    • Hadoop
    • Kafka
    • Java 9
  • Trends:
    • Data Science
      •  Machine learning for prediction and fraud detection
    • Microservices
      • NodeJS

I chose to follow two main paths, with some extra things from here and there: Machine Learning/Data science, Microservices, and let’s call it “miscellaneous”. Below, an overview of the most interesting things:

Continue Reading

Testing an Angular 2 Service with a Mocked HTTP Interface

Angular 2 is the successor of the famous and broadly used AngularJS Javascript Framework, for building dynamic web applications. Due to the huge success and popularity of its predecessor, some client projects started using Angular 2 before its official release.This resulted in Angular 2 becoming one of the most famous platforms for web and hybrid application development. Although this framework is relatively new there are already a lot of tutorials and examples explaining how to develop an Angular 2 application. However, there is one aspect of Angular 2 that is not widely covered, but is still very important for every project: Writing tests. The command used to generate the default test cases is “ng generate” and it’s contained in the Angular 2 CLI. However, it only generates the boilerplate code that is needed for each test case. The actual tests have to be created separately and the API is still experimental, so examples are often outdated. In example, most of the available tutorials use the “beforeEachProviders” method, which was removed in an earlier Angular 2 pre-release and was replaced by “TestBed.configureTestingModule({providers:…})” with a completely different signature. In the following example we will test a simple “ItemService” which executes one HTTP GET request against a REST endpoint.

Continue Reading

Making your life easier with Sass

Preface

When I entered my current project one of the first things I noticed was it used stylesheet languages for its styles. “Yay!”, I thought. But then I opened up one of those files and found nothing but plain vanilla CSS inside. It was the same for most of them. No nesting, no variables, no mixins, no inheritance, no operators… Well, you get the idea. I won’t judge anyone and I’d rather believe those who wrote them didn’t use them just because they didn’t know how to. So I thought it would be interesting to write a short article explaining the basics of them.

Continue Reading

Angular component method, the natural evolution

One of the cool things that we “were/are/will be” using while coding our front applications with AngularJs is the option to use directives to create our own reusable components. Basically, the main idea of the component was (…and is …and will be) to have reusable elements that brings their own encapsulated functionality and also the ways to manipulate the data they need.

Continue Reading

A bit of React in an Angular recipe

Why we get here? Apparently, we reach a point where we have met one of the bad parts of Angular (ng-repeat performance) and one of the good parts of React (virtual DOM).

This is the problem

When you have got a dynamic data table, where the user can setup and select the number of columns to display or levels of depth for a custom search application that ends up in an indeterminate number of rows, you know that nothing can go worst. In addition, is a multilanguage application so we will need to translate some strings and format some dates. Of course, always someone can ask for IE support, and you know for sure they will do. That is the case. The result: the table freezes when it loads too much data.

Continue Reading