HNHacker News
TopNewBestAskShowJobs

phs2501

1,017 karma · joined July 2, 2014

submissionscomments
phs2501··on The lat/lon floating point delusion
Using GPS/WGS84 to locate is fine, you just need to convert to a plate-local datum before long-term storage of those coordinates.
phs2501··on Space Engine
When I tried it VR support was pretty rough control-wise. Some UI stuff looked like it was trying to work but was borked, and also it looked like custom control binding was necessary to get it more useful.

It looked really awesome though!

phs2501··on Deadly Cargo Still Rides the Rails
In nearly every case the city is there only because the railroad was there first. Obviously reasonable and pertinent safety measures should be taken ("Safety First", etc) but I think it's pretty unreasonable to ask the railroads to move their 100+-year-old routes because people built a city around it.
phs2501··on Deadly Cargo Still Rides the Rails
Air pressure is required for the brakes to be applied, insofar as if you bleed all the air off the cars their brakes will release. However, air is stored in reservoirs on the cars, and once charged when the air pressure in the brake pipe that goes down the train is reduced below the reservoir pressure the brakes apply (by using air stored in the local reservoirs). As such, the brake pipe is simultaneously an air charging system and a signaling system. It's also fail-safe for normal operation since a train that breaks in two will come to a stop.

Passively-applied brakes would break a ton of standard railroad operations which depend on cars rolling free, such as in "hump" classification yards which use in-track retarders to control speed, and in other situations such as "kicking" cars into tied-down cuts.

phs2501··on The death watch for the X Window System has probably started
I don't run a desktop environment in X. I run xmonad and terminals. I don't want a desktop environment in wayland, but it seems like that's the only way to get reasonable functionality because it can't be added piecemeal, only monolithically via the compositor.
phs2501··on The world in which IPv6 was a good design (2017)
TUBA was TCP, UDP, and the Internet protocols on top of the OSI network stack (CLNP). It's about as from from IPv4 as you could imagine.

https://tools.ietf.org/html/rfc1347

phs2501··on Details about MIDI 2.0
Good luck finding any analog gear period that can saturate 24 bits and not have noise in the LSBs, it just doesn't exist. That's not the point of 24-bit audio, it's not needing to worry about clipping. That's why knocking it down to 16-bit for playback is practically speaking fine.
phs2501··on Details about MIDI 2.0
I'm still having a hard time believing that the drum computer only having a 16-bit representation of the velocity of the stick hitting the pad will matter in its goal to produce a velocity-scaled (probably 24-bit) sample on its output port.

There's lots of way more interesting information to be represented that'd be more valuable than just a raw 24-bit velocity - the angle and location of the hit, how much pressure (not velocity) was being applied, how the stick moved while it was in contact with the skin, the material of the stick, etc., if you truly want to capture the dynamics of drumming.

phs2501··on Details about MIDI 2.0
99% of digital recorded music only has 16 bit velocity for every sample. I think it'd be fine.
phs2501··on Details about MIDI 2.0
The MIDI pins on game ports were an add-on on sound cards to unused pins from the game port, though. The original game port spec doesn't have anything to do with MIDI or UARTs, and joysticks and the like did not use those extra pins.
phs2501··on Css-only-chat: A truly monstrous async web chat using no JS on the front end
> Some people, when confronted with a problem, think "I know, I'll use AWS Lambda." Now they have thousands of concurrent problems.

You made my day.

phs2501··on Git9: Git Reimagined for the Plan 9 OS
I don't doubt that not having the staging area would make it better for new users, as it is certainly conceptually simpler to just commit everything. And for those who's revision control model is always linear commits of what's in the working copy, it really is just added work and complexity. But it enables other workflows (that I personally happen to use a lot) that are easy with staging and /very/ inconvenient without.

So yeah, feel free to leave it out of your implementation; it doesn't seem like something that'd fit into the plan9 mindset anyway. But it is removing a very useful tool to some people.

phs2501··on Git9: Git Reimagined for the Plan 9 OS
Yes, all the time. Stage individual hunks or individual lines in `git gui` to clean up history or avoid commiting debugging hash.
phs2501··on Git9: Git Reimagined for the Plan 9 OS
Opinions obviously vary. The staging area is one of the most useful things about Git for me, and I use it just about every day.
phs2501··on Oculus Rift S
This really makes me happy I went for a Vive. I stuck the lighthouses up near the ceiling, calibrated once, and it still works perfectly eight months later. And no USB cables.

Hopefully they perfect inside-out tracking eventually but in the meantime the lighthouse system just works for me.

phs2501··on Start with a Website, Not a Mobile App
As long as it remembers no locally and just lets me use the web app forever after it's a godsend.
phs2501··on Io_submit and Linux AIO – An epoll alternative
> Thinking about it, readiness based reading from disk only works if you tell the system up front where to read and how much [...], which is new API that you have to use. Reading must be done when the disk is ready and can't wait for you, so it needs another buffer and memcpy.

> So readiness-based disk I/O could work with reasonably user-friendly new API for reading and not much worse performance loss than readiness-based network I/O.

Off the cuff that new API sounds exactly like a completion-signaled read. You tell the system up from where to read and how much (the async read call), it reads when the disk is ready and buffers for you (your passed buffer and/or the cache if you're clever), and then it signals "readiness" which is the same as completion in this case.

Do you see this as distinct in any other way?

phs2501··on Io_submit and Linux AIO – An epoll alternative
The problem with readiness-based IO for disk is that without starting the request it doesn't know where it needs to read on the disk to fetch, so it can't possibly tell you if the data's ready. If you were to limit file IO to streaming rather than random-access it could potentially work, but that's not the POSIX interface. Since pipes and sockets are streams they don't have this issue.

I'm not defending the suckiness of the AIO situation on Linux, but I understand why it is to some extent.

phs2501··on Start with a Website, Not a Mobile App
That's more reasonable. I wonder if these work via Firefox? Maybe that's why I've never seen them.
phs2501··on Start with a Website, Not a Mobile App
> Indeed, right now we're seeing a big uptick in Instant Apps on Android -- go to a webpage and it actually loads a native app -- and I fully expect the same to appear on iOS.

I'd never heard of this but I can guarantee I will immediately quit and never install an app that gets forced upon me via this method. This is like the terrible "Try our app!" web popups, only 10x worse.

I realize like most people on HN I'm hardly the norm when it comes to mobile users, but UGH.

phs2501··on Choose Firefox Now, or Later You Won't Get a Choice (2014)
I think that was covered in "- Yes, Firefox removed the feature that was essential to your workflow, even though most users don't care."
phs2501··on Missing Emirati princess 'planned escape for seven years'
https://en.wikipedia.org/wiki/Fritzl_case

Not everyone is good.

phs2501··on IBM z14 Microprocessor and System Control Design
Pretty sure it's more that IFLs are not allowed to run z/OS workloads. I think you can run Linux on CPs just fine, it's just more expensive.
phs2501··on Redefining the Kilogram
Same way as you machine anything. Start with more material than you need and remove until it is the correct dimensions. In this case, start slightly heavier and polish until it is the correct weight.
phs2501··on Stop cherry-picking, start merging, Part 1: The merge conflict
Take a look at `--rebase-merges` if you haven't. It's new and kind of amazing. Works much better than `--preserve-merges` in my experience.
phs2501··on Javascript: call functions without using parentheses
https://github.com/bdowning/sql-assassin is something I wrote for myself that is very similar to SQORN and uses templates for the same reason.

I've also used them for DSLs, i.e. the following grammar compiler (where the actions are literal functions defined in the grammar string as follows), sadly never released:

https://gist.github.com/bdowning/4dca9f006f230bc7e8c18a2b9c9...

phs2501··on Um – Create your own man pages so you can remember how to do stuff
Use zsh.

https://askubuntu.com/questions/23630/how-do-you-share-histo...

It is possible to get similar effects by kludging around with bash, but it's a built-in feature in zsh.

phs2501··on WireGuard is submitted for Linux kernel inclusion
> Are the other TCP ports, as well as UDP blocked by a force of nature? :)

Yes; the force in question is usually spelled out as "auditors." :(

phs2501··on How JPEG actually works (2006)
I believe digital cinema packages use invidually-compressed jpeg2000 frames, so thats a fairly widespread usage.
phs2501··on Inside the Windows Console
With stock splits 1 share in 1989 would be 72 shares now. So $7,516.80.
← PreviousPage 3 of 7Next →