HNHacker News
TopNewBestAskShowJobs

ajnin

3,349 karma · joined November 1, 2014

submissionscomments
ajnin··on In MySQL, use “utf8mb4” instead of “utf8” (2016)
The day I realized that is the day I stopped using MySQL. It was a very long time ago, I was burned by this exact issue. I don't know what's more fundamental to a database than storing the data you ask it to. If it's storing something else, then it failed at its job spectacularly. At the time I experienced this bug I think it didn't even give a warning, but I think that's actually worse with one : it knows it's storing incorrect data but does so anyways.

And it still has not been fixed after all those years. I don't know what use is a character encoding that partially supports Unicode (you just have to try to find out in what way) and is used by nobody else. I don't really care that at some point in the future utf8 is going to become an alias to utf8mb4, a DB capable of this behaviour cannot be trusted, and it allowed me to discover postgres which seems superior in just about every way, so I don't need to go back.

ajnin··on US consumer prices soared 7% in past year, most since 1982
Here's another example that you might be more familiar with : let's say that year N there is a specific laptop available for sale for $1200. Year N+3 you can still find for sale that laptop which still costs $1200 but which has improved guts and is twice as fast as before. Has the price of laptops stayed the same or gone down ? From the point of view of CPI calculation, it has gone down.
ajnin··on Upwork asking me for a $12.5k refund as the client was using someone else’s card
I'm puzzled by this. It seems obvious that Robin committed some kind of fraud against Upwork by using someone else's credit card. Upwork should be asking him to pay his debt, not OP who (says he) didn't breach his contract. Is it Upwork becoming big enough that it can start to bully people around and make extortionate demands knowing that it will be hard to refuse ?
ajnin··on ProctorU is dystopian spyware
What's the legality of all this? I assume refusing to install ProctorU will fail your exam, so you don't really have a choice, when the process presents you with all kinds of check boxes and consent forms it's mostly doing the motions of informed consent, but at no step do you have a real choice. Surely no sane person would allow this blatant invasion of privacy willingly, this is practically duress.
ajnin··on Designing better file organization around tags, not hierarchies (2017)
With this you can't easily search for files that have multiple tags, the whole point of tags is that you can use them to find set intersections.
ajnin··on A terrible schema from a clueless programmer
Only if the SMTP client is following the RFC but being spammers they probably sent anything but the actual domain they sent from.
ajnin··on Global Green Up Slows Warming
Natural emissions are balanced by natural sinks, so that the balance is close to zero, while human emissions are not balanced by anything. The actual variation of CO2 levels in the atmosphere is almost exclusively due to human emissions tipping the equilibrium.

The effect of CO2 on the climate is old science, it goes back to the 19th century, it seems a little bit insincere to ask this kind of question, if you had actual interest you would have found the answer very easily already.

ajnin··on Global Green Up Slows Warming
CO2 levels are not the only factor that is beneficial to plant growth, you also need sunlight and water, and nutrients, and other things, it's hard to predict what regions of the Earth will have favorable conditions in the future and if crops will profit or not from this.
ajnin··on Hardened wood as a renewable alternative to steel and plastic
Yes, that's why planting trees to offset carbon emissions is not really as good an idea as it seems, trees can live a long time but they're not immortal, and when they die they release their carbon back into the environment.
ajnin··on The Myth of Self-Documenting Code
When you're writing code, you have your problem, and you're trying to figure out how to make the computer solve it for you. When you're reading code, you have the detailed computer steps and you need to figure out what the problem was in the first place. Two very different tasks. Self-documenting code helps you with that by encoding natural language explanations directly in the code by naming things appropriately. But to explain to other developers and your future self how you got there then you need comments. A sort of map of all the paths your mind went though to solve the problem, why the obvious solution was in fact a dead end, why you did or didn't take a shortcut and so on.
ajnin··on 94% of the universe’s galaxies are permanently beyond our reach
It's mind blowing to imagine that the observable universe is bigger than 90 billion light years, space-time expanding at multiple times the speed of light.

If expansion keeps accelerating, then at some point gravity won't be able to keep the local cluster together and even those galaxies will drift away, then star systems, then planets, then matter itself will be torn apart until atoms and particles and quarks are destroyed. A dark future awaits indeed.

Something in my mind tells me that there must be more to it, the careful balance of universal constants that allow for matter and stars and life to exist surely would not allow it all to be destroyed forever in the end...

ajnin··on The Trouble with Checked Exceptions (2003)
> You don't want a program where in 100 different places you handle exceptions and pop up error dialogs. What if you want to change the way you put up that dialog box? That's just terrible. The exception handling should be centralized, and you should just protect yourself as the exceptions propagate out to the handler.

That's assuming a definition of an exception as a generic error you can do nothing about except tell it to the user and maybe retry the operation or kill the program. But in practice exceptions are used for more than that, they're a sort of union type where a method can return a result or an error, but because Java didn't have union types exceptions were used to signal that. For example parseInt will throw a NumberFormatException if it can't parse the string you pass as argument (NumberFormatException is unchecked but it really should be checked).

I think it's the coexistence of these 2 different ways things can go wrong under the same term that is the root of the confusion around Exceptions. The first way is using an exception as a normal outcome of a method, like parseInt above. Using the word "exception" for that is wrong, it is not exceptional for parseInt to return an error if you pass to it some string that does not contain a number. It is expected and will happen every time. The type system should be able to represent that with an union type or Either<> or something of the sort instead.

The second way things can go wrong is when the program is put in contact with the outside world, and the outside world is messy so things will happen that are not what you expect. You try to open a file but it cannot be found any more, you try to allocate some memory but the operating system refuses to do so, some network call is taking too long and so on. Those will have to be dealt with case by case, sometimes you can do something about it, sometimes not. I know programmers don't like that very much but I don't know what can be done about it, it's just the nature of dealing with all the edge cases.

ajnin··on Jellyfin: Free Software Media System
I've setup jellyfin on my media server but I barely use it because the web player bugs make it unusable for me. I think most issues are due to the fact my hardware is underpowered for the task, and the player gets confused when the server replies come slow and not in the same order as they were requested. In practice subtitles go out of sync regularly, I get "codec not supported by browser" messages with the actual video playing fine behind it when seeking and frequently enough to make watching videos too annoying to bother.

There are also other annoyances like the player forgetting my subtitle selection when jumping to the next video of the same season of a show.

There's also no quality setting that is just "stream the source file directly". It seems to always want to transcode when embedding subtitles, which I guess is done by ffmpeg on the server but is really the player's job.

I know they're working on a new player, though it's not included in jellyfin yet.

ajnin··on Mozilla HTTP Observatory
Got an F because I didn't implement XSS protection on my static non-interactive non-JS website.
ajnin··on My £4 a month server can handle 4.2M requests a day
Thanks for sharing that, I hope it does not land you into trouble. So, how many billions did you make with that site ?
ajnin··on Bit Patterns of Float
The "biased" exponent has a constant 127 added to it, so for example if the bits are 00000000 the exponent is actually 0-127=-127, if the bits are 10000111 the exponent is 135-127=8, and so forth.
ajnin··on Esperanto Champions the Efficiency of Its 1,092-Core RISC-V Chip
Power consumption is a function of the voltage squared, but maximum operating frequency drops down slower than that as you lower the voltage, up to a point as GP said. So efficiency defined as f*P goes up as V goes down.

People definitely do that, the voltage you chose to power your chip is always a consideration, it's one of the variables used by laptop manufacturers to manage thermals, and it's also pretty common to lower the CPU voltage so that you can run a desktop system with passive cooling.

ajnin··on How can we make air conditioners more efficient? [video]
What would be the impact of all that heat on sea life and fishing activities ? Also, as we tend to learn the hard way, natural resources are finite. How big of a heatsink is the bottom of the Baltic sea ? For how long could you cool all of Helsinki's homes per, say 1˚C temperature increase ?
ajnin··on Apple's bright idea for CSAM scanning could start persecution on a global basis
With that move I don't see how Apple will be able to refuse when a government asks it to scan for images of Whinnie the Pooh for example. They say they won't but they are too reliant on Foxconn's Chinese plants for manufacture, they could easily be blackmailed into compliance. (Android devices with a Chinese OS probably already report a wide array of stuff to the government)

This is another step towards total global surveillance of citizens. I don't see what can be done about it, technology makes it possible so it will happen, it is just too juicy for governments, they can't resist it.

ajnin··on Closing 45% of the open Emacs bugs
Absolutely. If there is nothing new and a bug is still there, there is simply nothing to add to the bug report. Too often now bugs get closed automatically for "inactivity" after a short period. Should users come back every months to "ping" the thread ? Some bugs last for years, they'd sooner be blocked for spamming. It's just Goodhart's law in action, a cheap way to reduce the bug report count.
ajnin··on End of the line for Uber?
What's premium about Uber ? My personal experience is that taxis are usually much more comfortable cars, they're allowed to drive in dedicated bus lanes, and they don't try to scam you by taking a longer route to rack an overcharge. The advantage and innovation of Uber is the app, but now taxi companies have one too. So what is it ?
ajnin··on World to hit temperature tipping point 10 years faster than forecast
You seem to be confusing a bunch of cherry-picked newspaper clippings with scientific research.
ajnin··on World to hit temperature tipping point 10 years faster than forecast
It's not true, solar is very cost effective, cheaper than coal. But there are industries build around extracting coal from the ground and they have an interest to continue to push coal.
ajnin··on Firefox: Performance in Progress
I get the same kind of fascination reading those comment threads as one would get watching a train wreck. To multiple users telling them that their stuff is broken, they reply that this is their actual intent. The thought that maybe there might be a flaw in their design does not cross their minds an instant. "Am I out of touch? No, it is the users who are wrong."

I particularly love the suggestion to use https://ideas.mozilla.org/ to submit feedback, as if that change went through the same procedure, and as if they didn't moderate away any suggestion that they don't like.

And yet they still don't realize that this "we know better than the users what's good for them" attitude is killing their product.

ajnin··on Firefox: Performance in Progress
These are some good changes. Perceived performance is very important for a program you use many times per day. One of my long time complaints is that with Chrome, when I want to search for something I'll often ctrl-N to open a new window and then type my query. Even if it takes a little bit of time to show the window my query will be right there in the search bar. With Firefox, those keystrokes are lost. I hope this fixes that.
ajnin··on Bye CUPS: Printing with Netcat
It doesn't, it just plays the data as PCM and with whatever sample format and sample rate it is currently configured for.
ajnin··on Japan's cherry blossom: as indisputable as climate change evidence gets
I'm curious: current trends predict that the temperature increase from the pre-industrial age to 2100 might be as much as it was from the last ice age (look it up, it was a very different time). And this will happen roughly within 200 years, not 20 000. What makes you think this will be small and easy to adapt to ?
ajnin··on Japan's cherry blossom: as indisputable as climate change evidence gets
> How do you know we need to care?

The temperature difference between now and the last ice age, at a time there was 3km of ice over much of the northern hemisphere, and sea level was 120 below current average, was 5°C. Current predictions for the temperature increase in 2100 range from 2°C, if we make a huge effort to quickly and drastically reduce CO2 emissions, to 5°C if we keep going as we are. The reality will be somewhere between, I'll let you decide what you think is likely. We don't know exactly what the consequences are gonna be, but we know they're going to be dramatic, and if you think they won't affect you personally, you're probably wrong.

ajnin··on Windows Defender blocks qBittorrent
Defender is deleting the app as a "potentially" unwanted application, a better analogy would be if firefighters went to every home and confiscated every "potential" source of ignition.
ajnin··on California sues Activision Blizzard over unequal pay, sexual harassment
I guess the reason you're being downvoted is that you're complaining about comments which have already been downvoted, which brings nothing to the discussion, and also you're drawing conclusions about a community that does not exist.
← PreviousPage 7 of 24Next →