I hate S.O. morons

I refused to contribute to StackOverflow a year ago. Yeah, I still have peeked into the Gson tag hole anonymously. That was the power of the gamification I lived with almost a decade. Okay, I never contributed heavily, however I wouldn't let myself post a stupid answer trying to put the best I can for those morons for free. Yeah, that is. Sometimes I posted under fictional names (see idontcare and no-one-cares users there if you want), because I had a feeling I had to make a post, probably being a gamification addict. Come on, what's for? I don't know, let it go away. Recently I decided to help out a folk with 120+K reputation. Explaining why his deserializer is not invoked, why he's using a raw class and why it's wrong, referenced my own PR to Gson addressing a similar issue, I got a negative reputation point. After 20 minutes since I posted my answer, the OP posted my own PR calling it a feature released in Gson 2.8.5 (again, this is wrong and this is a stale PR not have yet been released). OP, what's wrong with you? I'll never post to StackOverflow anymore even anonymously leaving all the morons with their problems alone. Fuck it.

Rest in peace Keith Flint, the only Firestarter

Firestarter

Mercurial subrepositories to Git submodules

I didn't start with Git. Mercurial has become my first DVCS. Because of that, Mercurial actually ate my first source code. I'm a huge Git fan now, and I switched all my single-repo repositories to Git using this awesome tool. Now, long few years later, the tool has finally gotten the Mercurial subrepositories to Git submodules support, so now I'm able to migrate to Git completely.

Read more…

foreach is an MVP pattern implementation

The foreach, enhanced for statement, is a perfect example of an MVP pattern implementation.

Read more…

Efficient git filter-branch and --index-filter implementation

    Tags : 

About two years ago I posted a post that described how you can use Git and Mercurial to create encrypted repositories. Back to then, I claimed that the encryption cannot be changed and the encryption method will be constant for the entire repository lifecycle. Well, sort of, from the user's perspective (at least if you don't use versioned .gitattributes that refer different crypto-filters). Using and maintaining such repositories can be not a fun, and you might want to decrypt the whole repository some rainy day.

git filter-branch (a bit of a cryptic name, as well, yeah?) is a right tool. It features a lot of filtering options that can transform the original repository from scratch, and we're going to use --index-filter...

Read more…

The Java language seems to go a wrong way

I'm not sure if the Java language goes a right way. The new Java language features look really not I would like to have in Java.

Read more…

Detecting excessively suppressed redirects in MediaWiki

A simple Python script to detect excessively redirected pages in MediaWiki.

Read more…

Unique code search algorithm rewritten in almost pure ReQL

In my previous post regarding generating the unique codes out of the free codes. That implementation was based on a JavaScript function that accepted a strategy to be invoked each time a binary search iteration is in progress. I also mentioned that due this it will do log n queries to the RethinkDB database, and I assumpted that it can be fully ReQL based. Yes, it can be executed fully on the RethinkDB side being re-implemented in pure ReQL. Almost. Let's see how.

Read more…

Finding a unique code in a code pool in RethinkDB

My recent project had a lot of fun to work with. And, as I said before, working with RethinkDB was fun too. Since that project implemented a virtual file system, it also had to share a file by a unique file by a unique code (say, kl2890aj or 2opOZxk1).

How did it share a file by a unique code similarly to what Dropbox or YouTube do?

Read more…

Making a unique filename by adding a copy number in RethinkDB

RethinkDB is a beautiful document-oriented database I was lucky to use for my most recent project. Unfortunately, I don't work for that project anymore, but I would like to share some ideas I implemented while working on that project.

That project implemented a virtual file system table in a RethinDB database, and one of the requirements while creating a new file entry was making its filename unique. A usual filename generated chain named as if you downloading a same-named file: file.ext, file (1).ext, file (2).ext and so on.

Read more…