Posts

Showing posts with the label python

CDKs

Image
Cloud Development Kits are becoming very popular. Terraform, Cloud Formation, and many old solutions in the sense of infrastructure provisioning support CDKs. All infrastructure provisioning started as an OPS-ish thing, and often developers/engineers were far away from that. Terraform did a good job of being declarative for OPS and being simple and easy for developers. However, today there is a push to have provisioning happening into multiple programming languages such as Python, Javascript/Typescript, and even Java. Mainly to be more developer-friendly and really on the power of established programming languages. There are a bunch of CDKs popping up nowadays. However, CDKs have a price, code generation, and underlying complexity. Today, I have a slide cast and 2 code demos to show you CDKs more detail and compare them with standard solutions like Terraform. Let's get started!

Running a rich Microservice constellation in Kubernetes

Image
Languages have trade-offs like any solution in tech. Microservices are great for many reasons, one of them allows the best tool for the job. Kubernetes allows us to have the same operational standards and procedures even using different languages and solutions. For this blog post, I want to show a simple project I build which is a constellation of services. There are 5 microservices, written in several languages like Scala, Java, Go, Python and Rust. The services do a pretty basic math operation like (+, - , / , *) and the Scala one does the aggregation and orchestrate the other services using a polish notation algorithm and REST calls.

Having fun with Boto 3

Image
Boto3 is a kick ass AWS client for python. If you are working as a DevOps Engineer with Cloud that's a library you must check it out. Boto3 improved a lot the design in comparison with boto2. For this blog post, I will show how to do 2 simple things but yet very powerful things. Besides boto, I will show how to use Paramiko  another cool library in Python which can manipulate SSH and connect to boxes and perform commands. You will need to have an AWS account and you SECRETS in hand in order to make the code work. You can use python 2 or python 3 both can work with boto3.

Python Sci-Kit ML env in Vagrant

Image
In this post i will show how we can have a machine learning environment with python and scikit-learn  in Vagrant . Python is a great language however use it in windows is hard because most of libraries might now work property so something is easier just provision a environment with Vagrant and them do it in Linux - thats what we goona do. This is pretty straight forward you just need to have vagrant installed and configured before we start.

Customizando Subversion parte 2

Em um post anterior escrevi sobre a possibilidade de customizar o comportamento do sistema de controle de versão open source chamado Subversion ou popularmente chamado de SVN. Neste post vou mostrar através de um Script Python como é possível modificar o comportamento do Subversion de forma que não deixe o usuário realizar um commit sem um comentário. A Importância dos Comentários nos Commits Além de uma ótima prática de gerencia de configurações, utilizar comentários no commit do svn nos ajuda na hora de realizar merges, na hora de acompanhar mudanças e também quando você está procurando um versão antiga de um artefato. Você irá precisar de um Binding A API do Subversion é para alguma linguagem como Java, Python, PHP, etc é chamada de Binding. Então precisamos de um binding para Python. Vamos utilizar o binding do próprio site do subversion chamado de pysvn . Você precisa instalar o Python e o Subversion e bem como o pysvn. Uma vez tudo isso instalando vamos ao script, ...

Customizando o Subversion parte 1

O Subversion é um dos mais conhecidos sistemas de controle de versão do mercado. É uma solução open source que pode ser utilizada de forma viável no ambiente corporativo. O Maior problema do subversion é quanto a adminsitração por que as ferramentas boas de administração são pagas, não usando essas ferramentas você tem que administra-lo via linha de comando. Mas isso não é o fim do mundo. Eu sinto fala de processamento da working copy do SVN, o Clear Case de Rational/IBM já tem essa feature de maneira bem inteligente e eficiente, quem sabe nas próximas versões eles colocam. Existem diversos clientes visuais para o Subversion, o melhor deles que é o Tortoise não existe para linux, somente para Windos. O que é uma pena pois esse é o melhor client e no Linux não existe nenhum que seja bom perto do Tortoise. O Tortoise é o nosso primeiro ponto de customização você pode adicionar scripts customizados que realizam determinados processamentos no Tortoise mas isso não é aconselhado p...