I’m Andre Ramaciotti. You may also know me as ars-dev-br, and I’m currently a senior software engineer at Tremendous. Previously, I worked at AlphaSights, CERTI, and Philips Healthcare.
I’ve been working as a software engineer since 2010. I’ve used a multitude of programming languages, but lately I’ve been focusing on Ruby. I also have an interest in Programming Languages as a study subject, and I’m highly curious about Rust and Functional Programming in general.
Besides working as an engineer, I’m also a registered accountant (in Brazil), and I enjoy being a husband, a father, taking care of my ten cats, reading, gaming, and playing the guitar. If you think we should be in touch, feel free to reach me out at blog@ars.dev.br.
Posts
-
Display file contents in Obsidian with Dataview
Obsidian released Bases, which covers like 90% of the use cases I had for Dataview. I still use it for a very specific scenario, though.
-
Display Unicode characters in git
By default, git escapes “unusual” characters with backslashes and their octal code. To stop this from happening, you can set
core.quotepathtofalse. -
Use fake built-in packages to organize your GNU Emacs config
By using
use-package, you can organize your~/.config/emacs/init.elfile and group related settings together by package. So, for instance, you can both install and setup thecompanypackage by using the code below -
Tools of choice
Tools that I use and that I actually enjoy using.
-
Never Call an Enum “ai” on Rails
This one happened recently, we couldn’t find anything online, and it took us some time to solve. In case this happens to someone else, I decided to document it here.
-
Go, First Impressions
For a while now, I’ve been putting Go down. As someone who’s really into Programming Languages Theory, it just felt wrong to create a new language that, basically, just throws away almost everything that has been developed on the subject in the last years. Forget about null tracking, innovative ways of handling errors, and so on. Everything in Go is “simple,” for some definition of simple.
-
Creating Properties with Dynamic Keys in Ember
Recently, I had to create a computed property that depended on an attribute value. Initially, I was inclined to try something like the code below, but that doesn’t work. You actually need to call
getto be able to use thepropertyNamevalue. -
Software Development and Carpentry
Some friends and I have this sort of an inside joke that, eventually, we’ll all become carpenters. This joke didn’t come from nowhere, and it actually comes from a trend we’ve noticed in websites such as HackerNews and r/programming. Every time a question such as “What would you do if you were not a developer?” pops up, many answers seem to gravitate towards woodworking.
-
Using Different SSH Keys for Different Hosts
It’s possible to configure SSH to use different RSA keys for different hosts. On this short post I’ll show how to set it up so git uses the right key for each repository.
-
Notes on Effective Performance Engineering
These are some notes I’ve written while reading Effective Performance Engineering, a book written by Todd DeCapua and Shane Evans. This book is available for free, you just have to give O’Reilly your email address. Until now at least, I haven’t received any spam on the account that I used to sign up, so I guess it’s trustable.
-
Fundamentals: Bloom Filter
In this Fundamentals series, I’ll write about some Computer Science concepts that I haven’t paid much attention before. For this first one, I wrote a simple Bloom Filter based on an article that introduces the concept of Enhanced Double Hashing.
-
Quick note on Co- and Contravariance
This is something that I keep forgetting, so I decided to write a quick note on it. Basically, variance – in a Computer Science context – is a relation between subtypes and type constructors.
-
What Every Software Project Needs
Recently, I had this idea of writing general guidelines that every software project should follow. Lucky for me, I found an article that covers up almost everything, so I don’t have to write one.
-
Performance Culture
Joe Duffy’s written an interesting piece on systems performance and managerial culture. Some points I’d like to highlight:
-
Google Sheets, Stocks, and Funds
Although I’m a developer, I still think spreadsheets are the best tool for certain tasks. I thought I’d had to giveup my portfolio sheet if I was to automate it, but I was happy to see I was wrong. With
GOOGLEFINANCEI’m able to fetch quotes for stocks and funds from Google Finance, so I don’t have to type it manually anymore. -
Postmortem: Angular 2 and TypeScript
Notice: this postmortem is about a piece of software that’s still on alpha. At the time of writing, Angular 2 latest version was
alpha44. Things might have changed since then. -
On postmortems
Developers often say it’s all about picking the right tools for the right job. That’s true, but few people talk about the tools they’ve chosen and how they fared. This way, we end up losing a good part of our experience as professionals. Each developer has to relearn the same lessons about the same languages and libraries.
-
Yet another post about monads
Recently, the concept of monads finally snapped in me. I believe the secret is to use them until you have some intuitive understanding. Then, you can read those zillion other articles on Category Theory and understand what they actually are.
-
A fresh start
Sometime near the end of 2012 I acquired a VPS1. It gave me the fun and exciting experience of setting up mail, SQL, and web servers.