Skip to content
View marcelocra's full-sized avatar
🃏
Programming...
🃏
Programming...

Block or report marcelocra

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
marcelocra/README.md

Hello! 👋🏽

My name is Marcelo and I'm a Software Developer!

I quit Google to follow my entrepreneurship dreams.

I really enjoy programming and am constantly — almost every day — learning more about it and practicing.

I believe that thinking even a little bit about what we are going to code before actually coding it usually allows us to produce better results, faster. In other words, doing some software design — but not in a BDUF1 kind of way — can help us a lot.

I also believe that maintainability is one of the (if not the) most important features of a codebase. Code architecture and readability play fundamental parts.

Now I'll list some coding stuff that I like and find interesting or useful, including projects that I created.

If you want to know more about me or get in touch, keep reading below. I also added some typical GitHub readme stats there 😆️.

{Useful,Interesting,Cool} coding stuff

Technologies

  • Astro: it is a full-stack web framework that defaults to generating VERY fast static sites, with great Lighthoust/Speedtest results. I created my website using it (the site repo pinned below).

    Good performance means better user experinece, and it should always be one of our focuses.

  • Tailwind CSS: a great alternative to writing pure CSS. It is easy to learn, use, has great developer experience, and help us produce beautiful websites, quickly.

  • Daisy UI: Tailwind plugin with beautiful styles for frequently used components (button, tooltip, etc).

  • clsx: great helper for writing conditional CSS/Tailwind classes.

  • Deno: JavaScript and TypeScript runtime with very interesting features, e.g. a fine-grained permission system, npm support, no node_modules, etc. Can be used as a replacement for Node in many cases. Pair well with Deno Deploy.

  • Clojure: amazing language for people that are not allergic to parethesis hahaha.

  • Babashka: an alternative Clojure installation/runtime for running Clojure code without the JVM startup penalty.

  • nbb: Babashka for Node. An alternative ClojureScript installation/runtime for running ClojureScript code without a compilation step.

Code references

Tech interview references

(Disclaimer: I haven't used all references mentioned here. In each section I mention which ones I actually used.)

  • Cracking the coding interview: great book that helped me pass Google interviews. It was the 4th edition back then, I think, and I completed most of it, especially the exercises.

  • Tech interview cheat sheet

    This list is meant to be both a quick guide and reference for further research into these topics. It's basically a summary of that comp sci course you never took or forgot about, so there's no way it can cover everything in depth.

  • Tech interview handbook

    Curated coding interview preparation materials for busy software engineers.

About me

  • I completed my Computer Engineering undergrad at ITA (Instituto Tecnológico de Aeronáutica), one of Brazil's 🇧🇷 most renowned engineering schools. It was from 2010 to 2015, with one year exchange program in...
  • The Netherlands 🇳🇱, attending to TU/e (Eindhoven University of Technology) and UT (University of Twente).
  • I worked at Google as an intern for 6 months in 20152 and as a full time developer from 2016 to 20203.
  • I worked at startups after 20204, until deciding to create my own company.
  • I have 15+ years of coding experience! My first line of code was in C, in 2010.

You can check a few of my projects below, some stuff I learned and am learning in this essay (in English) or in my blog (in Brazilian Portuguese).

My social pages are linked in the profile, if you want to get in touch.

Cheers!
Marcelo.

My projects

Currently, Jul 18, 2024, my pinned repos show some of my projects. Not everything fits, as GitHub only allows 6 pinned repos, so I try to list more at my website or CV.

Some stats

Historic data

marcelocra's github stats
FYI: I'm ignoring some languages. Click here to see why.
  1. They are not languages (e.g. HTML, CSS, Dockerfile).
  2. I haven't used them meaningfully in a long time (e.g. Python, Java, C, C++).
  3. I use them mostly as "glue" and not to write actual programs (e.g. Shell, PowerShell, Vimscript).

Footnotes

  1. Big Design Up Front is a software development methodology in which the software design is fully completed before any coding happens. It is not applicable in many (most?) software development contexts, particularly apps and websites. Relates to the Waterfall model.

  2. I worked mostly with iOS apps, writing a lot of Objective-C. Also wrote some Python and used Bazel.

  3. Wrote mainly C++, but also Python, Java, JavaScript and some Shell.

  4. Worked mostly with JavaScript/TypeScript, React and Node.

Pinned Loading

  1. site site Public

    A site and blog that I use to test and learn different ways to make sites and blogs. Currently, Apr/24, it is Astro on Deno Deploy, but might change.

    Astro

  2. utils utils Public

    Be more productive by automating tasks and avoiding code rewrites.

    Clojure

  3. dotfiles dotfiles Public

    All my development configs for vim, tmux, git, etc.

    Clojure

  4. template-chrome-extension template-chrome-extension Public template

    A Chrome Extension template with Vite's react-swc-ts, Tailwind, DaisyUI, Eslint+Prettier and a Deno websocket for auto-reloading (not stateful yet).

    JavaScript

  5. sorrisododia sorrisododia Public

    Todo dia um motivo novo pra sorrir! 😊️

    JavaScript

  6. learn learn Public

    Let's learn something new? Some languages I tried here: F#, Zig, V. I use this mostly to play with languages, technologies, frameworks, etc.

    F#