skysight-inc/HackerNews huggingface dataset:
When I started my PhD in 2009 I was greeted with a really complex experiment control system written in LabView. Being the new guy I at first tried to figure it out and build my experiments on top of it, but I found it so frustrating that I eventually started rewriting it in Python. My colleagues & advisors did not approve of this and thought I would have to spend years getting the same amount of functionality they realized in Labview. So I did it secretly in the beginning while continuing to use the old system as well. After 6 months I had completely replaced the old system with a new one based on Python and C++ (for time-critical data analysis tasks that numpy was too slow for). I implemented a graphical IDE in Qt similar to Matlab where you could edit code snippets in multiple windows and execute them interactively. It was similar to Jupyter lab (which didn’t exist back then). I also wrote instrument front panels in Qt, class based abstractions for all instruments in our setup and a management layer that took care of initializing instruments and logging all relevant parameters. It was great fun and my first contact with Python, still amazed that the language allowed me to become productive in it so fast. The system is still in use and has spread to multiple labs by now, and my colleagues mostly acknowledged that Python is actually a good way to control measurement equipment and run experiments (though they still use LabView for simple measurements).
https://www.explainxkcd.com/wiki/index.php/2309:_X
I thought Diesel was just an ORM, but investigating your comment I discovered that they've implemented their own drivers in-tree. That surprises me, and also seems like a mistake. Steven Fackler's PostgreSQL driver, for instance, is widely considered to be quite solid.
Hmm, I see the author liberally using _filename as a variable name saying "I just use names with underscores as functions arguments names".

However: In Rust, variables starting with underscores are usually indicating unused ids and if you actually forget to use it - you will not get a warning. As a tutorial material this sets very wrong mindset for the beginners. ONLY start variable with an underscore if you mean to not use it.

@jesselawson - please update this.
Bret's talk was great! Thank you for sharing it.
Apt autoremove seems to do a pretty decent job.
I’m not sure I’d call this “kawaii,” as that has a particular (and often cringey) connotation.

But, there is something deeply unappealing about this style. I’m not sure I can even describe it properly. It just reminds me of the most boring parts of my childhood: the aesthetic of dentist office waiting rooms, and middle school pamphlets aimed at teaching kids about sociology.

My past association with this sort of aesthetic is so innoffensively boring, I almost can’t even stand to look at it. And, as and adult, it no longer strikes me as just boring, but also insidious in the way that all marketing is insidious: it promises one thing, and behind the marketing is something else. A pleasant and inoffensive advertisement is in actuality just a regular old business who wants your money. There’s (usually) nothing evil the business, but of course the feeling portrayed by the marketing is a lie.
AWS Graviton2 (ARM64 CPU) support comes to Travis CI
Am i reading correctly that he tested on a single vCPU? Isn't that half a physical core?
Have you ever noticed whether it's easier to be productive late in the evening?
Good coders borrow, great coders steal
Interesting, I didn't know that there was a distinction between uppercase and titlecase. Perhaps unsurprisingly, unicode has a FAQ around just that: https://unicode.org/faq/casemap_charprop.html
>>Bosch could have licensed the technology.

SawStop today refuses to license the tech as it is their only competitive advantage to sell their massively overpriced saws.

They could have 20 years ago when SawStop was trying to license the tech, however the industry (and I concur with them) belived their licensing terms were unacceptable.
Could you not check the hashes before doing the substitution?
> why would I say no to having that option?

Because the option will also be extended to all your colleagues.

And the moment a team gains a single remote worker it gains a load of process and ceremony. Every conversation becomes a scheduled meeting, every scheduled meeting books a meeting room with AV equipment, every meeting gains five minutes of AV setup time, everything that would have been a group of people at a whiteboard turns into a presentation prepared in advance by a single person, and every lightweight task tracking system gets replaced with Jira.

All of which is done with the best of intentions - you don't want Remote Person to be excluded, or unable to see the whiteboard. And the changes aren't terrible - plenty of companies use Jira quite happily. Some people would even prefer a 20 minute scheduled meeting to a 10 minute interruption! But each change makes your life slightly more like the cliches and jokes about corporate life.

It's not all downsides of course; if you get to avoid commuting or working in an open-plan office you might find on balance it's less alienating.
I reread your post and now I understand what you were trying to say.
Why don’t more VCs care about good tech (yet)?
OAuth is not even a real standard at this point, at best it’s a concept. Practically every company is using a different implementation; so even if we assume that Nintendo is using “OAuth,” it’s not safe to assume anything about their implementation of it.
It's not that hard if you leave some spare space for string constants in the .rodata section. Nix already patches ELF executables as things stand.
Isn't this basically what Docker is for?
AWS JSii: allows code in any lang to naturally interact with JavaScript classes
“accessibility” “lorem ipsum” – Google Search
Instead of Test Driven Development, Test Only Development? I like that idea. This reminds me of an article I read a while ago on co-evolutionary training in genetic programming: one algorithm evolving to do something, with another evolving to break it.
At least in SF any therapist worth their salt usually has a waiting list. Demand for services far outstrips supply. Even if they didn't care, they really have no vested interest in you coming back because there is a line of twenty people right behind you waiting to get in.
Here are my favourite use-cases:

* automatically installing all project libraries and dependencies so you can build your project without having to apt install a bunch of stuff first. This is done through direnv/lorri, so when you cd into the project directory, direnv uses nix to install everything automatically. Very quick onboarding and also no need to keep up with the various company projects' deps.

* building docker images with intentional layering so deltas remain small is a breeze: buildLayeredImage.

* with home-manager I can ensure my dotfiles have all their dependencies so vim plugins and whatnot just work. It also means I get the same nice home environment on _any_ Linux distro I choose.

* Same as above except for my entire system with NixOS.

* Shipping packages with specific config defaults _only_ for your project directory so you don't have to worry about making everyone configure something is also a breeze with Nix package overlays and overrides.

* You can even have Nix modules for your VPN connection and the like so co-workers can import that into their home-manager or NixOS configuration, and if it changes so does your system/home config next time you build it.
Very good points.

I think we (I, maybe) default to the mistake of thinking in terms of "one big systemic explanation." Ultimately, something like investment in or success at innovation doesn't follow strict rules. The factors that go into it tend to be local. Any practicable "Theory of Innovation" is likely to be true locally, at best.

A few years back Neil Degrasse Tyson, advocating for a re-funding of the NASA space shuttle, made the argument that private companies will never pioneer space exploration. Mars missions and such. He had Elon in his sights, but also others who were starting to "invest in space" at the time.

It was a good argument. It was logical, consistent with 50 years of space exploration experience and parsimonious with analogies from other industries, history, etc.

Neil was also wrong, and I think he'd agree to moderate that argument significantly today.
Known anomalies in “Known anomalies in Unicode character names”: they refer to “háček” as “hacek”.

I wouldn’t normally pick something up like this, but isn’t the whole point of ASCII to have a way to represent non-English characters?
This Google search result shows a bunch of pages that have accessibility pages that contain nothing about accessibility, they're just cut and paste Lorem Ipsum blobs.
> family situation

If you have a family, and you are trying to escape them to go to an office or be alone in transit for hours commuting every day (which is simply time lost from your life), something might be wrong with your relationships and you should spend some time fixing that (but like, yeah: if you are essentially feeling trapped or something because you hate your family, I guess it makes sense to do anything you can to avoid them :/).
Ask HN: Has anyone built a categorization tool for articles posted on HN?
I actually don't think that's true. But that might depend on the country, doctors etc. Many still give the exact wrong advice of limiting fat intake, focusing on "slow burning carbs" and all that.
>>>Why are severed fingers part of anyone's business model?

it is, however Millions of people operate normal saws everyday with out cutting their figures off, and contrary to popular belief on here Safety does have a cost narrative to it. SawStop over values their tech for many people, which is why other saws continue to outsell their saw because people buying the saws value other things more than the safety enhancements the SawStop technology brings

It has nothing to do with being an "Outsider" and everything to do with SawStops inventor placing and outsized value on the technology.

The manufacturers respond to consumer demand, and many consumers would refuse to pay the extra money (for some saws it would have amounted to several hundred dollars more retail price) for the technology
I would just add an in between. If the project is small enough that a fellow coder can understand what's happening by spending a day or two looking at the code it's also ok.

Other than that fully agree, the power of documentation stackoverflow and forums can be easily overlooked but is incredibly valuable. This even if we all feel a little miserable every time the framework fails at any of the magic things it does and we just patch it up and end up never fully understanding the root cause.
So, the problem of seeing disk usage sorted by size was solved in....... 2009. Not great, imo.
No.

Error handling in Go is very explicit since it doesn't alter the control flow of the program through an exception. I'm hesitant to agree this is just a bad implementation, because you will have to make decisions on error paths in any case. If you don't do that, you are just doing bad programming.

On the surface, it looks like you want to use exceptions or other control operators for handling this. But after having programmed for more than 20 years, I'm not too sure there is a good solution to this problem. Programs and operations in programs can fail. And you will have to think about these failures eventually.
Excuse me... what am I missing here? Is this just some sort of donation or does Matrix have plans to make money (how?)?
I remember reading about this in Java world a while back. To maintain safety you need to validate all the bytecode on load, so you can't really pre-cache it. Newer versions of Java use "class data sharing", but this only caches code after the local JVM has already validated it. Doesn't help with code files you've never seen before.

You could abandon validation and pre-compile but then running applications is no safer than c. You could modify the IR to do bad things like leak memory and crash VM.

JS has the same problem. Parsing and validating JS is a large part of page load times these days.

I'm not sure source generators will be the solution you hope for. Java has supported build time code generation for ages but everybody still reaches for reflection. A few popular libraries like MapStruct use build time generation instead of reflection, but again there's like 20 other popular libraries that do the same thing with reflection.

Java has attempted to fix the reflection hole with modules. You're supposed to pre-declare the classes you're reflecting in your assembly. But at current adoption rates its going to be another 20 years before you can count on all your dependencies using the module system correctly.

Trimming unused code is easy without reflection. Its been standard practice on Android for a long time. But every time I've tried to use it on servers I run into random crashes cause by runtime reflection and classloading.

Pretty unfortunate shortcomings to Java and C#. I don't think they'll ever be truly fixed unless somebody uses to nuclear option of disabling reflection completely
> so the JIT is going to be more of a legacy burden

I use Reflection, Reflection.Emit, and Linq.Expressions not just for serialization.

Building code in runtime from something else can be a win, especially performance but sometimes development time as well. That "something else" is not necessarily other code: https://github.com/Const-me/Vrmac/blob/master/Vrmac/Draw/Tex...
Symptoms are quite different, though. And they are evaluated by the ‘medico di base’ (general practitioner) before requesting a viral test. So I am not clear on what could be confounding.
If this is true, wouldn't that mean that the R is in fact not as high as we believe it is, because it was spreading for longer on a slower rate as opposed to spreading fast in a shorter time period? If we think that it is still highly infecious then the only other conclusion can be that we have a much larger population already immunonised?
What kind of software are you developing that gets deployed over satellite links? Sounds interesting.
Scientists Find Brain Center That Shuts Down Pain
It’s really easy controlling most lab equipment using Python. There is good support for GPIO (which most simple instruments are using) and it is also easy to use ctypes to call into external DLLs if you have to. During my PhD I controlled more than 30 different instruments in real-time using Python, so it’s definitely possible. The learning curve is much steeper than for LabView of course if you don’t have experience as a programmer, but in most scientific fields programming is becoming more important anyway so most students learn it.
The thing about which stories to cover isn’t only about Left/Right. It’s mainly about what draws most attention.

I find most media biased towards conflict in that regard. The primary goal is to trigger emotions like rage and fear.

So for my self I find I’m happier not consuming “news” at all.
Kelsey Hightower on Developer Experience, PaaS, and Testing in Production
Well, my RSS reader automatically tags incoming articles

https://handlr.sapico.me

If hn would add a rss feed, I could create a new subdomain for hn and it would have the result you requested.

Some manual administration for tags and their alternatives + subsets and parents would be required though.
A Social Distancing Infographic Poster
How many times could I have made it to the moon while social distancing? I thought I would do the math and find out.
To test all cases and make sure there there isn't any weird cases (Run on PHP 7.2):

<?php

if (null > -1) {
echo "null > -1\n";
}

if (null < -1) {
echo "null < -1\n";
}

if (null == -1) {
echo "null == -1\n";
}

if (null === -1) {
echo "null === -1\n";
}

if (0 < -1) {
echo "0 < -1\n";
}

if (0 > -1) {
echo "0 > -1\n";
}

if (0 == -1) {
echo "0 == -1\n";
}

if (0 === -1) {
echo "0 === -1\n";
}

results:

null < -1

0 > -1
Types of Sequence Prediction Problems
We need a cultural stereotype for highly driven egomaniacs who do good work but leave a lot of collateral damage in their wake.

At the moment it seems like you need to love or hate them and complex mixtures of emotions are too complex to be part of the conversation.

I wonder how much the public opinion is mostly "I dont know who that is" followed by "I have no strong opinion on him" and "he's a mixed bag" but it's pretty hard for any of those opinions to get turned into memes or jokes or arguments or other viral content so the minor sliver of people with strong pro or anti feelings dominate discussion and so everyone gets pigeonholed as either an angel or a devil.
"Here's a picture from Kathmandu in 1920. It appears to have poor visibility, but it's unclear from the picture whether or not that is pollution or weather."

You don't think it's the quality of a 1920 photograph?
From scratch. On your own, yes. If you have the time.

Just look up a course sequence from a good university.

1. The hard part would be keeping yourself accountable. Schools usually help in that.

2. There are no guarantees that that is enough. Consider real industry experience, informational interviews, etc if the end goal is a job in the area.
Sure, but that doesn't mean anything in this case.
I don't know how FlashFill works in 2020,
but from [1] I learn that the original implementation was a brute-force enumeration (with clever heuristics along the lines of CDCL (= conflict-driven clause learning in SAT solvers) for speeding up common cases) of a small DSL for string manipulation. This was (and still is)
the state-of-the-art approach to programming-by-example
program synthesis.

[1] O. Polozov, S. Gulwani, FlashMeta: A Framework for Inductive Program Synthesis. https://www.microsoft.com/en-us/research/wp-content/uploads/...
An Overview of Concurrency and Parallelism in Nim
Been working almost (maybe 1 year total spent in an office and hated every second of it) exclusively remotely for well over 25 years; I personally find offices absolute time wasters. Noise, commute(or wasting money living close to the office), meetings, disruptions etc.
I have seen various promises of visual programming over the years (Java beans was going t be the next big thing when I learned). The fact is it gains you very little (in my opinion). The only thing that it solves is syntax, and that's actually a relatively easy thing when it comes to programming. MS Access had an OK visual query builder, but by the time you needed to anything moderately advanced it was as easy to switch to text SQL (plus text SQL is a more standard way of doing things).
Amazon launches food delivery in India
> 4.6% of blood donors had anti-SARS-CoV-2 IgM/IgG antibodies at the start of the pandemic

Which would make sense. Inter Milano's player Romelu Lukaku was saying about a month ago that the vast majority of his teammates (23 out of 25) had already gotten the virus in January, and that for the Inter - Cagliari match (which was played on January 26th) one of his teammates had to be substituted off after only 25 minutes because he couldn't run anymore.

For whatever reasons Inter's officials didn't like his comments and reprimanded him, but it seems like Lukaku was closer to the truth than many would have liked to admit a month ago.
very slow site :(
I also immediately regarded this to be an American thing to do, and I am from the US, so I suppose I am guilty of the following. In any case, I find it slightly amusing that even when a (presumably) non-American does something that fits into this model of things Americans do, it can serve to reinforce the idea that it's an American thing to do. Is there a point at which this ceases to be so?
This is interesting, thanks for sharing. I wonder if a remediation for the moment would be for local websocket servers to check the Host header before sending the 101 switch protocol response. Also would a CORS "Access-Control-Allow-Origin: localhost" prevent the connections being established?
What kind of categorization do you have in mind ?
reflection. Same problem Java has. Too many libraries fiddling with the code at runtime.

JS is also exposed to this. Some libraries can be shaken but I've always ran into random things breaking when trying it.
True, however the vast majority of the world is at least as strict as the US.
No, it’s stored on the user’s own computer only. You could put an expiry date in there as well so you don’t accidentally use it after, say, 90 days.
I can't come up with work that requires being in an office, other than perhaps whiteboarding out ideas.

But my first few years as an engineer, I loved going into the office. We played ping pong, we drank, we socialized, played games. There were even free snacks! Pretty good ones. Maybe for a lot of engineers that all feels silly, but I'd never thought I'd have a job that cool.

You can call that all "bullshit perks" or whatever, but it made the start of my career so motivating and fun.

I work fulltime remote now. I'm the CEO of a company, and we're fully remote. It has huge advantages, but I wouldn't trade that first office experience for anything.
That's really a flaw with how those packages have been designed rather than a flaw with Nix. We've known that it is a terrible idea to put everything into global directories, edit `PATH` and so on for literally decades.
Bell Labs basically re-invented electricity. The invention of the transistor was one of the most important inventions in history, on the scale of the dynamo, gunpowder, or fucking metal tools.
Since I know that macOS conveniently allows to type en and em dashes (option+hyphen and shift+option+hyphen respectively) I'm using both frequently in the appropriate situations instead of just putting hyphens everywhere.
It's easy to first party ad code. I would guess that as a percentage of website usage Webpack, or at least code that uses custom bundling, is over 50%. JS knows all.
AWS EKS Best Practices Guide for Security
a piece of feedback: please move the 'close' button on the pop-up video player to the top-right, where users usually expect it to be (ideally I would prefer no pop-up player at all, but I guess you had your reasons).
Then why should I use this instead of a real Feedreader? What advantage has this?
Ultimately, a lot depends on individuals. Incentives, systems, and such can make things common or uncommon, but innovation tends to be uncommon anyway.

Google was founded, and mostly run, by people with a pretty broad academic interest in science and technology. Pioneering ai breakthroughs is what they wanted and they find ways to make it logical for google to do. Both the existence and the nature of their R&D reflects that. Apple or Microsoft were not. They're interested in products. What rocks Zuch's boat is is reach. I don't think he'd be that excited about purely technological breakthroughs. He'd only be excited about ways these can extend FB's footprint.
Possible Quantum Paramagnetism in Compressed Sr2IrO4
I mean if there's a bug, it's not enough to patch one particular OpenSSL. You have to audit manually, so Nix won't make much of a difference.