I got into programming by building a custom Ultima Online world with the esoteric E-Script language back in 2008. Since then I’ve built PHP web pages, Ruby web applications, worked on micro-services and modern React.js frontends, optimized MySQL databases, automated infrastructure operations with Ansible, converted spaghetti codebases into clean API services and lead a few projects from the initial gathering of specs, running sprints up to the release, monitoring and maintenance phases.

Software Engineering

I believe that software engineering is all about following standards, simple solutions and the art of compromise between management pressure for results and programmers’ tendency for building perfect code cathedrals.

Programmers love making existing code shorter and faster. I follow a rule that each commit should include a bit of refactoring of existing codebase. That’s a great way of keeping projects maintainable and fun to work with for a long time.

I’m a strong proponent of automation. It’s an investment initially, but over time the automated processes stack up making the mythical “10x productivity” an achievable goal.

Creative Coding

In my free time I do Creative Coding, which stands for using programming for something expressive rather than functional. It’s a fun, experimental and diverse place on the fluid border between art, technology and business.

The field contains an abundance of toolkits for audio synthesis, generative graphics and everything in between. I love learning new programming languages and paradigms, it allows me to dig deeper and understand computer science in a boarder sense.

I’m mostly interested in experimental, abstract, real-time performances that use short clips, geometries, and animations build a specific mood. It’s a good match with the electronic music. I’ve deployed a few live video setups for club music parties and interactive 3D installations using Kinect.