HNHacker News
TopNewBestAskShowJobs

pdmccormick

389 karma · joined March 5, 2011

Hi! My name is Peter, and I'm a software developer primarily focused on embedded Linux, systems programming and security.

GitHub: https://github.com/pdmccormick

[ my public key: https://keybase.io/pdmccormick; my proof: https://keybase.io/pdmccormick/sigs/OrKXSd2zp2Th8eFGRrxu1hQKb9wH0tnQel0Yd089mU0 ]

submissionscomments
pdmccormick··on Examining Btrfs
His sentence will be served as of sometime in 2023.
pdmccormick··on ERs backed up with ivermectin overdosers while gunshot victims wait: Oklahoma DR
For the record, as of Sept 5 midnight EST, the following note is posted at https://nhssequoyah.com/ :

Message from the administration of Northeastern Health System - Sequoyah:

Although Dr. Jason McElyea is not an employee of NHS Sequoyah, he is affiliated with a medical staffing group that provides coverage for our emergency room.

With that said, Dr. McElyea has not worked at our Sallisaw location in over 2 months.

NHS Sequoyah has not treated any patients due to complications related to taking ivermectin. This includes not treating any patients for ivermectin overdose.

All patients who have visited our emergency room have received medical attention as appropriate. Our hospital has not had to turn away any patients seeking emergency care.

We want to reassure our community that our staff is working hard to provide quality healthcare to all patients. We appreciate the opportunity to clarify this issue and as always, we value our community’s support.

pdmccormick··on ERs backed up with ivermectin overdosers while gunshot victims wait: Oklahoma DR
In the interest of not overwhelming hospitals, wouldn't it be helpful if the media raised awareness on the difference between ivermectin dosages suitable for humans versus animals? Most of the reporting I've seen has sensationalized the "horse dewormer" angle.
pdmccormick··on Non Session Manager vs New Session Manager
Wouldn’t a compatibility symlink or shell script have been enough?
pdmccormick··on My approach to taking notes in meetings
What does “ldap” mean in this context?
pdmccormick··on Fedora and Fallback DNS Servers
I think that a lot of the reflexive systemd bashing is unwarranted. The Linux kernel provides many not-necessarily-portable-or-directly-comparable features (cgroups & namespaces come to mind, but also things like netlink & sysfs) and I am glad that the creators of systemd chose to explore the design space of an unabashedly Linux-specific "system" layer that straddles the kernel and userland.

That being said, I am somewhat disappointed that the general exploration of that solution space, and the creative use of those kernel features, seems to have ended as systemd matured, expanded its' scope and saw widespread adoption. I also think that the extent of systemd's authoritative dominance over the ecosystem has had a negative impact on user freedom in the broader world of open source. The fact that Snap has actively made a policy choice to _not_ give users the ability to completely disable automatic updates[0] and instead force at least weekly updates is I believe an example of the kind of "we know better than you" mentality that systemd has helped to foster and normalize.

I'd encourage everyone to sometime try booting a Linux machine with boot argument `init=/bin/sh` and see what it actually takes to get a system up to a running state with working networking.

[0] https://forum.snapcraft.io/t/disabling-automatic-refresh-for...

pdmccormick··on Why updating DNS is slow
I was curious as to how a certificate could be issued to an IP address and not a domain (I didn't know that such a thing was possible), and learned this:

    X509v3 Subject Alternative Name: 
        DNS:cloudflare-dns.com, DNS:*.cloudflare-dns.com, DNS:one.one.one.one, IP Address:1.1.1.1, IP Address:1.0.0.1, IP Address:162.159.36.1, IP Address:162.159.46.1, IP Address:2606:4700:4700:0:0:0:0:1111, IP Address:2606:4700:4700:0:0:0:0:1001, IP Address:2606:4700:4700:0:0:0:0:64, IP Address:2606:4700:4700:0:0:0:0:6400
You can inspect the certificate yourself with:

    openssl s_client -showcerts -connect 1.1.1.1:443 < /dev/null | openssl x509 -text -noout
Too bad Let's Encrypt will not issue certificates for IP's at this time.
pdmccormick··on Why Create a New Unix Shell?
You might be interested in Xonsh: https://xon.sh/
pdmccormick··on What's in a Linux Executable?
The Linux kernel actually does allow executing non-ELF executables, via the binfmt_misc (https://en.wikipedia.org/wiki/Binfmt_misc) mechanism.

My favourite use for this feature is via `qemu-user-static`, which allows you to transparently "run" executables compiled for other architectures thanks to QEMU emulation. Very handy for embedded systems development.

pdmccormick··on How long since Google said a Google Drive Linux client is coming?
Thanks for the heads up, I see this confirmed at https://help.dropbox.com/installs-integrations/desktop/syste... under the list of supported file systems on Linux (which is currently ext4, zfs and xfs on 64 bit systems, eCryptFS backed by ext4, and btrfs).
pdmccormick··on Google resumes its attack on the URL bar, hides full addresses on Chrome 86
There were a large number of layoffs at Mozilla, see https://news.ycombinator.com/item?id=24120336 .
pdmccormick··on Please stop recommending Gitflow
I’d encourage anyone using Git take a closer look into “git rebase -i” (interactive rebasing) combined with “git add -i” (interactive staging).

While working, I’m freely taking advantage of Git’s capabilities on a personal level, producing many sometimes messy WIP (work in progress) commits, trying things on short lived branches, reverting changes, and so forth, but afterwards I am able to copy edit the results to produce a sequence of finalized commits that form a coherent narrative that reads like how I would describe my work to a colleague or manager.

To me, interactive rebasing has been the difference between “my team uses Git” and “I first and foremost use Git for myself, and then also use it to share the results with my team”.

pdmccormick··on Colorado Town Offers 1 Gbps for $60 After Years of Battling Comcast
Part of the reason for asymmetric cable modem (DOCSIS) speeds is due to the coaxial medium being essentially half duplex. Operators split the RF spectrum into a lower frequency range for upstream, and a higher frequency range for downstream. Increasing the width of the upstream range would eat into the available downstream bandwidth, and also has other implications in terms of power, noise and overall network design.

There is a full duplex version of DOCSIS, but its adoption faces some challenges due to how operators have to re-architect their physical networks to support it.

There is also currently a push to extend the downstream spectrum up to higher frequencies, enabling both more downstream bandwidth and also the ability to move the upstream split higher, therefore increasing upstream bandwidth.

(Disclaimer: I work with a client who develops products in this space.)

pdmccormick··on SFTPGo: A Full Featured SFTP Server in Go
I’ve been looking for something precisely like Bolt, thank you for the link!
pdmccormick··on How YouTube converted people to flat Earth
On the contrary, having an initial spark of curiousity (or even doubt) about 2 + 2 = 5 is a great way of engaging with critical reasoning, mature mathematical thinking, proofs, etc. Given the number of times human civilisation lurked forward because someone revisited earlier assumptions, training more people to think critically and be courageous about their conclusions would, I believe, be a net benefit to us all.

Yes, 2 + 2 does not equal 5, but we need more people who can explain and think about _why_, and not simply repeat "just because". If someone cannot debunk a misconception as rudimentary as that, how can we expect their arguments against a flat earth theory to be sound and persuasive?

pdmccormick··on Why I Don't Like Golang (2016)
I happen to love the C language, and my brain is very much tuned to how it works and the world view that it embodies. Go feels to me like veteran C language experts made a thoughtful evolutionary step forward. It's certainly not on the cutting edge of programming language theory, but it has solidly moved the baseline ahead. It's a highly opinionated language, but if you approach those opinions with an open mind, you'll find it has a sense of internal coherence that is both tasteful and pragmatic.

Fast compilation speed, easy integration with C, and the "one large static binary" are probably my favourite features, although I do wish those binary sizes weren't quite so large...

pdmccormick··on What the Tortoise Said to Achilles
"Come a little bit closer and I'll tell you. Come just a little bit closer still and I'll tell you..."
pdmccormick··on Can we start calling JavaScript EcmaScript?
They are ECMA languages, but would any of them be known as EcmaScript?
pdmccormick··on IPv6 excuse bingo
I quite like the clarity of using link-local addresses within IPv6 addressing, along with scoped multicast. Replacing the functional of ARP from within the protocol (as opposed to ARP itself, which operates as a sibling to IPv4 with its own Ethertype) is quite elegant. DHCPv6 operating without the hack of using destination 255.255.255.255 and source 0.0.0.0 addresses, and thus without requiring special OS level privileges, also feels like a nice simplification.
pdmccormick··on Write Fast Apps Using Async Python 3.6 and Redis
Your request has stayed on my mind over the past few days, so I put this together for you: https://github.com/pdmccormick/sample-socketio-chat-app

Enjoy!

pdmccormick··on Who Invests in Hardware Startups?
Kilpatrick Audio (http://www.kilpatrickaudio.com/) did a Kickstarter for their Phenol patchable analog synthesizer, which I believe is now generally available for order.
pdmccormick··on Resources to learn Go
Also famous for the original Perl implementation of memcached ... and LiveJournal. And Perlbal.
pdmccormick··on The new X-Men movie explained in Git
(SPOILER ALERT)

To me, the beauty of the story is that, while we as viewers do not know what has transpired in the universe between 1973 and present, neither does Wolverine. Further, since he stills ends up at the School with his friends alive in the present day, we know that a lot of character development has necessarily happened, because we saw analogous stories in the earlier movies from the now lost timeline. So while the events of the previous movies are now no longer canonical history, they are as real to Logan as they were to us, and their emotional impact still affected Logan's life in a very real way. Meanwhile, going forward the script writers are no longer slaves to continuity, which, after the third film blew up everything, greatly restricted what they could do with the main cast of characters in the present day setting.

In my opinion, so many "time reset" plots (think Star Trek Voyager's Year of Hell) leave the viewer empty because they truly have no lasting consequence on the character's we love. SF Debris (http://blip.tv/sf-debris-opinionated-reviews/voy-year-of-hel...) made the incredible suggestion that, in that Star Trek story, imagine what if, due to some kind of quantum chronometric mumbo jumbo, one of the crew members (say, Harry Kim!) had survived the big reset with their memories and experiences of the year intact. But instead, apart from some shallow insights into the characters in a "what if" scenario, it was as though it never happened.

pdmccormick··on Why I should have written ZeroMQ in C, not C++ (2012)
That's awesome, thanks for the tip!
pdmccormick··on Resistor hack turns a Nvidia GTX690 into a Quadro K5000 or Tesla K10
I once saw a networking IC that had a key strap-in pin multiplexed with an indicator LED, so if you wanted to change the brightness of the LED by varying the resistor value, watch out because you'll change the device behaviour! Good times...
pdmccormick··on The Criminal Charges Against Aaron Swartz (Part 1: The Law)
I agree that in this situation the laws on the books should also be under review. But prosecutors have some discretion as to whom and what and to what extent they'll pursue a case. Regardless of where they might be on a spectrum from noble, high minded civil servant to the most egregious political opportunist, a consequence to the prosecutorial action this case (public opinion, increased scrutiny, career consequence severe or light, etc.) could help establish an incentive for others in the future to act differently. Not legally binding, not compulsory, but just a element of "Let's not make that mistake again."
pdmccormick··on The Choices Are Fake and the Truth Is All Made Up
I like the thrown in caveat, "withstood the test of time." Could not interested constituencies be party to the filter that shores up one historical voice or opinion over another?
pdmccormick··on The Mathematical Hacker
I've taken some mathematics and logic courses at a university level, and the thing I took from those experiences and apply everyday is the reasoning and proof structuring. Struggling through and coming to something of an understanding of the concepts of analysis (calculus) and algebra were a pivotal point in my intellectual development. As somebody for whom math has never come easily (and still doesn't), but for whom the beauty and wonder of it all was still enchanting, I'd heartily encourage any and everyone to learn some higher maths in detail. The specific results may not always be applicable day to day, but the way of thinking will stay with you. Good luck!!
pdmccormick··on Valve confirms work on 'Source 2' engine
Give even a cursory review of code for those id Software titles to see that they were not rewrites from scratch (http://fabiensanglard.net/ gives a wonderful overview of each.) Even without any revision history from one to the next, the structure of each code base shows a continuity and evolution of thought and design that disproves the theory. As I understand it, towards the end of the development cycle for each game, once the core tech was in solid and in place, John Carmack would branch off to aggressively pursue research and development on next gen graphics and tech, leading to a lot of new and rewritten and expanded code, yes, but still not starting from scratch each time.

Historically speaking, his act of open sourcing those codebases and the chronicle of cutting edge graphics/gaming development that they represent is a significant record of and insight into one of our generations leading minds. His work ethic and dedication is pretty phenomenal, he is a big personal inspiration.

pdmccormick··on The Joy of Bit-Banging
Recently I had to bitbang I2C through a voltage level translating buffer that had a direction setting pin that needed to be manipulated when sampling SDA on input. The uC's hardware I2C block obviously couldn't handle that extra signaling oddity. Not the fastest approach but then this I2C application wasn't that high speed to begin with. Good times indeed!
← PreviousPage 3 of 4Next →