HNHacker News
TopNewBestAskShowJobs

plq

1,366 karma · joined April 2, 2010

github.com/plq ext-hn@burakarslan.com
submissionscomments
plq··on Pronunciations for hexadecimal numbers (1968)
> Note that 'soixante dix' is 6A, not 70.

"Soixante-dix" would be 70 no matter how you look at it, and 0x6A is obviously "cent six".

That's why you need a new suffix as well as new names for exponentials instead of trying to retrofit existing number-naming convention. (Same thing is true for English as well)

So let this new hexadecimal suffix would be -anze, 16 ^ 3 is hexmille, 16 ^ 2 is hexcents,

0xB78D = 46989 would be "onze hexmille sept hexcents huitanze treize." or "quarante six mille neuf cents quatre-vingt neuf"

plq··on Subsurface – An open source scuba dive logging platform
The dive computer support lives in libdivecomputer
plq··on On-disk format robustness requirements for new filesystems
SquashFS also supports append-only modifications in-place.
plq··on Turning a MacBook into a Touchscreen with $1 of Hardware (2018)
Not to mention the constant image processing going on in the background. I wonder how it'd affect battery life / fan noise.
plq··on “I would like to maintain the floppy driver”
IIRC 8" drives held only 1kb (yes, only 1024 bytes!) so I doubt they'd be of much use, even in the earliest days of Linux.
plq··on How Stack Overflow upgraded from Windows Server 2012
I will be honest and just say this: As a Linux guy who has negligible familiarity with the Windows Server technology, this post doesn't make much sense to me.

What is the Linux equivalent of this operation? apt-get dist-upgrade? Now that Windows 10 onward is rolling release (is it?) is this the last time SE staff is going to have to go through this?

This caught my attention:

> Putting the 2019 server into the existing 2012 cluster – as expected, this fails due to the operating systems being different.

How can a website be this tightly coupled with the operating system it's running on? Shouldn't Microsoft be blamed that their operating systems are not backwards-compatible? To my knowledge, Microsoft goes to extreme lengths to assure backwards-compatibility of the userland apps. What went wrong here?

plq··on Constraints and Concepts
Here's Bjarne Stroustrup's 28-page submission to the committee advocating this: http://www.stroustrup.com/good_concepts.pdf

Excerpt:

> My aim is to make

> • simple generic code as simple as non-generic code

> • more advanced generic code as easy to use and not that much more difficult to write.

> Concepts by themselves do not address the code organization difference; we still need to put templates into headers. However, that is addressed by modules [Rei16]. In a module, a template is represented as a typed abstract graph and to check a call of a template function using concepts only its interface (declaration) as provide by the module is needed.

plq··on OpenSSH taking minutes to become available, booting takes half an hour (2018)
I'm so happy I've stayed with Gentoo and never had to bother with this systemd thing that everyone is talking about.
plq··on The helicopter team that films the Tour de France
The lightest video-capable satellite terminal that I, a mere civilian, know of weighs around 3kg. Even as a satellite equipment, it's relatively expensive to buy and operate. Its power requirements are also non-trivial, both because of the need for highly compressed video and the high-power radio transmission.

I think you can do the math from there.

plq··on The helicopter team that films the Tour de France
$DAYJOB is about installing satellite equipment of all sorts.

It's very challenging to establish high-bandwidth satellite links from a helicopter due to the rotor blades. I'm guessing VHF is used to avoid line-of-sight transmission at an angle that can avoid the blades.

It's however quite possible to establish satellite links from fixed-wing aircraft. The speed is a direct function of available satellite bandwidth (ie. money).

BUT, high throughput satellite systems (HTS), are a relatively new marvel of technology and are very costly to retrofit on airplanes because no airplane maker will want to allow a new hole on the aircraft's body.

So I'm assuming the fixed-wing aircraft lacks the required satellite equipment (as well as broadcast-management equipment typically found in live-action-reporting trucks) hence the beaming back to trucks.

plq··on Catching use-after-move C++ bugs with Clang's consumed annotations
I don't get conan. Portage can already create a linux root in your homedir (see the prefix project) and has a huge package repo. What am I missing?
plq··on Ethiopian Airlines Boeing 737 pilots 'could not stop nosedive'
Maybe you're right, but were they trained to know about this?
plq··on English, Swedish, German and Finnish Decline “Dog” (2013)
The correct verb is "declinate". The title is wrong. Declination (not declension) is like conjugation bur for nouns.

Important note: I don't care about the fact that none of the English dictionaries agree with me in this respect :)

plq··on Finnish breaks natural language processors
The models / software created for one language mostly fit others. Eg. Two-level finite state morphology was invented for Finnish and was very successfully adopted to parse Turkish words.

So the opinions of Linguists aside, the languages that make up the ural-altaic family are not that far apart from each other.

plq··on Finnish breaks natural language processors
The stochastic strategy is to 1. enumerate every possible tag combination 2. assign a probability to each one 3. choose the parse with highest probability.

1. can be done either deterministically or stochastically.

2. requires you to have a language model trained with either human-tagged or semi-human-tagged corpus

3. was just the Viterbi algorithm last time I looked.

Implementing 1 and 2 are require broad domain knowledge in two very different domains (linguistics and machine learning respectively)

So while nowadays sentence segmentation can be considered a solved problem, it's far from trivial to implement one that can compete with the state of the art against real-world data.

There is also a nice body of deterministic (rule-based) literature that is practically ignored nowadays.

plq··on Finnish breaks natural language processors
> But a spell checker is just a tiny part of the NLP domain.

Sure, but the linked tweet claims that not even a working spellchecker exists for Finnish. I'm sure Joakim Nivre would think otherwise !

plq··on Finnish breaks natural language processors
These are common problems for languages with complex morphology. Finnish, Japanese, Turkish and Hungarian are closely related in this sense and share a lot of NLP research.

While implementing spell checkers for these languages need a bit more effort than just compiling a list of words, it's far from an unsolved problem. AFAIK Zemberek[1] is a Turkish spellchecker that implements two-level finite state morphology.

Also, a small terminology fix: Verbs are "conjugated" but names/objects are "declinated".

[1]: https://github.com/ahmetaa/zemberek-nlp

plq··on Universal Binaries Using WASM
WASM binaries needn't be exposed to the internet.

That said, the OS-sanctioned runtime could very well support a shared-object-like approach instead of one-binary-per-app but that would 1. complicate the runtime quite a lot 2. hinder startup times of wasm apps due to dependency solving.

plq··on Universal Binaries Using WASM
What about packaging & distribution? Unless I missed something, it's up to us to package & ship our app complete with assets.

I firmly believe that this project is incomplete without a standard like .war (Web ARchive, from the Java ecosystem).

Of course, you could just use what's out there eg. .app (macos) or .appimage (gnu/linux) but there has to be a well-defined and clearly endorsed way of distributing wasmer'd apps.

plq··on Universal Binaries Using WASM
This is one of the logical next steps towards mass WASM-adoption. Another was Cloudflare's Isolates [1].

There needs to be official OS support from vendors (MacOS, Windows and Linux distros) in order to avoid the stinking pile of non-shared shared library mess that is electron.

[1]: https://blog.cloudflare.com/cloud-computing-without-containe...

plq··on Python Developer Survey 2018 Results
JetBrains is so nervous that PyCharm ended up as the most popular Python IDE in a survery that they conducted themselves :)

No worries guys, As a happy CE user, I find it's not only a phenomenal contribution to the overall Python experience but also a huge gesture of goodwill from your part.

Kudos!

plq··on React as a UI Runtime
First, I do dabble in frontend dev but I'm more of a backend person. I never used React and briefly played with Polymer 2.

Shadow DOM and custom tags make it possible to closely mimic the way we used to do UI development back in the Delphi/VB6 era. I like how eg. css properties only apply to a given component.

Polymer seemed like the most lightweight possible way to implement this because it uses the browser facilities. I understand that React also has components and custom tags (JSX) but it doesn't use browser facilities but rather implements them itself, which just sounds like the wrong way of approaching the problem.

plq··on React as a UI Runtime
I always felt like Polymer's component model (with "use the platform" as a motto/basis for implementation) had a bigger overlap with the kinds of problems a UI toolkit was supposed to solve though the frontend community seems to like React's approach better so far.
plq··on Rendering of Rise of the Tomb Raider
If I read his stuff correctly, this may not be possible before a PC release of the RDR2. Fingers crossed! :)
plq··on Game dev: Linux users were only 0.1% of sales but 20% of crashes and tickets
Ignoring your personal attacks, you and I are on the same page.

I do agree that shipping your glibc is "the road to hell" and shipping with the glibc could be qualified as "shipping in the form of its own Linux distro", as amusing as that sounds :) But that's the price of freedom you pay if you want to draw your platform boundary at the kernel -- you need to ship the whole userland! Where's the surprise in that? That means you need to understand the interactions between different version of /usr/lib64/opengl/nvidia/lib/libGLX_nvidia.so.0 (that you need to ship) and nvidia.ko (that is nvidia's binary driver loaded by the kernel, that you do NOT ship)

That's what people mean when they say they "are targeting Linux", even when they don't really understand the kind of work that that statement entails :)

Linux is an OS kernel. I'd wager it's the most popular one by far, in terms of the number of platforms that uses it.

Saying that "Linux is fragmented" is the wrong way to look at the problem. One should rather realize that Linux is just and OS kernel that is used by countless platforms. It's up to the developer to draw platform boundaries and focus engineering effort on the chosen ones.

If you need to support GNU/Linux with glibc-2.25, then you need to set up your testing bench to accommodate that. If you need to have native look and feeling in ubuntu, kubuntu and lubuntu, you already have 3 platforms with at least 2 LTS versions that you need to test with.

Each platform has its own quirks. Linux distros are the ones with the least amount of quirks, but in exchange we get many many platforms, because it's so easy to create them.

I guess that's life :)

plq··on Game dev: Linux users were only 0.1% of sales but 20% of crashes and tickets
> Can you ship with your own version of GNOME different from the currently running one?

I'm confused. GNOME is a desktop environment. It implements a task bar, a control panel, a way to set your desktop wallpaper etc. Why would you ship GNOME?

Maybe you meant shipping a proprietary application that uses a GTK version that is different than the OS-provided GNOME uses?

If so, of course you can. GTK is a bunch of shared objects that generate system calls, X messages, etc. It has no reason to interfere with the OS-provided GTK as long as it's got everything it needs in your bundle.

plq··on Game dev: Linux users were only 0.1% of sales but 20% of crashes and tickets
> And distos aren't backwards compatible. ie when libcurl4 is released, they remove libcurl3. So you can't have one binary for Ubuntu 18.04 and 16.04.

If you don't want to depend on the libcurl provided by the OS, ship your own.

If you don't want to depend on the glibc provided by the OS, ship your own, with your own dynamic linker.

readelf -n <your binary> will tell you the oldest kernel that will run your stuff. Put that in the requirements document. Write a bash script that sets LD_LIBRARY_PATH correctly and make sure that's the main entry point to your application during deployment.

You're set.

plq··on VirtualBox 6.0 released
Why not use KVM via vagrant-libvirt? It's pretty easy to set up and works like a charm. See https://news.ycombinator.com/item?id=18727059
plq··on VirtualBox 6.0 released
Virtualbox is not your only option if you want to use Vagrant. Vagrant has decent plugins for qemu (vagrant-libvirt) and lxd (vagrant-lxd)

Make sure you get your KVM, Qemu and libvirt setup right and run:

    vagrant plugin install vagrant-libvirt
    vagrant init generic/ubuntu1804
    vagrant up --provider=libvirt
You can export VAGRANT_DEFAULT_PROVIDER=libvirt to avoid passing --provider=libvirt to vagrant all the time.

vagrant-lxd is less mature but just as useful, especially when you need to run stuff with erratic RSS graphs.

plq··on Windows Sandbox
Yeah, I assumed that "sandbox" implied some smarter isolation technique closer to eg Linux namespaces instead of just app-v in a new shiny packaging. Nothing new for the malware-analysis use-case.
← PreviousPage 6 of 13Next →