About me
Who am I? I like to think I can make the world a better place by developing useful software that adds actual value to our daily lives. So, if you want to support my work, just check it out.
When somebody asks about my qualifications I like to answer with this list:
- Computer Science Engineer.
- Computer Science Analyst.
- Electro-Mechanical Technician.
- Computer Network Technician.
- Computer Technician.
But that doesn't tell you who I am. I'm a realistic dreamer; I think ethical businesses can improve our world, and we can scale our positive impact with software.
If you are into software development, you may also want to know what tech stacks I like or use:
- Common Lisp: I was inspired by Paul Graham's Beating the Averages article. I studied the language for an entire year and concluded that while it is a fantastic language, its ecosystem is lacking; it's simply too old.
- Rust: Overcomplicated, C++ with it's full STL power in use seems simpler for some use-cases.
- Erlang/Elixir: I think those are cool technologies, but now, with Golang's steady improvements, there is no reason to keep trying to use EVM languages.
- Golang: I like it for high-performance workloads, but if I can avoid it, I will. It doesn't allow for many abstractions that I'm used to.
- Javascript/Typescript: there is no denying that JS is everywhere; is the true "write once run everywhere" that we were promised originally by Java. While I don't like the language due to how easy it is to make certain types of mistakes, I acknowledge its power, and I use Typescript as much as possible in front-end-related tasks.
- Python: I love this language. You can do anything with relative ease, from small scripts to full enterprise systems. It's the language that allows much of the promised Common Lisp power in a modern and usable language. But at the same time, it is slow, the deployment story is terrible, and its dynamic nature requires high discipline.
- Java: JVM is the best VM you can use to run critical software, it is reliable, and I wish I had the opportunity to deploy more JVM-based systems. What I don't like so much about Java is the culture of using OOP patterns everywhere instead of simple method calls, or worst, DI frameworks that are used to avoid creating the most simple dependencies manually and then extended to become a way of flow control. But I'm also free to code Java the way I like.