I'm Ronny. A Software Engineer based in Costa Rica ๐จ๐ท
I've been in the IT industry since '99. I started developing when Internet was not what is now.
In my first job as a junior developer I took advantage of what I learned by myself during High School with this book and an English dictionary.
- ๐ ๏ธ I'm currently working on: Migrating services and webapps to .NET 8 (backend) and to Next.js (frontend).
- ๐ณ I'm currently learning: more about DDD, Clean Architecture using rich-domains. Also A&DS.
- ๐ฅ What I want to learn next: more about TDD and frontend testing.
- ๐ฎ How to reach me:
[email protected]
or my website. - ๐ Fun fact: in High School I played the guitar ๐ธ in a trio... And we made money!
- .NET Core
- Why? ASP.NET is a powerful framework for developing enterprise-scale large web apps and services backed by Microsoft. It's solid. It's know that before the Core versions it was supported only on Microsoft OS, but that's not case anymore ใพ(โโ _โ )ใโช, now it's cross-platform. It's versatile and really really powerful.
- Nodejs
- Why? I love JavaScript. With Nodejs I can build backends in JavaScript with the powerful V8 engine. I like to be flexible and being able to choose the right tool for the right project. Nodejs gives me flexibility, besides, it uses the same language than in the frontend.
- Express
- Why? Expressjs makes even easier the development of Nodejs backends by providing a great set of features. I used mainly its HTTP utilty methods.
- React
- Why? When I read about its virtual DOM I knew I need it. Web apps are faster with React, and the code is easier to mantain. It changed the paradigm and makes us bring HTML into JavaScript. Before React, developers like me were used to "inject" JavaScript into HTML code.
- React Native
- Why? If I already know Reacjs... Why not? React Native is not easy, but after overcoming the learning curve and the deployment process is mastered, I won't change it when developing hybrid apps.
- Next.js
- Why? Sometimes we develop projects and after their release we don't have to visit them often. After my 5th or 6th Reactjs project, I found that is very easy to get lost on tracking deprecated packages or upgrading to the latest Reactjs version. When something like this can happen, then it's better to use an oppinionated framework to handle the entire ecosystem and versions of packages. In addition, SSR is a must in many projects. Once again: flexibility and knowing the right tools for the project at hand.
- JavaScript
- Why? I started to use JavaScript to alter DOM elements from ASPX: that's pre-jQuery era. I love the flexibility of this language and the richness it gives to the UX. Besides, it's the language used in the most powerlful frontend frameworks. It's a must nowadays, and it's likely it will remain that way.
- TypeScript
- Why? Depending on the size of a project, it will be necessary to use strong-types to catch errors before compilation. TypeScript adds this layer over JavaScript.
- SQL Server
- Why? The default no-brainer database when using .NET. Relational databases (and the normalization they provide to the data), have been the proved way of storing for decades in order to support large entreprise-scale projects.
- MongoDB
- Why? Once again: flexibility. When speed is the key, and relations are not strongly necessary, No-SQL databases is the answer. Working with collections and documents is a fast a reliable way of storing and fetching information.
- Mongoose
- Why? Because simplifies the interaction with MongoDB through its schemas and standard methods (save, findAndUpdate). This ODM abstracts the complexity of interacting with the no-sql database.
- EntityFramework
- Why? As in Mongoose, EntityFramework (ORM) abstracts the complexity of interacting with relational databases. It's powerful and fast. There are providers that allow us to connect to MySQL, PostgreSQL, Oracle and even local files like Access and Excel.