HN user

MattConfluence

522 karma
Posts1
Comments57
View on HN

There is a theory which states that if ever anyone discovers exactly what U+237C is for and why it is here, it will instantly disappear and be replaced by something even more bizarre and inexplicable. There is another theory which states that this has already happened.

-- Paraphrased from The Restaurant at the End of the Universe by Douglas Adams

I was recently at the kiosk at an Odeon cinema in Norway and I noticed that their popcorn buckets were helpfully labeled S, M, and L. Stor, Middels, Liten. No X-sizes in that case though. At least with popcorn you can plainly see that S is much bigger than L is when you pick it up yourself.

It's a fun read in a fan-fiction sense, but when you look at the out-of-universe story of the events of Tolkien's life and his writing process it becomes clear that Tom is not meant to be any kind of evil.

Tolkien wrote a silly whimsical poem about one of his children's toys that they had named Tom Bombadil. In this tale he lives in a dangerous environment, but he is able to overcome the dangers and get his happy ending.

When Tolkien later was writing LotR, he drew upon his former work and put in the silly whimsical Tom as an early encounter for the Hobbits just as they are leaving the Shire and starting their adventure. This story arc delivers some early exposition about the world in his dialogue, it shows that the Hobbits are hopelessly unprepared to stand up against any foe such as Old Man Willow or the Barrow-Wight and need rescue (this way they can have character growth and become Heroes by the time they return to the Shire) and it gets the Hobbits armed for their quest towards Rivendell (and most importantly to put the right kind of blade into Pippin's hands for later).

In a more thematic sense he is just part of nature, not evil but also not actively looking to do good, just existing. He is master of his domain in the same sense a big moose might be the "master" of his local forest, he's the biggest around and isn't threatened by anything else, but he has no human desire for expansion and doesn't push back when civilization comes around to turn the land nearby into farmland either, just keeps to himself. He doesn't try to tame the angry trees because it's just protecting it's territory, as is natural, nor does he try to "exorcise" the barrows because nature doesn't actively go about trying to undo the evils created by man.

That's a neat observation, the cities do have a similar history.

The medieval town called Oslo burned down in 1624, and a new city was founded on the other side of the bay. It was named Christiania after the monarch Christian. It kept that name until 1925 when they changed it back to the old historical name Oslo.

Some decades later, the Russian monarch Peter would also found a new city, which happened to have his name in it. So these two cities were being constructed at around the same time and taking design and architectural inspirations from the same places I would imagine.

That street in particular has been closed for all traffic except buses and trams (and necessary service cars I guess, like the parked van on street view). On [1] you can see Stortingsgata labeled in blue as "kolletivgate" (collective street). As the graphic shows most streets at the very core of the city have been closed to general traffic, the bluish streets are mostly only public transportation and the pinkish streets are mostly pedestrian and bike lanes. Outside the core you see more cars on the roads.

[1] https://gfx.nrk.no/NHMVHfHy9jrQCxlLI_D2tAo9jnkLqfcYXajOAEHna...

One time I was using my laptop to remote desktop into a computer I was hundreds of km away from physically, I discovered that if I hit the power key on the laptop (yes, the laptop had a key on the keyboard for power, not a separate power button) while having the remote session window focused, it sent the signal over the wire and put the remote host to sleep instead. Whoops.

After that I looked up how to enable wake-on-lan and open up a port to be able to do that remotely.

I rediscovered the joy of working with databases while working on an Elixir application with a Postgres/Timescale DB. Elixir's Ecto library (doesn't really fit the definition of an ORM) lets me compose queries in a functional syntax that then get compiled to SQL before execution. This both enables me to be more productive and results in more readable code that can be reasoned about and be tested easily. Sometimes I still have to dive into "raw" SQL to write e.g. a procedure or a view definition (like Timescale's continuous aggregates), and I definitely miss the pipeline operator when those expressions get complex. SQL is a powerful tool, but it gets clunky and has strange footguns. A feature like what this post describes is definitely a step in the right direction for Postgres. Looking forward to try it out.

This looks very interesting! I only skimmed the abstract now, but I will look more closely tomorrow. Back in 2016-17 I did a master's thesis on a combination of (much simpler) cellular automata and neuroevolution, and had some thoughts about how other neural "paradigms" like backpropagated deep nets and indeed, adversarial training could be used with CAs. It's great to see that it's an ongoing topic of research.

Something that makes this extra interesting is that two of the major telcos of Myanmar are subsidiaries of companies from other countries: Telenor from Norway and Ooredoo from Qatar. Both of which are majority owned by their respective governments. According to [1] they account for 28 of 54 million subscriptions.

It will be interesting to watch how these two companies continue to comply with such orders. These events are making the news in Norway with a Telenor angle. If things keep escalating and Telenor is shown to be in any way complicit in any human rights abuses, it will be a scandal in Norway, and the Telenor leadership will have to answer to the government. Norway has cultivated an image as a human rights champion of sorts on the international stage, and is expected to take this sort of development very seriously. There is precedent in the VimpelCom case [2] where the financial crime police, parliament and the ministry of commerce got involved. Senior leadership had to testify before parliament committees, the police made corruption charges, and the chairman of the board resigned after the minister of commerce indicated she did not have confidence in him. So Telenor Myanmar and it's Norwegian leadership is now under pressure from the government of Myanmar to comply, while also being answerable to the government of Norway for the possible consequences of doing so.

Meanwhile, Qatar is under international pressure because of human rights issues on their own turf, and the international eye turned on them because of the upcoming FIFA World Cup. In fact, Norway's national team has been calling them out recently [3]. They might also want to tread very carefully around this issue.

[1] https://www.charltonsmyanmar.com/myanmar-economy/telecommuni...

[2] https://www.thelocal.no/20151105/former-vimpelcom-ceo-seized...

[3] https://twitter.com/FRfotballBen/status/1374809071497383953

This is a difficult problem indeed, but thankfully it is just as difficult for the malicious actors as it is for the "good guys". Since various bad guys have presumably been scanning public repos for years already, Github and PyPa adding this feature is leveling the playing field, even if it is not a 100% accurate search algorithm.

SQL doesn't compose all that well.

On that topic, I really enjoy working in Elixir because Ecto [1] lets you write "SQL" with Elixir's composable functional syntax. It sits somewhere between "the language is compiled to SQL" and ORM. The Ruby-esque syntax took some getting used to, but once I was past that hurdle my productivity skyrocketed. It's not 100% feature complete compatibility with all the different SQL dialects, but most of what you'll need is there.

[1] https://github.com/elixir-ecto/ecto

How does someone moving schlep their furniture around the city center?

It's still possible to get just about anywhere with a car, it's just made less convenient. The roads aren't physically blocked, ambulances and such have to be able to get everywhere. Moving day is a pretty rare event for any individual, so you just have to accept that you'll be a bit inconvenienced that day. If you don't own a car yourself you rent a moving van for the day. Street parking downtown is expensive, but it's just for that day. But since it's expensive there's hopefully less competition for the spaces. Then you have to navigate the streets to your new place with your car. It might be slow and you may have to take some detours because some streets are only for pedestrians, bikes and public transportation. But it's just for that day, the other days you are the pedestrian/biker/bus rider that can get around without worrying about cars on that street.

"March 14th 2020" is perfectly fine both when spoken and written. It's not easy to sort lexicographic by programs, but that's not the most important aspect.

The problem is that the existence of both MM/DD/YY and DD/MM/YY makes dates less than the 13th of the month ambiguous. People do seem to get hung up on not going from smallest to largest unit (or the other way around), but the ambiguity is the real problem in my opinion. And of course it becomes a tribal thing, "the other guys are wrong about their format, we should keep ours and drop theirs". The best thing would be to just drop MM/DD/YY and DD/MM/YY in favor of _any_ format that is universally understood as unambiguous.

Lately, Elixir has dethroned Python as the language that I get the most joy from using. Pattern matching in one of the big reasons. Great to see that Python core contributors (including Guido!) wants to see this feature in Python as well! Hopefully it will be well integrated and not feel like a tacked on feature.

If you're curious about why this is so useful, and reading the (quite dry) PEP isn't your thing, I would heartily recommend playing with Elixir for a few hours. Pattern matching is a core feature of the language, you won't be able to avoid using it. The language is more Ruby-like than Python-like, but Python programmers should still have an easy time grokking it. When I was getting started I used Exercism [1] to have some simple tasks to solve.

[1] https://exercism.io/tracks/elixir

We removed any page that contained any word on the “List of Dirty, Naughty, Obscene or Otherwise Bad Words”. [https://github.com/LDNOOBW/List-of-Dirty-Naughty-Obscene-and...]

Looking at that list, I wonder what the unintended consequences of a decision like this is. If you want to create something related to sentiment analysis, that swear words you discarded is a useful signal, not noise right? If you wanted to use the dataset somehow for your tour guide business in Austria, how does it handle the the village called Fucking? Does T5 understand the British colloquialism for cigarettes? Can ornithologists talk to it about penguins and eagles, but not about yellow-bellied tits and blue-footed boobies?

Yes, but if you are logging the IP for spam prevention, security tracking, etc, then you are in the clear per Article 6, section 1, point f [1]. However, you can't also use the IP for fingerprinting, ad targeting, etc, without acquiring informed consent, per section 1, point a.

You can put the IP in your security logs because that is necessary to secure the service. Just have a routine to scrub the logs once they are too old to be useful anymore.

You can't put the IP in your shadow profile database and sell it to shady marketing companies, unless the user has explicitly agreed to that.

The question isn't only whether something is personal information or not, it is also a question of what you intend to do with the data.

[1] https://gdpr-info.eu/art-6-gdpr/

A bit off topic, but I find it amusing that the two top posts on the HN front page right now are "Open Vim" and "How to Exit Vim".

That's not how I read it.

Some others, with job titles similar to him, speak of "giving 110%" and how their employees are so dedicated to the company, they gladly take on overtime and crunch and whatnot. This seems refreshingly honest to me in comparison.

Using his math, there's 35 creative hours per person per week; assuming a 5-day work week, he's _paying_ for 20 of those and leaving 15 for personal growth. Sure, some might prefer a different ratio, but at least he's acknowledging that there needs to be a balance.

The linked post is titled "Hacking GitHub with Unicode's dotless 'i'.", but this submission is in title case "Hacking GitHub's Auth with Unicode's Turkish Dotless 'I'". I think this is a bad title change, because an uppercase I is supposed to be dotless, whereas the lowercase i used by the author's title is not.

The Dune movie isn't due until December 2020, but I figured I'd get started with Dune the book, which has been sitting on my bookshelf for a while. Maybe if I enjoy it I will get my hands on the rest of the Dune series.

An incredibly useful tool. I started using it in university for coursework, I used it to create figures for my master's thesis, and now I use it in my industry job. I would give it the highest statement of praise you can give any software: it just works.

it's also understandable if a user wouldn't want to be tracked by 3rd parties, at all.

For what it's worth, the author claims that Simple Analytics respects the Do Not Track (DNT) browser setting, so that user would be able to have it his way without needing to install EasyList. But of course that is something that requires a degree of trust, and DNT seems to be a failure for the most part, because of all the other parties that do not respect it.