HNHacker News
TopNewBestAskShowJobs

gizmogwai

174 karma · joined February 1, 2012

[ my public key: https://keybase.io/ohubaut; my proof: https://keybase.io/ohubaut/sigs/T20ti9deVhxr8VF72tRjQTL0BGGub4PFA3pxSVtFx44 ]
submissionscomments
gizmogwai··on The Code Review Pyramid
Velocity is only measured by the value you introduce. Incorrect code decreases value.
gizmogwai··on Google Photos will end its free unlimited storage in June 2021
No. They want users to become customers AND products.
gizmogwai··on A Pico-8 story: How the fantasy console unlocked Frédéric Souchu’s dreams
You might want to have a look at Voxatron[1], the 3D version of Pico-8, that you get as a bonus when you buy a license of Pico-8.

[1]: https://www.lexaloffle.com/voxatron.php

gizmogwai··on Ask HN: Programs that wasted you 100 hours?
Without a blink, McAfee.

This abomination has the ability to put more than decent computer into a miserable slug. I cannot imagine how much my client would have saved in productivity from all its employees and contractors if that thing was uninstalled.

gizmogwai··on Why I Write CSS in JavaScript
> Good software is reusable. I can import functions from 1,000,000 different npm modules all into my project and they don't fuck with each other, right?

I just spent the whole day trying to fix compatibility issues between different versions of npm libraries transitively imported in a project. Reusability in JS is a joke.

gizmogwai··on Why I Write CSS in JavaScript
HTML is not a programming language, it's a markup language. And SQL is Turing complete.
gizmogwai··on Zuckerberg denies knowledge of Facebook shadow profiles
That's more subtle, as individual anonymized data point can not identify an individual, but a linked set of those can, with a very high percentage of confidence. Facebook can always play the card that each data point are anonymous, hence not part of your data, and keep everything.
gizmogwai··on #deletefacebook
Oh, and don't forget to share our article using the little facebook widget at the bottom...
gizmogwai··on ActivityPub: decentralized social networking protocol
Is it just me or does this recommendation reads more like a medium blog post from some developer advocate than like a formal specification ?
gizmogwai··on p5.js – A library to make coding accessible for artists, designers, educators
P5 is indeed the official port of Processing for Java (Processing.js being an independent attempt from John Resig). But like Processing, P5 is more about artistic realisations than applied use, which all of your alternate descriptions tend to lead to.
gizmogwai··on CheerpJ Applet Viewer – Runs Java applets without a local Java installation
The only, and still unmatched, advantage of using applets was having access to external devices, such as smart card readers, in order to be used with eID, for example. This is not possible with this plugin. The only interest would be for some old applets you don't have sources anymore and aren't techie enough to use a decompiler to retrieve some codebase to work with.
gizmogwai··on Learn Kotlin in Y Minutes
Const exists too, but for compile-time constant. Var and val are ok due to the general conciseness of the language (they don't get lost in the noise of other ceremonies). Plus, being a language though to benefit from strong tooling, IDE's will generally display the two differently.
gizmogwai··on Show HN: Ereb – Cron with web interface and Slack notifications
I don't know... Jenkins?

I mean, it is battle tested, has all the features you mention, plus pipeline of tasks, is extensible, can be clustered if needed, and, as a bonus, can serve as a CI as well.

The only downside I see could be the memory footprint, or the fact that you might despise Java.

gizmogwai··on I’m Joining LinkedIn
Thing is, by the time you have to take back this application for maintenance, chances are high that the then mainstream framework will be outdated, newcomers won't even know it, the doc will have vanished in a poor "let's move to this new shiny TLD", and still the business logic of the application will be vastly undocumented as well.

I was on your side for a long time, but I've come to appreciate a minimalist, simple, well documented in-house framework over a hype-driven "solve-all-the-thing" one, even free and with a currently big community.

gizmogwai··on Major Changes from Solr 4 to Solr 5
No, they don't. Behind the scene, it's Lucene that is creating a set of inverted indexes. While extremely performant for text search, it is also destructive and partial comparing to the initial dataset. So, there is no way to migrate an index to another one.
gizmogwai··on Microsoft adopts first international cloud privacy standard
Going that direction, one could argue that what you open source might not be what you are running in production.
gizmogwai··on Pygments, a generic syntax highlighter
Uh. Do you mean that, because a project is open source it has to limit itself to the lowest common denominator (not targeting git specifically here) rather than aspire to a better/more suited toolchain that its community believe in?

And by the community, I do not count those not having made any contribution but complaining about what is there in the first place.

This case is about the toolchain, but the same could be set about the code. Does it has to stick to an imperative form, as it is the most common widespread and understood paradigm, or can it be functional because it fits best the original design?

As long as the API is clean and the documentation is clear, I'm fine making the little extra effort to enter the world of the author rather than him/her lowering his/her expectation about what the project, as a whole, should be.

gizmogwai··on Google's questionnaire response to Article 29 Working Party
> I can certainly understand things like nude photos, sex tapes, etc. but we already have legal means of dealing with those examples. Can someone convince me why this law is necessary and in the public interest?

No, we don't.

Not only is it extremely expensive to go in court to have such a judgement for such affair, but it is also extremely complex as you are dealing with international laws and that most countries will not enforce a judgment made by another one for such "superficial" topics. And on top of that, you can add the Streisand effect.

Moreover, you still have the right to access the information, it will just not be shown by the popular search engines, as is the vast majority of the web.

This law is there to protect those that get a bad press on the web for things they already redeem themselves, have reach the prescription delay (e.g.: mistakes you did while you were minor) or that suffer from a side effect of some unrelated topic.

If you look at the questionnaire, it is long and complex enough to prevent most of abusive uses as it is the current case with the DCMA takedown idiocy. Plus the process is quite long (currently several weeks, or months) before a request is validated to prevent some scandale to be obfuscated that way.

gizmogwai··on What's New in Mercurial 3.0
In git, when you rewrite your history, the old version is gone (well, you still have the revlog for 30 days, but then it's basically over). This is why some commands like `git push --force`after a rebase can cause so much hassle to a community (hello Jenkins!) Here, the principle is te keep all the history, and its rewrites, forever, and to ease the distribution of those changesets.
gizmogwai··on *NEVER* sanitize your inputs
Again, wrong.

Encoding without proper context means "convert in a coded form". Hum that's not exactly what we want. So, let's add the "computing context", now we have, as an example, the ability to encode a WAVE file into a MP3. But wait, we lost information here! Bummer...

Sanitization in the context of computing does not specifically means that you have to "encode", or better, "transcode". It means that you have to take appropriate measure so that your input DATA cannot be interpreted as CODE by the receiver. Bonus point is taken if the measure you choose is lossless in term of information carried by your data.

gizmogwai··on *NEVER* sanitize your inputs
Put yourself in the shoes of an inexperienced mathematician solving its first theorem. You've been advised to take care of infinity as described with two parallels crossing at infinity.

Problem, your theorem is dealing with discrete numerable infinity...

On the side note, English meaning of Sanitize is "Make clean and hygienic", nothing more. It says nothing about "removing". Other definitions are extensions based on CONTEXT, once again.

gizmogwai··on *NEVER* sanitize your inputs
This whole post is ridiculous. The problem he poorly tries to described has been solved by mathematicians a few millenniums ago. In a single word: CONTEXT.

A word is nothing if not bound by a context. Developers have already developed part of this context. Design patterns names are an example of those words defined within the context. Sanitizing input is just another.

gizmogwai··on Database Versioning: The ignored aspect of version control
flywaydb is not even as good as pure SQL scripts. It is mainly designed to be a forward-only tool. I honestly doubt anyone with some database background would recommend it.
gizmogwai··on Database Versioning: The ignored aspect of version control
I do use it. Primarily because it more widespread in the Java world than other competitors,and more easy, in the syntax, to start with. You might also be interested in DB-Main [0]

But database migration has little to do with version control of code. With code, when you switch from a version to another, either you have a bug^H^H feature, either you don't. And you can repeat that as many time as you want.

Data is another kind of beast. You cannot simply "DROP" a table or even a column back and forth and rely on your backups (if any...). You do no longer want a table? Do not use it anymore, be let it there. You want to migrate your data? make sure you do no loose information. And if you do, duplicate it somewhere if you have to "rollback", or at least choose sensible defaults that can be applied.

Data is there to stay, as complete and detailed as it was originally put in your datastore.

[0]: http://www.db-main.eu

gizmogwai··on Every line of code is always documented
I wish my current coworkers wrote any comment in there commit message...
gizmogwai··on Mail Pilot – The State of Email on the Mac
Ok. So I did give it a try, and it was the worst 3 hours I could spend with a mail client before asking for a refund.

I tried it both with a GMail and a classical IMAP accounts. Both were a total disaster. Two years of development for THAT?!

Dates were messed up. Some mails would never appear, some would, but with another sender! Gmail labels were not properly managed, Lists cannot be deleted, even when emptied. And those new MailPilot.* folders are just plain wrong, it breaks your flow in ANY other mail client.

What a waste of time.

gizmogwai··on PHP 5.5.8 Released
From my personal experience, I disagree. I have seen a greater percentage of poor codes in languages that a lower entry barrier than those that require more initial investment. Most poor coders I've met are lazy coders (in the wrong side of it).
gizmogwai··on Bzr is dying; Emacs needs to move
Command names are closer to SVN/CVS ones, which lower the learning curve for similar concepts. The documentation really is at another level of didactic compare to git, and no, pro-git is not enough neither. Changes are tracked automatically, no need to explicitly add the files you changed to a particular commit (Whether or not it is a good idea is another discussion). Empty directories can be versioned, no need to create a .gitignore in it to fool the system (Same remark as above).
gizmogwai··on Bzr is dying; Emacs needs to move
All of them emerged due to the end of license agreement for a free license of bitkeeper for the linux kernel. Git won due mainly to Linus personnality and the rise of "social coding" via github. Bazaar failed because, at the beginning, it was painfully slow compare to git and mercurial. It speed has increase over time, but bad reputation is hard to get rid of.
gizmogwai··on 1-star reviews of 'Extreme Programming'
I do. I might be biased as my first work experience was using it extensively (and we were quite successful doing it). So far, it is not rare that I can find mission where people, once the mess cleaned a bit with their current environment and trust established, are willing to give it a try, progressively and in good conditions. The general feedback I got is quite positive.
Page 1 of 3Next →