HNHacker News
TopNewBestAskShowJobs

qw3rty01

491 karma · joined August 21, 2019

user list:

cperciva - tarsnap founder, Animats - nagle, zx2c4 - donenfield, jart - justine tunney,

submissionscomments
qw3rty01··on Amp: Vi-like terminal editor written in Rust
This editor is missing way too many vim helper shortcuts to claim to be vi-like, maybe vi-inspired would be better wording. That being said, the editor looks really nice and jump mode feels extremely intuitive; I might give it a full shot once they get language server support
qw3rty01··on Technical interview methods pale in comparison to playing Factorio with someone
Ultimately how well your program is designed is completely based upon what features you need to develop in the future, what their parameters are, what their return values are, what those return values will be arguments into, and in what scales you need to run all of this stuff.

These are all things a new programmer has no clue about. All you're really saying is an experienced programmer that has done enough researching and equation balancing (X algorithms feeds Y threads and a processor can support Z cores) ahead of time should be able to design a program that doesn't require too much changes in the future. And presumably, not overdesign in unnecessary micro optimizations.

It assumes perfect knowledge.

The closest to refactoring in programming is the ability to use IDEs to remove dead code and do code generation. But programers learn about IDEs long after they would first be useful - that would be around when you get to integrations, which easily triples the code base of your program.

Everything you mentioned is also true about programming

qw3rty01··on Latest Mozilla VPN features
The caveats you're mentioning are exactly why tor is a bad tool if privacy is your main goal. None of those concerns would be an issue with a service that focused on privacy.

Also HTTPS everywhere isn't enough; you also need ESNI, which requires server support.

qw3rty01··on Latest Mozilla VPN features
Tor is explicitly not private, only anonymous. The end node can see all the traffic you send through it if it's not encrypted. If privacy is your main concern, tor is definitely not the right tool to use.
qw3rty01··on Technical interview methods pale in comparison to playing Factorio with someone
You can absolutely refactor in factorio...in fact you have to refactor as you get access to better technologies. Just like software, refactorability is largely dependent on how well you design your base at the beginning. If you leave plenty of room for expansion and compartmentalize different production areas, it makes it extremely easy to upgrade with minimal disruption to the factory. And also like software, if you don't put any thought into the design at the beginning, it will probably be easier to start from scratch than try to redesign on the fly.
qw3rty01··on Technical interview methods pale in comparison to playing Factorio with someone
The simple answer is scale. The recipes in satisfactory and factorio are pretty similar in complexity, but the production chains in factorio are quite a bit larger. Also a lot of complexity comes in with scaling production up in factorio, since you largely have to scale horizontally, but in satisfactory, most of the scaling is vertical. Later, you can do more horizontal scaling, but even into the mid-game, you're pretty constrained by the amount of resource locations you have access to.
qw3rty01··on All my servers have an 8 GB empty file on disk
One VM using excessively more disk space than it's supposed to can potentially cause data corruption in all the other VMs on that system. For just spinning VMs up and down for testing, you probably won't run into that issue, but on a production system, it could potentially cause some massive downtime
qw3rty01··on Rust 1.51
FINALLY min_const_generics in stable rust!
qw3rty01··on The solution of the Zodiac killer’s 340-character cipher
Nothing really sticks out in the cipher as being inherently complex or requiring advanced education, it's more of just a puzzle where you're meant to figure out arbitrary rules, which in this case weren't even consistent throughout the entire cipher (adding some artificial difficulty). It's pretty out of scope of encryption because it was meant to be broken.
qw3rty01··on The solution of the Zodiac killer’s 340-character cipher
A thread on the original solution:

https://news.ycombinator.com/item?id=25390941

qw3rty01··on Hackers used zerodays to infect Windows, iOS, and Android users
Unlike lockpicking or actual arms races, it is possible to write software such that the only weak point is the people using it. Ideally all software would be formally verified, but that's a bit too cost/time expensive to be practical for everything, so instead computer security focuses a lot on minimizing attack surface and getting as close as possible to that "humans are the weak point" goal. Even if a 0day exists for particular software, if there's no way to reach it, then it's as good as being nonexistent.
qw3rty01··on Ask HN: What are some “10x” software product innovations you have experienced?
It also came out at an interesting time, because everyone was trying to push data-to-redundancy ratios to their limits. Since storage was so expensive back then, storing multiple copies of data made little sense when looking at it from a data storage view, even if the speeds were much better

Then Google dropped their MapReduce paper: https://static.googleusercontent.com/media/research.google.c...

Which quite literally paved the way for modern data processing, and works extremely well with the Google Filesystem architecture

qw3rty01··on Backblaze is now a Terraform provider
Oh how new is that? Last time I was looking through they just said their datacenter was in a bunker so nothing outside of a major natural disaster would affect it.
qw3rty01··on Backblaze is now a Terraform provider
Also keep in mind all the data is in a single datacenter, so if something like OVH happens to backblaze, you'll probably lose the data

I mainly only use them for backups instead of production data

EDIT: As of 2019 there are multiple datacenters, but it doesn't seem like the data is stored redundantly across them

qw3rty01··on How an Anti-TypeScript “JavaScript developer” like me became a TypeScript fan
It's actually the opposite. This would throw an exception in a strongly typed language. It would silently return the wrong thing in javascript because it's not strongly typed.
qw3rty01··on The Cuboid: A DIY air purifier that's better than a box fan
The internal components also don't get dusty if it's sucking instead of blowing air through the filter
qw3rty01··on Inline and Sideline Approaches for Low-Cost Memory Safety in C
It's a bit unfair to use a default hello world program as an argument for why binaries are too large to use in an embedded context, because rust binaries can be made very small with tuning[1][2][3].

[1] https://www.codeslow.com/2019/12/tiny-windows-executable-in-...

[2] https://github.com/johnthagen/min-sized-rust

[3] https://rust-embedded.github.io/book/unsorted/speed-vs-size....

qw3rty01··on 31.2˝ Color EPaper Display
Keep in mind eink explicitly does not sell to consumers:

> PLEASE NOTE:

> (I) THE PRODUCTS ARE NOT CONSUMER PRODUCTS INTENDED FOR PERSONAL, FAMILY OR HOUSEHOLD PURPOSES; AND

> (II) PURCHASER IS PURCHASING THE PRODUCTS FOR COMMERCIAL USE AND/OR IN A BUSINESS CAPACITY. ORDERS PLACED BY CONSUMERS WILL NOT BE ACCEPTED.

qw3rty01··on New model could explain old cholesterol mystery
So the new model seems to be suggesting that high LDLs are not a cause for heart disease, but rather a symptom. Have other studies tying high LDLs to heart disease taken this into account, or did their main findings just show a correlation with high LDLs and heart disease?
qw3rty01··on Why we should leave old oil rigs in the sea, and why we don’t
Another thing that wasn't super clear was that this is the total tax relief for all oil rig decommissions for every company, not per oil rig.
qw3rty01··on Why we should leave old oil rigs in the sea, and why we don’t
It wasn't quite clear in the article, but the government isn't paying to remove the platforms, rather the cost of removing the platforms can be written off on taxes, so they (all the oil companies combined) would be paying 24bn less in taxes than they otherwise would have.
qw3rty01··on BadEconomics: Putting $400M of Bitcoin on your company balance sheet
> make it unhackable

This hinges entirely on control of mining, in fact you could argue who mines it is one of the most important questions to ask.

qw3rty01··on Netflix's Metaflow: Reproducible machine learning pipelines
Not a streaming service, but a lot of movie and TV databases tend to have decent recommendations for movies and shows similar to the one you're viewing. Although in this case, one could argue that the processing is offloaded to users who provide the recommendations.
qw3rty01··on Cakelisp: A Programming Language for Games
> While languages like Rust offer benefits in terms of security and stability, they cost programmers in terms of productivity. It makes sense to value safety so highly if your code is safety-critical (operating systems, aerospace, automotive, etc.), but it's much less valuable when safety isn't as important (e.g. in games).

Just want to note that there is a large benefit to this kind of safety even if you're not writing safety-critical code: lack of bugs! The biggest benefit I've seen from rust is that entire classes of bugs, some of which can be extremely difficult to root cause and fix, are removed by design. So you spend significantly less time on the later half of the project tracking down bugs, which is more than enough to offset the productivity loss at the beginning.

qw3rty01··on More challenging projects every programmer should try
This is a pretty loaded question to then say "not trying to be judgemental"...take out the bias if that's actually the case: "What kind of benefit do you believe your work provides to society?" or "How do you justify the extra resources taken away from society that may be more beneficial elsewhere, such as X?"
qw3rty01··on SolarWinds exposed FTP credentials in Public Github Repo: US Government Breach
The email mentioned in the tweet is over a year old, with the response fixing the issue over a year old...the tweet in question is pointing out that their decisions relating to security are extremely questionable, not that this was the way they got in.

This is also what he said in the Q&A session:

> I think the attackers must have used the same approach as the FTP server was open & credentials were not strong enough. But it was a sophisticated attack as the binaries were signed.

qw3rty01··on UK warns people with serious allergies to avoid Pfizer vaccine
No, a doctor is going to have better information about the specifics for her situation and whether or not the risk of a reaction is worth the benefit of the vaccine.
qw3rty01··on Show HN: Over 2M cooking recipes ready for text generation
This is all covered under derivative works for copyright, you can't take ownership of something just by changing some things. The copyright office has a summary of derivative works here: https://www.copyright.gov/circs/circ14.pdf
qw3rty01··on US House passes federal cannabis decriminalisation bill
It's not just an echo chamber, there's actual data:

https://www.pewresearch.org/fact-tank/2019/11/14/americans-s...

https://news.gallup.com/poll/323582/support-legal-marijuana-...

That's not to say people who oppose the legislation's vote doesn't matter, but it's overturned by the majority that favor it.

qw3rty01··on Writing Rust the Elixir Way
Is there a reason you used threads in the rust example instead of tasks? I think it would have been more useful to compare against proper rust async concurrency: I ran 200k sleep tasks over 12 threads using `async-std` and each thread only used up ~30% cpu (~60% on `tokio`), and <10% with 20k tasks.

What is the proper way to call `Process::sleep` in your example? I don't see it in the lunatic crate or documentation, and I can't compare results without running the same test in lunatic.

Edit: I guess async rust is mentioned, but it doesn't really explain in detail what lunatic is solving that async rust doesn't provide, besides a vague "more simple" and "extra features," which the example doesn't really show.

← PreviousPage 3 of 5Next →