The Simian Army

All, Suggestion, Tools

I remember once in an interview I was asked in how could I improve the system that there were developing in terms of security and performance.

The answer was quite fast, I would not reinvent the wheel but rather use Doctor Monkey from the Simian Army.

I was quite surprise that actually they did not know what was the Simian Army and how Netflix was using it to assure Amazon services and the cloud services were actually working. THEY DIDN’T KNOW! HOW COME RIGHT?

Basically the tool was I talking about use several external tools for health checks in the instances.

The tools are an analogy to a simian being released from a cage, this analogy is specially interesting as the Chaos Monkey, this tools is very interesting. It actually disable some random instances to verify how the system would react!!

Netflix thanks for that!!

 

[1] https://medium.com/netflix-techblog/the-netflix-simian-army-16e57fbab116

[2] https://github.com/Netflix/SimianArmy/wiki

Companies Should Adopt Hack rank

All, Suggestion

 

I remember once during an interview, I didn’t sleep well the night before and I failed in every single simple questions. In the end obviously I did not pass, however, I learned that the companies should considering add Hack Rank in their interview process.

That’s actually quite ironic, because I usually not good when I have 15 minutes to solve a maze or finish a question. However, I felt that it is the most honest approach a company can do, basically to avoid hiring someone which answers were lucky but also to give the interviee an honest and sincery change of apply.

I even sent  a message to the recruiter for them use Hack Rank on their next interviews, so they could improve the hiring process.

In my case, I didn’t sleep well so my questions were not good, but the next day, even the same day, my mind was sharp as never before. Unlucky them.

Links

[1] https://www.hackerrank.com

 

TDD

All, Suggestion

 

Test Driven Development is a trend concept nowaways and it’s getting attention even more with the utilization of Python, and its unit test frameworks. I personally use the Unit test framework [1] straight in the command line and sometimes use the watch command to periodically test the code without need to run the script by hand [2]

Steps

TDD is basically divided in the following steps:

  1. Add a test
  2. Add the new test and run seeing if it will fail
  3. Writes the test to pass, i.e. the function that will make it pass
  4. Run again the tests
  5. Refactor the code – i.e. adequate the code to the new needs

Structure

Qt

All, Suggestion, Tools

Well, during my graduate studies, for developing the C/C++ code I started using Qt and it was the best thing I did.

It is very straightforward, simple and nice. Much less complex than Eclipse Framework, which I also used.

Formally speaking, Qt is this cross-platform framework for graphical user interfaces and applications. It has everything embedded on it and it’s developed by the Qt Company, which I was surprise to learn that was based in Finland.

Qt also provides simple UI interfaces, from which I’m creating the MazelTov framework for testing and analysing performance of open software projects.

I forgot to mention, of course, Qt is also the library that combines several utilities for developers and embedded functions. Qt library is the thing!

 

[pt]

Durante meus estudos de pós-graduação, para desenvolver o código C / C ++, comecei a usar o Qt e foi a melhor coisa que fiz. É muito simples, simples e agradável. Muito menos complexo que o Eclipse Framework, que eu também usei. Formalmente falando, Qt é essa framework cross-platform para interfaces gráficas de usuário e aplicativos. Tem tudo incorporado e é desenvolvido pela Qt Company, que fiquei surpreso ao saber que foi baseado na Finlândia. O Qt também fornece interfaces de interface do usuário simples, a partir das quais eu estou criando a estrutura do MazelTov para testar e analisar o desempenho de projetos de software aberto. Eu esqueci de mencionar, é claro, o Qt também é a biblioteca que combina vários utilitários para desenvolvedores e funções embutidas. Qt biblioteca é a oq ha!

C++ (STL and Standard Library)

All, Suggestion

I personally think that C++ is wrongly taugh in school because they dont put enough STL and Standard C++ Library. It’s like teaching how to drive a Suzuki Hayabusa until 120km/h, not teaching the full possibility of the engine.

Using STL makes the language so much powerful and  full of resources.

It is actually divided in four main components:

  • Algorithms
  • Functions
  • Iterators
  • Containers

STL is a extremely powerful library which I will post more about later.

 

[1] https://en.cppreference.com/w/cpp

[3] http://www.cplusplus.com/reference/stl/

Using Trello/Usando Trello

All, Suggestion

[eng]

To control my tasks in my personal projects, I use trello [1]. It’s actually very flexible framework for project management and it can be used shared, which is quitt interesting.

It was bought by Atlassian in 2017, but still quite good.

[1] https://trello.com

 

[pt]

Para controlar minhas tarefas em meus projetos pessoais, eu uso o trello [1]. Eh um framework muito flexível para o gerenciamento de projetos e pode ser usado de forma compartilhada, o que é bem interessante.

Foi comprado pela Atlassian em 2017, mas ainda assim muito bom.

[fr]

Pour contrôler mes tâches dans mes projets personnels, j’utilise trello [1]. Il s’agit en fait d’un cadre très flexible pour la gestion de projet et il peut être utilisé en partage, ce qui est intéressant.

Il a été acheté par Atlassian en 2017, mais toujours assez bon.