Skip to content
Avatar
☠️
Do what you want cause a pirate is free! You are a pirate!
☠️
Do what you want cause a pirate is free! You are a pirate!

Highlights

  • Arctic Code Vault Contributor
jonasraoni/README.md

About Me

Software engineer with 15+ years (I got my first job in ~2001) of experience working with different technologies and devices (jack of all trades, master of some 😁). You might check out my LinkedIn or CV for more professional information.

Persistent hardhead (I'll try again and again, until I succeed), dad of two boys (🧊 + 🔥), challenge lover, bug hunter, soccer player wannabe, lego builder, fan of Italian food and desserts 🥰

How I Code/Solve Problems + General Beliefs About Programming

Chutes/snakes and ladders HackerRank solutions in JavaScript Codility solutions in C# LeetCode solutions in JavaScript

  • Every now and then we're surrounded by new ideas and technologies, which made me believe that everything we're building today is already legacy, something that will be dumped in a couple of years or even faster (when team leaders are replaced). So, I think we should strive to minimize the amount of code, complex architectures and customizations to the minimum! Which means it's not fruitful to spend a lot of time nitpicking and sharpening your knife for a war that may never come.

  • The less code, the better! I think the same applies to files, classes, tools, services, etc. Some people believe that having very simple functions, distributed across many files, makes things simpler, for me that just highly increases my cognitive load... It's like reading a book where each page sends me to another random page, without context, and switching between these pages is painful. So, I generally prefer to avoid fragmenting the code until an abstraction is needed (duplicated code).

  • I like performatic code and I've seen good ideas saving a lot of money with hardware/servers. But I'm not willing to dump everything to achieve the maximum performance, I think that everything in life needs equilibrium. Especially when a piece of code becomes so complex, that even you can't understand anymore what's going on without reading it thoroughly.

  • I see coding as a kind of art, so I'm not a big fan of materials spitting rules... People end up using those as a kind of "horse eye patch", which limits their alternatives, while the truth is that a problem might have N different (and equally great) solutions! But well, I have to agree that things are easier when everybody speaks the same language :)

  • I'm generally against depending on closed source products/specific vendors, everything should be replaceable.

  • I love reinventing the wheel, but that's unhealthy for a company. If you're able to build something great, better to make it open-source or direct your efforts towards an existing code base, so it can outlive yourself.

First Open Source Projects

A source of manually minified JavaScript snippets written with a friend a long time ago, when I had plenty of spare time. It's kind of abandoned, but I'm still using some codes from there 🥰).

JSFromHell

Code editor written in Object Pascal that used Scintilla under the hood, it was also my first open-source project. I've contributed with a lot of code and ideas, such as the transition from procedural code to an object oriented approach. The plugins were written in JavaScript and the interface of the editor could be customized with CSS 😵

Notes Editor

My GitHub Gists

Just small codes and notes which I thought wasn't worth to create a repository.

Random Facts

  • I got my first computer when I was around 10 years old, a 486-DX2. I've learned how to use it by spying my cousin giving classes about DOS (not DoS 👀), so I still remember something about: devicehigh=xyz, deltree, typing win to start the Windows 3.11, turbo button, sound blaster kit, cleaning the mouse ball, zipdrive, SCSI (the super fast disk that nobody had 😁), etc.
  • I've got access to the computer after finding the key (yeah, computers had locks) and discovering the password (which was errrrr "password" 👀).
  • I've joined the internet after listening to some guys discussing about it and HTML in the classroom... I've got curious and once I arrived at home, I found an AOL CD and installed it, but well, it required a modem... Hopefully I remembered my cousin was talking about it, when he was setting up a Dial-Up connection to play Duke Nukem online (a real WTF at the time and, I still don't know from where he took all this knowledge haha), so I found a great 13.4 Kbps modem in a box with old hardware pieces, cut some cables and it just worked! I still remember about using the internet at night to save money, losing the connection when someone was calling and the introduction of "download resumers" was awesome 😎
  • My key languages are JavaScript, C# and PHP, and in the past it used to be different (errr Object Pascal + C/C++).
  • I still feel proud about my old codes, since I've created a binary parser (which was used by the MongoDB Driver), a big number library and other things in JS, some years before they were introduced to the language, it's cool when you get random (as I totally didn't need these things) ideas and make them work =]
  • I don't have a specific preference to work in the backend/frontend, I consider that I have good taste/opinions, but I'm definetely not into design...
  • I've been working remotely since 2015, and I fully recommend it =]
  • I took part into the contest where the creator of JQuery (John Resig) was starting to become popular haha (our entry is the number #2, John's entry is #3).
  • I've started reading about web stuff around 1997... It was the time when everybody was using AOL, chatting rooms (who knew how to write rainbow texts was considered a hacker haha), Yahoo Groups, SubSeven (o_O) and etc... I've got a 30-50 pages document and it was just enough to learn HTML/CSS, it was also talking about JavaScript, but I didn't get the idea... Errrrrr, not until I discovered it was used to create those cool mouse trails, blinking radios and etc. 😂
  • I've won a video game championship (and some internally at my worker place) when I was a child, the old guys which lost for me, were praising me as a god 😂🏆
  • My first paid task was digitizing monographies when I was around 13, nothing to complain xD
  • My first programming language was JavaScript.
  • My favorite type of task is improving performance and diving into weird bugs.
  • My first home page is still accessible through the https://archive.org, but I'll never reveal its address! Some close friends must still remember about it 👀
  • I've got my first programming job around 2001, a kind of freelance job to work on the integration of a machine to test the cushioning system of cars using Object Pascal/Delphi (I didn't receive my last paycheck 😑). After that I've moved to another company which was building hardware to teach children, doing the same type of job... At a certain time, I've decided to join a university (which was just finished around 2014 due to the creation of remote courses)... There I was solving the exercises using minified codes in C, the teacher got interested in my skills and indicated me to work in a company which was developing mobile applications in C/C++. After that I've moved to a digital agency and I've been working with web related technology since then, mostly using C#, PHP and JavaScript.
  • I've been once a victim of a kind of social engineering attack when I was 16, a friend of mine sent me a game that he made to take a look, which had a hidden keylogger haha... Hopefully he warned me later! I was looking for him in internet these days, and he's famous for earning a lot of prizes in online promotions, even a car haha... I have a small guess about how he got the prizes 👀
  • I've been once a victim of a ransomware as well! Someone connected to my MySQL database years ago and renamed the databases to form a message asking for money (after that I've finally became a bit psycho with security) 💩
  • My favorite PC games were Euro Fighter 2000 (a flight simulator), Full Throttle, Indiana Jones, Quake, Duke Nukem and Warcraft, countless hours spent on them... The most revolutionary one was Carmageddon, my family was just shocked! Then it came a lot of trash games + the infinite Battlefield/Counter-Strike (I was the AK guy) seasons, which were then replaced by eternal (successful, but full of hatred against the game's AI) FIFA seasons, until I got retired from games 😂
  • I don't trust in the current state of crypto currency, but digital money is here to stay (I can't remember last time I've touched bills/coins)... Also descentralization in general sounds great given our failed leaderships.

GitHub stats Top Langs

visitors

Popular repositories

  1. My solutions to exercises and tests at http://codility.com.

    C# 19 26

  2. A code editor with support for dozens of languages, syntax highlighting, JavaScript macros/plugins, personalized smart indenting, debugger, folder search, etc.

    Pascal 7 8

  3. Persistent tree structure written in Pascal that can handle binary data.

    Pascal 4 2

  4. Math expression evaluator written in Pascal using pointers.

    Pascal 3 1

  5. A Pascal stream class that is implemented as an interface, thus offering reference-counting.

    Pascal 3 3

  6. Object tree written in Pascal/Delphi.

    Pascal 3 2

180 contributions in the last year

Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mon Wed Fri
Activity overview
Contributed to pkp/pkp-lib, jonasraoni/hackerrank, jonasraoni/jonasraoni and 5 other repositories

Contribution activity

February 2021

Created 4 repositories

Created a pull request in pkp/ojs that received 1 comment

Reviewed 1 pull request in 1 repository

Created an issue in ulsdevteam/pkp-betterPassword that received 2 comments

Allow disabling/selecting the default blocklist

Maybe the user should be able to disable and/or select a default blocklist (I saw some lists here, perhaps they could be downloaded on demand or ad…

2 comments

Seeing something unexpected? Take a look at the GitHub profile guide.