HNHacker News
TopNewBestAskShowJobs

evilsnoopi3

109 karma · joined August 22, 2016

submissionscomments
evilsnoopi3··on Regex Chess: A 2-ply minimax chess engine in 84,688 regular expressions
The technical write up is worth perusing but I played a game before reading and accidentally found a winning strategy immediately. I'm not sure if this is a result of the 2-ply nature of the engine or if the mentioned deficiencies account for this but the computer did not act to prevent checkmate in 1 (without any intervening check); the game I played was (in algebraic notation): 1. e4 e5 2. kf3 kf6 3. kxe5 kxe4 4. d4 kxf2 5. Kxf2 a5 6. Qf3 b5?? 7. Qxf7 1-0
evilsnoopi3··on GitHub Copilot is moving to usage-based billing
I had this problem and it turns out it was my oh-my-posh command prompt customization. VS Code injects certain control characters into the output stream for agents to observe events and the theming runs after those mechanics are hooked up so it can interfere. Updating to the latest oh-my-posh fixed it for me.

Here's the oh-my-posh GH issue[0] in case your problem is similar but not solvable with a simple package update.

[0]: https://github.com/JanDeDobbeleer/oh-my-posh/issues/7029

evilsnoopi3··on How to get 7th graders to smoke
Literally only one of the drugs you mentioned can kill you due to withdrawal. Hint: it's not LSD or tobacco.

Alcohol is an _extremely_ harmful drug.

evilsnoopi3··on A practical way to detect cargo-cult thinking
Exactly. What is important is knowing what to prioritize for the project at hand. If it’s useful it’s not a cargo cult. Of course the less experienced would ask “how do you know if it will be useful?” but truly the answer is you experiment.
evilsnoopi3··on A practical way to detect cargo-cult thinking
The problem of course is that so many things are experiential (rather than data driven) so the question “What would convince you otherwise?” could only be answered by “Having lived a different life.”

Take, for example, a software engineering opinion that I hold dearly: “Good commit titles and descriptions, with sufficient description of why a change was made and notes on any non-obvious implementation decisions, are valuable and necessary.” This arises from my experiences trying to debug code in repos filled with commits titles ‘wip’ and ‘address feedback’ and ‘changes’ which inexplicably touch 5k LoC. I simply despise trying to divine what some past developer intended without any clue as to why; it is an epistemological impossibility even when sometimes the past developer is me. More over I am convinced this is necessary because I also have the experience of doing all the work to understand some spaghetti—using old issue tickets and git blame to slowly build a mental model of the codebase—finding the bug, changing it, and having the whole system violently reject my fix because what appears to the naive observer to be a bug is, in fact, intended behavior the system depends on.

What would convince me otherwise that spending time on writing good commits is not worth the time and effort? Either an impossible-to-execute-without-confounding-variables longitudinal study that measures developer happiness over time in code bases that do/do not emphasize commit message quality. Or I could have different experiences that lead me to not care. Like if I never had to maintain legacy code or if everywhere I ever worked had issue trackers filled with explicit technical details and motivations then maybe I wouldn’t care; but that’s not my experience so I do care.

I don’t know how you hack your way past the reality that there is not one perfect way to write maintainable software and even if there was nobody actually has time for that. So you have to chose what to prioritize and some of those priorities may become your personal cargo cult.

evilsnoopi3··on Are Race-Based Firings Legal? Twilio's About to Find Out
> For example, the structure of EEOC Title VII inquisitions pressures companies to search extra hard to hire diverse candidates from a fixed size pipeline (the only way to make this work is to relax qualification requirements while pretending qualification requirements aren't relaxed, and maybe to fire any employees who fail to play along), but they can only go so far before they run up against the letter of the law which prohibits them from, say, openly firing people for their race.

This assumes worker pipelines are fixed which, practically, they aren't. You can increase flows to the pipeline by increasing outreach or incentivizing attainable qualifications. You can also seek trainees rather than day 1 contributors, which admittedly _is_ "relax[ing] qualification requirements" but has the trade-off of providing more purpose-fit employees when they do start contributing.

evilsnoopi3··on Using Mypy in Production
You can also use TypedDict if you would normally use a raw dictionary but want the type checking.
evilsnoopi3··on Not a single car was sold in Shanghai last month
The NY Times has been covering this lockdown for weeks now and I don’t think you get more mainstream than that. Here’s an article from Saturday for instance:

https://www.nytimes.com/2022/05/13/business/china-zero-covid...

evilsnoopi3··on Django: Reformatted code with Black
We use isort[0] for this. It even has a "black" compatible profile that line spits along black's defaults. Additionally we use autoflake[1] to remove unused import statements in place.

[0](https://github.com/PyCQA/isort)

[1](https://github.com/PyCQA/autoflake)

evilsnoopi3··on Microsoft Authenticator Chrome Extention is not from MS and is phishing
I believe Google requires you publish Chrome extensions with an @gmail address, in which case MS doesn’t really have a choice.
evilsnoopi3··on Larry Page's Comeback (2014)
This should have (2014) at the end of the title. Very interesting though especially with the hindsight of 7 more years...
evilsnoopi3··on AWS announces forks of Elasticsearch and Kibana
The fact that AWS doesn't link to the Elastic License is hilarious to me. The plain reading of the license is "APLv2 but AWS Can't Sell a Hosted Version" so of course AWS forks the last APL version and plows ahead.

Note, I'm not trying to side with either AWS or Elastic here and I fully recognize that both Elastic re-licensing and AWS forking are within each org's rights. I really just think it is funny how beside the point AWS's press release is here.

EDIT: an apostrophe

evilsnoopi3··on YouTube-dl's repository has been restored
There's a lot of "trust me" in this article that simply isn't backed up by the ACLU's own outline of it's free speech position: https://www.aclu.org/issues/free-speech

It is one thing for an individual in the organization to have a nuanced view of the issue and another thing entirely for the organization to have backed off a maximalist view of the right. I encourage you to read the ACLU's position (which interestingly includes "We’ve called on big social media companies to resist calls for censorship.").

evilsnoopi3··on DOS Subsystem for Linux
I have an English degree and can confidently say the issue is the implicit understood possessive in the correct parsing. As it stands, “for” dominates mentally because the phrase obviously needs a possessive to make sense and “for” denotes possession. If it were “Window’s Subsystem for Linux” or “DOS’s Subsystem for Linux”, explicating the proper possession, the parsing trouble would disappear.
evilsnoopi3··on Covid vaccine makers commit to not seek approval until complete Phase III trials
This is simply not the case except when talking about a totally untested vaccine. The whole point of phase III trials is to confirm "safety and efficacy" in a wide population. Moderna, for instance, aims to enroll 30k people in it's (currently ongoing) phase III trial. After that, it's just a matter of data analysis. The FDA would certainly not approve a vaccine that had comorbidity higher than the disease it is trying to treat.
evilsnoopi3··on Perl7 is a fork of values
I mean they already tried that with Raku (Perl6) and it didn't gain the adoption they wanted.
evilsnoopi3··on Nancy Pelosi Says House Will Pass Coronavirus Bill with Free Testing for All
> WE the people, in order to form a more perfect union, establish justice, insure domestic tranquility, provide for the common defense, promote the general welfare, and secure the blessings of liberty to ourselves and our posterity...

The Constitution itself states the role of the Federal government is to prevent mass turmoil and to help the general public. In fact, it lists both of those objectives before it mentions the securing freedoms and liberty; it is generally believed that the preamble is ordered in terms of the priority of its objectives. I understand that there is a very real argument that the Federal government should not be responsible for the well-being of every single citizen but a safety net in times of pandemic is, in my opinion, nowhere close to a Constitutional overreach based on how these objectives have been interpreted.

evilsnoopi3··on D-Link Home Routers Open to Remote Takeover Will Remain Unpatched
I do not own a DLink router but do own a consumer-grade Gateway from Netgear. Is there any mechanism I can use to check for published vulnerabilities against my hardware?
evilsnoopi3··on Attorney General will ask Zuckerberg to halt plans for end-to-end encryption
I don't think this often, but, in this case, Facebook is doing the right thing both ethically and practically.
evilsnoopi3··on Big ISPs aren’t happy about Google’s plans for encrypted DNS
Great. Now I've taken my laptop out of my house (where I'm using your router) to the coffee shop downstairs where they use an ISP provided gateway... And the ISP is spying on me again. Until DNS request is encrypted there are no solutions outside of a wholly self-managed network.
evilsnoopi3··on Twist – Mindful Team Communication
The org I work for has used [Flowdock](flowdock.com) for several years now and I have to say that threaded semi-real time communication is a huge boon. So, on the face of it I'm not against Twist but, as a user of a similar application, I have several questions:

1. Must all messages be thread topics or thread replies? 2. Are messages presented in the order they were sent/recieved or in some grouping based on thread? 3. Can messages be "re-threaded" so that replies i. become their own thread topic? ii. become a reply to a different thread?

From my own research, it seems the answers are:

1. yes, all messages are either thread topics or replies; 2. messages are only grouped by thread and can't be seen as a stream where real-time communication across threads can happen; 3. and, no, messages cannot be re-threaded.

Which, if true, I think makes it decidedly worse than Flowdock. Its true that Flowdock also does not support re-threading and for that I will eternally hate Rally/CA for never adding but in all other aspects where Flowdock attempts to be something fundamentally different than email, Twist attempts to be, like Slack before it, an email killer.

For Flowdock default communication in a channel is just a message and only reifies into a thread topic when it recieves a reply. Also, the default presentation of messages is "real-time" group chat with color coding to identify threads and a dedicated thread viewer to "focus" on a single discussion if needed. Essentially Flowdock is standard group chat with an admittedly useful organizational concept of threads.

Twist seems to strip out the "group chat" part, leaving only threads and at that point I kind of agree that its just sexier email. I'd argue the whole reason Flowdock (or similiar) is necessary in addition to email is it reduces the barrier of what is "message worthy". If I want to send a message about my dog as an email, that feels weird. If I want to send the same message to a channel in Flowdock it doesn't; it may even become a thread but it doesn't disrupt useful work going on in other threads. Twist seems like it falls decidedly in the first camp and _that_ is why I won't switch to it from Flowdock. I simply can't use it for water-cooler style communication (group chat - Slack, Flowdock, even AIM win here) or productive real-time focused discussion _across problems_ (multi-threaded group chat so that one thread can dovetail/inform another in the public discussion - this is a Flowdock only thing AFAIK). The only problem it seems to solve is productive focused discussion on a single topic and honestly email already does that very well.

I will say searching is nice; of course, Flowdock has that too (as does Slack and many internet-based email solutions).

evilsnoopi3··on Uber finds one allegedly stolen Waymo file on an employee’s personal device
> Lesson #2: If someone accuses you of theft, deny it instead of pleading the fifth.

Actually, you shouldn't say anything and get a lawyer. Then listen to them. Pleading the fifth is expressly not an admission of guilt however it is portrayed in the media - often times it is necessary even for innocent parties to invoke. I am not a lawyer and this shouldn't be construed as legal advice.