skysight-inc/HackerNews huggingface dataset:
Are there Medium publications that are consistently of a high quality? I recall Backchannel being one (written and edited by tech journalists) but the issue is it's hard to know which publications are contributor-driven and which aren't.

Contributor-driven content is why Forbes.com, Inc.com, etc are unreadable. It's all puff pieces for some startup, unoriginal life-hacking advice and entreporn.
I live in America. I rarely tip Uber. I have tipped before, one that comes off the top of my mind is when I asked for a ride into downtown, where there was a huge parade/celebration going on. Due to traffic from other vehicles, there was no way they were getting out of there in any reasonable amount of time after dropping me off. It easily would have taken them 10 or 15 minutes just to get to the point where they'd be able to get out of the area I put them in. I genuinely felt bad for them.
Using Haveibeenpwned (HIBP) in a Corporate Setting?
Hello there, thank you for reading this,

i work in a small to median sized IT support business.

i'm the cyber sec junior, and i have been wondering about if i can implement HIBP in a corporate setting.

i currently use it to educate staff members on how passwords are breached, and why emails need to be secure, and i know i can use it to scan a domain and find emails linked to breaches and that i can use it as a blacklist for passwords.

is there anything else i should think about or look into?

thank you.
I've seen this here at least once before, but agree that an appearance on HN should not be used to imply a YC endorsement.
Violent American vigilantes at the border led to Trump’s wall
Pipelining is necessary is well, but super-scalar is the key ingredient here - parallelism.

Pipelining means that instruction fetch, decode, execution, and retirement are done in separate stages, each one taking at least one cycle.

Super-scalar/parallelism means that there are multiple units for all of these stages so the CPU can fetch many instructions in parallel, decode many instructions in parallel, etc.

The cool/critical thing here is that many Intel CPUs can execute three XOR instructions in parallel but can retire four. Because the CPU recognizes XOR of an instruction with itself as a special case it skips the execution stage and can then process four per cycle.

Or, more likely in real code, the execution units are available for other instructions to use.
> If someone insists on using a CLI and nothing else, after all these years of the world having moved to GUIs, I wonder what prejudice is behind it.

No prejudice.. I run a dev/comms box on a Raspberry Pi Zero W that has 512Mb of RAM. I originally set it up with a lightweight GUI which would actually start up but was pointless to try and use for anything. Reverting back to CLI meant that I could now "do stuff", and I rarely use more than 70Mb memory even with tmux running.
Companies in the defense sector are definitely not biased against conservatives.
Same for IKEA Trådfri, but it uses Zigbee.
> In short, an interface that's highly efficient for an extremely experienced user probably isn't going to work well for someone who's never used the system before, and vice-versa. For a train ticket machine, it seems to me you want something that's easy for newcomers; you can't assume everyone is a regular user of the system.

It's not an either/or. You need to support both sets of users well.

Sure, if 90% if interactions are going to be by newbie users, design the system for them. But for something like a train ticket system, maybe 50% of users may be newbie visitors, but only 10% of interactions are by them. It doesn't seem like the right call to cater to newbies if it means making the remaining 90% of non-newbie interactions noticeably worse.
They're still using Rust for some stuff, just not for the game itself. Wargroove's matchmaking server is still in Rust. That said, yes, this is a good example of what your parent is asking for.

https://www.reddit.com/r/programming/comments/atyzz4/halley_... has some more context too
Google had a fast math library for Android, which got outperformed by ART JIT compiler and was eventually deprecated.

https://developer.android.com/reference/android/util/FloatMa...
With hindsight, a "UX designer" is probably not the best choice to lead a project building a warehouse inventory system.
I find where rust usually shines the most is if you do text processing. String allocations take time. In rust you can often avoid them and use things like cow to only allocate when you change something. That way often my text processing heavy scripts go twice the speed of a C++ version, and they're easier to write with Cargo, too.

Compared to highly optimized Java and C# I could often get a quite naive rust implementation to be 10x faster.

Naive rust means I didn't spend much time optimizing but I do use appropriate algorithms and to avoid unnecessary allocations.
Full-time lawyer also has 13 side hustles. Here’s what he’s learned
I use Windows 10 Enterprise via KVM on Fedora 29. It works quite well, even for more intensive tasks. I do not have a dedicated GPU, so I am not sure about image editing. The only thing I've noticed that is a bit annoying (and it happens in almost any virtual environment) is real-time audio for stuff like video conferencing. When I conference with people who insist on using WebEx or Skype for Business, the audio though the Windows VM is always popping and skipping slightly. Never enough to disrupt the meeting, but it can be annoying.
Poll: Is “-3” a Whole Number?
I've recently been chatting with some people who have a very different background from mine, and someone talked about a "whole number". Conversation ensued, and I'm prompted to ask this question:

To you, is -3 a whole number?
Yes, -3 is definitely a whole number;
No, -3 is definitely not a whole number;
Most people would think -3 is a whole number;
Most people would think -3 is not a whole number;
This shouldn't be on HN;
Its 2019, learning to program like its 1975 might not be a good use of time.
Where would the money go?
I find myself frequently reaching for 'gron' when I need to deal with JSON in a script. It's a bit simpler than 'jq', both in usage and in capability.

https://github.com/tomnomnom/gron
Talk About Thailand’s New Controversial Cybersecurity Act (28th February)
What are the chances that teletype simulation is the best possible way to interact with computers? This is what command line emulates:

https://www.youtube.com/watch?v=AIWZ_pbLYqQ

Yes, this was way better than punch-cards. But it was incremental and used completely arbitrary technology simply because it was available from somewhere else.

UI as a concept was poisoned by Windows and its shitty derivatives.

Like, there is no real reason you can't compose stuff when using GUIs. In fact, it should be easier than pipelining commands.

There is no real reason the keyboard should be crippled by working in a GUI. It should be easier to learn commands. (But have you noticed that we still don't have dedicated keys for cut, copy, pate, undo and redo? The most common operations present in almost all applications. But we have a Windows key and caps lock.)

Despite what people think, UI is still mostly unexplored territory with tons of potential for improvement.

BTW, my favorite code editor isn't an IDE. It's LINQPad, because it gives me immediate feedback without much noise. Going from it back to REPLs feels like a downgrade.
You only pay for bounds checks if you use them, same with the overflow stuff, or option types. That's not in contradiction to this principle.
This is a very good point. To just stop tipping wouldn't teach the restaurants anything. They still get their money from the food you ordered and can always churn out more wait staff willing to work for those low tips because it is better than nothing. Regulation that takes away the need to tip would be extremely helpful, else this probably won't change.
With the cost of catching up to 25 years of tooling and libraries.
Google “enough command line to be dangerous”

It lives up to its name and is very much a place to start and nothing more.

Your real problem is going to find enough problems to solve to build up muscle memory.
Are houses in the Nordics framed with wood? I was having a discussion with someone the other day about houses in the U.K. They felt stone houses were far superior to the wood ones in the US. I tried to convince him about insulation being much better in wood frames homes in mild and cold climates to no avail.

My exposure to the Nordics is limited but in the pictures I’ve seen there were lots of wood single family houses.
Yeah, but there are some limitations with Rust's generics around numeric types. You can't declare generics with arrays of a fixed size(which is really common in performance sensitive code) so there are trade-offs.

I understand that it's being worked on. I won't disagree that C++ templates are sharp, pointy tools but there are some things that they enable which you can't get in other languages.
I made no indication of 'settling for gdb,' you can use gdb in plenty of places where Visual Studio doesn't make any sense at all and provided some examples. If you haven't looked at the GDB TUI you might be surprised on how competent it is and having a well supported python interface to automate or enhance specific debugging for a project is pretty great. GDB hooking a runaway process in production that's using up a ton of resources is also much easier to do from shell than trying to coerce Visual Studio to do it.

It is also possible that the kind of things you are debugging also don't fit Visual Studio and better served by tools and things like WinDbg. This comes up when you are doing kernel driver debugging or really having to work with lots of symbol server shenanigans when you have kernel dumps from all sorts of random versions of Windows.

There's a lot of tools out there, and Visual Studio is often not the best tool for the job even for debugging. Settling for Visual Studio has its own set of compromises. As I mentioned for gamedev the Visual Studio experience is the current de facto standard for engines like unreal and as far as I am aware many of the SDK's for consoles, and all of the asset creation tooling from Maya, 3dsmax, etc. There are just other things that exist in the world than the primary pipeline that Visual Studio services with fantastic tech.
Cultured meat seems gross? It’s much better than animal agriculture
Not the OP, but probably from here:
https://projects.sfchronicle.com/sf-homeless/2018-state-of-h...

$300M / year is spent and there are 7,500 homeless in SF.

I believe a good chunk of the money is spent on housing formerly homeless though.
I love using nvim as my daily editor, but one thing I get from posts like this are that the authors rarely have to develop any kind of UI themselves, this author states they work in JS, but it looks like it's backend node work.

I'd be interested to hear of any other stories from developers that use both terminal for almost everything but also have to have a web browser open for development.

The best I do is have my browser and my terminal open 50/50 on one screen, but this isn't ideal, just a compromise.
Artist Carves Intricate, Mechanical Coins That Reveal Hidden Surprises
TheVault Bounty Program
Why are you bringing up the question of if it's illegal or not when no one else is? There's no dispute as to whether or not it's illegal -- it isn't. There's no argument there. There's realistically, nothing to be afraid of from a legal standpoint, which is what makes the behavior from organizations with large legal resources so puzzling.

People keep bringing up Facebook/Instagram and Snapchat. Facebook/Instagram has had no issue with admitting that Snapchat was an inspiration, so that doesn't help your argument. The issue here is credit and attribution, not legality or morality.
It's pretty much garbage, with a self proclaimed truism not supported by data, like interviewing in generall.

I can't tell the elite 5% programmers from the 70%+ percentile programmers, or what ever numbers I make up, during the interview process anyway. It's maybe possible to spot rock buttom programmers from the best, but telling a mediocre programmer (50th percentile) from a really bad is probably really hard.

Interviewing resembles dating. Spam untill you suceed if you cant be picky.
And they do all that nothing so much slower than the old ones. Everyone involved with that project should be ashamed.
TransUnion is hiring full-stack engineers for Cloud Security team (remote ok)
yeah well -- I read parts of the Dragon Book on Compilers, and Operating Systems Concepts, at a formative time in life, and ran, not walked, away from both.. The kind of 'algorithm ninja' specialization these days, and the style of programming that fits ever-so-tightly to some external OS requirements, is not at all the breadth of what is possible with software.

On the other hand, books like AI in Games, that's entering into a whole new modern realm.. cant make it up, gotta find it somewhere.

last, I cant help but feel a bit abused for the click here, since it is clearly linked to some volume-ads or buy-referral system or both, for the author, and the amount of effort to put that page together is clearly minimal. Oh HN .. .
Split-Sex Animals Are Unusual, Yes, but Not as Rare as You’d Think
Look up the statistics. Majority of abortions are before 21 weeks (only 1.3% after). The vast majority of late-term abortions are for medical reasons, such as non-viability of fetus or endangerment of mother. The point of the law is to prevent the government from interfering in a doctor’s ability to provide medical care. Northam made a gaffe when speaking, but he is an actual doctor who has witnessed the actual terrible tragedies that can happen during pregnancy, as opposed to armchair quarterbacks who are jumping up and down to get their religious worldviews validated by law.
Upgrading it would also likely lead to extravagant costs to the taxpayer, as these government software projects tend to do.
But, if I understand correctly, systems can be trained separately on "this is background noise" and then apply those filters first, and then work with cleaned audio, right? I've been using krisp.ai for a few weeks and it has been fantastic at doing exactly that in real-time.

Regarding conversational speech, I get that. Books are definitely not conversational.

I guess the next question though, would be: is the objective to build a model that understands all words, or conversational speech? <novice> It seems like transfer learning on a model trained on audiobooks and then conversations would still be a good path, right? </novice>
I recently had an interview at one of the big chip designers, and towards the end they gave a few basic computer architecture and assembly brainteaser questions. One of them was whether I was aware of a smaller instruction for zeroing a register, and I did manage to guess xor after a little thought. It's a trivial idea, but very satisfying to realize for the first time.
> After 20 weeks of gestation

Doctors that do optional abortions at this point are, at worst, rare. At best, they'll lose their license.

> You either value life or you don't.

We are at an imbalance point on this planet, and we have overpopulated. Reducing the number of people being born in high carbon usage areas is probably one of the best things that we can do to protect life.
> * t-shirts, foosball tables, etc as perks

Or anything mentioning alcohol. I don't have an issue with alcohol in general, I'll drink socially. But as an indicator of culture it's just the biggest cliche and eye roll for me.
Are you equating usage of a shell with “1975” programming? How do you think the tools and environments you are using for your work have been created?
Hi Footpath creator. I'm a runner and happy user of your app for many years. I just wanted to say thank you. Regardless of what Strava does, I'll continue to support your app.

Edit: putting my money where my mouth is, I just realized I’ve had a lifetime membership purchased in Oct 2014 but that doesn’t help you any going forward, so I just purchased the yearly elite subscription. I hope you’re able to continue to develop the app.
Big issue in the Netherlands (and probably more countries) will be noise pollution though. Houses here are built really close to each other and the combined noise could be an issue. Neighbours are already complaining about the noise from my parents heat pump.
then again it might not.
Here[1] is the detailed case study of rewriting Stylo in Rust which Steve mentioned in the above comment.

[1] https://hacks.mozilla.org/2019/02/rewriting-a-browser-compon...
> The hard part on the path to becoming a command line wizard, or any kind of wizard, is thinking about how to apply existing tools to your particular problems. You could memorize McIlroy’s script and be prepared next time you need to report word frequencies, but applying the spirit of his script to your particular problems takes work.

It definitely takes a bit of work, but hopefully it's still a lot less work than writing the verbose solution.

The hard part of mastering unix one-liners for me are two things:

- Figuring out which tool can pick apart or reconstruct a specific syntax robustly. I think I spend more time figuring out input parsing and output presentation than anything else.

- Knowing when the right time is to ditch the clever one-liner and upgrade to a real program. There's a benefit to prototyping as a one-liner, but there are cases when replacing the result with a long program is appropriate, especially in a production environment. But, then again, only if the one-liner isn't robust or scalable enough, and usually it probably is.
They do work, but with decreased efficency, which in the end line has an effect on total power output (not enough to satisfy heating capacity/needs of user’s installation) and increased energy consumption.

Most of modern heat pumps (air to water) can work without issue all they way to -15/20* C.
Even if someone were crazy enough to use reflection to get around accessibility for testing (which you should never do), once I saw that once, I would be judicious about using “Find all references for a class” - something else you can’t do reliably with dynamic languages.

As far as partial build systems, with at least C# that would still be caught when you do an integration build. But that still begs the question, why wouldn’t you use a proper internal package repo and proper versioning?
US automakers have pretty much switched over to metric fasteners for years. My 15-year-old Ford is all metric. They sell their cars all over the world.
Sure but not everyone can make it into Google. I'd be there myself but I can't pass the interviews.
I think your thought process is taking you for a ride. The designer’s answer (as self-serving as it may be) says that we should work to fix the root causes of homelessness and not just empower it.
Do you have any centralized district heating in NL similar to in Sweden?
In the 1840s when programmable computing devices were first manufactured, 100% of programmers were women. She died about 10 years later.
East African Travel Guide Updates
Author here - I just want to drop in to reiterate how awesome register renaming is. It's a bit weird to try and understand, but it is crucial to how these out-of-order processors run, and it is the trick which lets the register zeroing run so efficiently.

An x86-64 CPU has sixteen integer registers, but 100-200 physical integer registers. Every time an instruction writes to, say, RAX the renamer chooses an available physical register and does the write to it, recording the fact that RAX is now physical-register #137. This allows the breaking of dependency chains, thus allowing execution parallelism.

In the case of the zeroing instructions the register renamer says "RAX now maps to physical-register #0" where that is a register reserved for the purpose of being zero. No execution is needed. It's beautiful.

For more details read up on out-of-order execution and register renaming.
My experience working on writing image processing code in Java is that rewriting the slowest bits in C++ only gave about a 10% performance boost, and this was over a decade ago. Moving stuff to the GPU was vastly more effective than doing faster CPU work.
Thanks! I really appreciate the support.
I don't consider 'wrong' and 'unethical' to be synonyms. Feel free to disagree.
Aaand is it me, or is the image at the top of that article reflected?
It's common to think that the goal of UI design is always about being as intuitive as possible, to minimize potential learning curves until they're basically non-existent. I don't think that's the only worthy goal, though.

Intuitiveness and power are often opposing goals. You often see a way to make an interface more powerful, let the user work more effectively and/or efficiently, at the cost of intuitiveness and having to increase a learning curve.

In your last paragraph, I feel you mean to imply that vi failed in its UI design, but I think it's one of if not THE best UI design I've ever come across. There was a learning curve, yes, but I don't care, it was well worth it given how much it's improved my efficiency of anything text-related in my work. The cherry on top is that shells and any readline-based REPLs implement vi keybindings, so learning how to use its UI has become tremendous leverage, since this means that vi-keybindings become the new main text-editing UI convention system-wide.

I don't understand your point about the web-browser. You say how great it is that its UI has not changed much (although I think it has) in so many years, then you say how bad it is that vi's UI has not changed much in so many years. Also, web-browsing is mostly about text, so I can't see it being much of a contrast with your earlier point about terminals being better for text things.

About having conventions, CLIs probably have more conventions than GUIs, so I don't really get that point either. It's not just about --help, the concept of options, of long ones, and short ones, and them having arguments and all that are conventions. vi and emacs keybindings in many CLI programs are also conventions. If having conventions is great, I think CLI has GUI beat.
Disability Rights Advocate Dies After Insurance Co. Denied Her Necessary Meds
top would be good to have as a GUI, but I think 99% of people would prefer not to have X11 running on their servers, not least because of how insecure it is.

Also, a surprising amount of TUI apps do have at least some mouse support. Sure, it will never be as good as a GUI app since you can't scroll by less than one row, and depending on the terminal the responsiveness for resizing isn't great, but it is there when you want it.

Also, one of my favorite things in vim is splits. Whenever I use GUI editors the split support seems to be very bad. Some of the Mac OS editors are at least meant to be used with multiple windows, but I think that philosophy of the desktop metaphor is dying out and people are just writing apps to be used full screen.
> The output of a shell command is text. Programs are text. Once you get into the necessary mindset, everything is text.

This mindset is also how we got the C preprocessor...
Thanks for the link, everything written by Baez is interesting! Grothendieck's algebraic geometry is, I lament, a bit too intimidating for me at this point & I suspect that will be true for pretty much everyone who reads this website. However let me point out the wonderful book by Cox [1] which teaches the classical version of the subject with a computational bent.

[1] https://dacox.people.amherst.edu/iva.html
Does Rust allow for taint analysis too like Perl has for long time? If not I'd say it's missed opportunity.

(It marks all untrusted input as tainted and programmer must explicitly parse the data or mark them untainted to pass them further.)
It does indeed. Good catch :)