iMaster Developers

Romain Slootmaekers

Romain Slootmaekers

É um cientista da computação com interesse em todas as facetas da estratégia do desenvolvimento de software, e uma atração especial para desafios algorítimicos da computação distribuída. Estando convencido de que uma linguagem de programação deve ser parte da solução, em vez de parte do problema, ele foi bem sucedido ao tornar o C++ uma linguagem praticamente extinta na Incubaid e na Amplidata, substituindo-o por algo menos inadequado (OCaml). Atualmente, trabalha como pesquisador para a Incubaid.
  • Publicou
    11
    Artigo(s)
    book
  • Visualizados
    12100
    Vezes
    eye
  • Desde
    2012
    clock
awardArtigos Publicados
Romain Slootmaekers
Desenvolvimento
Vedando a sua implementação de algoritmo distribuído

Alguns problemas que já enfrentei se relacionavam com a configuração (por vezes até de outros clusters), mas definitivamente houve situações em que a questão foi causada por um erro de execução. Todos eles tinham a mesma causa: nem todos os possíveis cenários foram cobertos. Então, é possível escapar desse círculo vicioso?

Romain Slootmaekers
Desenvolvimento
Número de zeros perdidos

Da última vez, sugeri sobre o uso de sequências De Bruijn para acelerar a iteração de conjuntos de bits. É um velho truque que foi descoberto por programadores de xadrez em nos anos 60.

Romain Slootmaekers
Desenvolvimento
Compartilhe seus erros: aventuras em otimização

Eu costumava pensar que conhecia as leis de otimização de código. Na minha opinião (não tão) humilde, elas eram: Faça um diagrama UML antes de otimizar Depois que o diagrama te disser qual é o problema, tente uma melhor estratégia (estrutura ou algoritmo de dados) Ajuste o código como um último recurso Existe um raciocínio…

Romain Slootmaekers
Desenvolvimento
Baardskeerder’s transaction strategy

O Baardskeerder é um banco de dados simples incorporado em torno de uma estrutura de dados b-tree de inclusão apenas. É um dicionário que também suporta consultas de intervalo e transações. Ele é implementado em ocaml, e a ideia principal é que ele substituirá o Tokyo Gabinet em nossa loja de chave-valor Arakoon. Este artigo…

Romain Slootmaekers
Desenvolvimento
Arquitetura de software?

Introdução O desenvolvimento de software é uma dessas atividades que estão associadas ao conceito de arquitetura. Portanto, temos arquitetos de software que trabalham na arquitetura de software para o projeto, aplicação, sistema, ou qualquer outra coisa. Mas, pessoalmente, acho que a arquitetura de software é um equívoco, um paradoxo, uma ilusão, um desejo ou uma…

Romain Slootmaekers
Back-End
Combinando functors em OCaml e módulos First Class

Temos em nossa base de código de um módulo de benchmark feito em forma de functor para que possamos mudar a implementação do módulo. O benchmark em si é parte de uma configuração que possui um script de controle e um pequeno servidor. O driver executa o benchmark com vários parâmetros em diferentes configurações de…

Romain Slootmaekers
Back-End
Redescobrindo o algoritmo RSync

A: Ok, você está sincronizando isso por toda a Internet; e o que usa você para fazer a sincronização? B: Oh, nós implementamos o algoritmo rsync. A: Aham. E o que você faz com os arquivos que são muito grandes? B: A mesma coisa. A: E você também sincroniza pastas? B: Sim. A: E como…

Romain Slootmaekers
Back-End
Sobre codar e jogar xadrez

Veja uma interessante análise entre a programação e o jogo de xadrez.

Romain Slootmaekers
Desenvolvimento
Cloud Search usando uma matriz de sufixos

Uma matriz de sufixos é uma matriz que permite a você encontrar correspondências exatas de substrings. A ideia principal é que você gere uma matriz ordenada por posições usando uma função de comparação que compara os sufixos começando por suas respectivas posições. Construindo uma matriz de sufixos Este é um dos casos em que algumas…

Romain Slootmaekers
Back-End
Com o que você está brincando hoje?

Introdução Um colega meu recentemente me perguntou como eu faço pesquisa, e de onde as ideias vêm. A conversa foi algo deste tipo: NN: Tá, mas como você aprende todas essas coisas? EU: É um efeito colateral, realmente. Deixa eu explicar: quando é que você aprende mais na vida? NN: Deve ser na infância… EU:…

visualizando 10 de 11
Publicidade