OurBit


Random slogan commming soon/Próximamente, slogan aleatorio

That's not our code

The first time I read about the “Conway’s Law” was in the context of an excellent book: “Building Microservices” by Sam Newman. The law states that: “Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization’s communication structure”.

Read more →



APIsAR Episode V - API Management with Azure

During an event that took place on May 3, 2017 in Buenos Aires, German Küber facilitated a presentation about API Management with Azure, the API Platform developed and commercialized by Microsoft.

Read more →



Owner vs. Victim theory and the pitfall of overusing it

If I already have your attention, let me tell you that this is not the place where you will find the meaning of the “Owner vs. Victim” theory which can be found in bazillions of different sources. It will be generally explained, though, since we are talking about it. This article is more about the pitfalls of people reading people and how misusing this theory could lead you to miss important communications.

Read more →



APIsAR Episode IV - Introduction to GraphQL

During an event that took place on November 9, 2016 in Buenos Aires, Horacio “Qcho” Gomez presented an introduction to GraphQL, the technology developed and used by facebook to build their own APIs.

Read more →



About predictability and clearly defining team goals

It’s an Engineering Manager responsibility to guarantee the team health measured in terms of qualities such as performance, commitment, accountability and predictability (among lot of others). However this can’t be forced by the Manager. It’s actually the team effort and its proper channelling the decisive factors for achieving these goals. Because these are goals, aren’t these?

Read more →



Acronyms seriously suck

While I was reading “Elon Musk”, on a bus while commuting home, I couldn’t help laughing of an email he sent to all SpaceX employees regarding to the misuse or excessive use of acronyms. The subject line was: “Acronyms Seriously Suck” (you can figure out the acronym for it by yourselves).

Read more →



A Compendium of Software Architects’ Pathologies

By Marcos Chicote, Guido de Caso, and Norberto Herz

Soon after the field of software architectures was formally born thanks to the work of Garlan, Shaw, Notkin and others in the early 90s, the role of the “Software Architect” emerged in the software development landscape. Following the definitions of the Software Architecture community, the architect’s job is to define the high level design of a software system or, in other words, make the principal design decisions that build a bridge between requirements and implementation.
However, in practice things are not that simple, and the architect’s job is full of pitfalls and contradictions. We describe what we call are five pathologies that can affect software architects, including symptoms and prognosis, with the goal of sparking more discussions about this role and its desired evolution.

Read more →



Nobel 0.2 supports Swagger and RAML

Time ago, while I was working with the team building RAML, I took advantage of a hackathon to build the first version of Nobel. Briefly, Nobel is an application that uses an API high level definition written with (Swagger or RAML to generate the Arduino code implementing that API. That first version only supported RAML as the definition language. Recently working and researching a bit more about Swagger and its toolset, I was able to add support for this language as well.

Read more →



Docker in acción I

Several years ago, speaking of scalability used to bring up a series of surprises of all kind. People talking about scalability as a hardware quality, people getting too much surprised when listening that it’s not the hardware just scaling, but the applications being written in such a way that can scale, and for sure, the little distinction between horizontal and vertical scaling.
Fortunately these days, the concept has been digested, explained, and apparently understood. However, I’m still curious about getting why this topic was source of so much confusion. I’m not sure which ones is the cause and which one the effect of this new era, but virtualization plays a starring role, and specially the containers based virtualization. This is the first of a three posts saga, in which I’ll be covering some scalability fundamentals, DevOps rol/culture, Docker introduction, installation walkthrough, first steps, and docker registry configuration. This first post is about DevOps and scalability.

Read more →



From API to Streaming API

There are so many pros on building an API that exposes our application resources. It’s particularly important to achieve reducing tiers coupling to the minimum, but even better, this allows different applications to access our resources. For well designed APIs this will also happen in an intuitive way.
But even the best APIs could be implemented in a way that the client needs to make a call every time it needs to know the state of a resource. For this case, the API will have to return the entire resource every time it’s requested.
But, wouldn’t it be more efficient if the API only returned what has changed since the last time it was queried? And wouldn’t it be even more efficient if the client didn’t need to call the API to check if something changed?
Streaming APIs (when implemented properly) try to solve exactly that. On this post we will see how these could be implemented and how streamdata.io works in order to turn a traditional API into a Streaming API.

Read more →