'11' + 1 // 111 '11' - 1 // 10
A language famous for it’s unique behaviour.
Others, absolutely hate it and dream of a world without it. These folks cringe at the thought of encountering yet another
found 2235 low severity vulnerabilities when doing
Do I think it’s an awful technology and refuse to let it run on my browser at all? No.
Would I still make fun of it? Absolutely.
Would I use it to develop something? Maybe, if it suits my need.
My current project aims to create an educational platform that can teach people how to write clean code. The idea is to create a website similar to LeetCode / HackerRank, except solutions are ranked in terms of their cleanliness–judged using metrics obtained from static analysis.
While working on the project though, I discovered just how much of its part can be done on the client-side, which led me down to a rather interesting rabbit hole.
Porting My Project
With relatively minor modifications, I managed to port some of the interesting parts of my project here, running on a static page.
The demo features an IDE with most modern functionalities (linter, auto-format, auto-complete, Vim emulation, etc.) and an interpreter that can run user code in a sandbox while visualizing the code interpretation steps. It also supports basic static analysis of user code (other static analysis metrics were non-trivial to port).
I was honestly surprised by how much the simple port can do, given that it only took me ~10 minutes of yanking and deleting lines on Vim, with tendency to throw out anything that is not easily moved.