skysight-inc/HackerNews huggingface dataset:
I'm not sure why you listed those complaints because that is exactly what a smart weapon with a screen could be used for.

>What we need to improve is proper target identification,

Assuming the rifles are networked with each other then it only takes one source of target information and the whole squad will be aware of potential targets. (e.g. someone marks a target, a drone spots a target -> the targets are shown on all rifles)

>coordination and tracking of friendlies

The rifle should be capable of detecting other soldiers that are in the rifle network.
I don't know what email service you use, but it's probably storing your email in a distributed database. An ancillary effect of using an actual database is that they generally play nicer with backups and actually making sure that you don't lose any data if the power goes out (doing this yourself is a recipe for disaster).

Using a database doesn't require a privileged daemon, and the worst-case scenario (assuming a minimal threshold of competence) is that any attacker can only screw up the database in some way. With a privileged daemon, screwing up generally means that the attacker can potentially gain full control of your hardware, with all the nastiness that entails. Including, at a minimum, read your email or surreptitiously delete them.
Well, typescript is constantly improving over the years, witch each release you are able to represent more real-world JS patterns and type system is getting more strict options. So this 3 points from article might be improved in future.

About the point the article makes:

1) I remember when excess property check was introduces I was really happy! Because I remembered bug that would be caught with it. I had some interface with optional properties in common library and I renamed property name. Of course when I updated this library in another project I didn't get any compile errors because this was optional property and now I was just passing some extra property which was ignored. Excess property check would have found it because I was passing object literal.

Structural typing is great choice in Typescript because it's basically type-safe duck-typing which is used everywhere in Javascript projects. It's not uncommon to have one component that accept objects with some properties but this object contains many extra properties because it came from different component and these properties are used elsewhere. It's standard pattern in Javascript world. But when your function requires some object of given shape and you are creating this object right now using literal syntax, then it's really likely that you made a mistake. Why create extra properties for just created object when you clearly see they are additional? And I read that Typescript teams is very happy with this feature[0].

However, excess properties check is great but useful only on call side. I cannot say that my function doesn't accept extra parameters. I would really love to get Exact types[1]. Which would allow me to force not having extra parameter in passed object.

2) As mentioned in article, Flow decided to have classes nominally typed. In Typescript everything is structurally typed so it's actually more consistent ;)
I really hope we'll get nominal typing and opaque types sometime in future. I read TS team was thinking a lot how to do this. I don't remember what is the current status of this.

3) For me it's more problematic that Typescript doesn't narrow types of an union when you do conditional check. The reason is that in general it is unsound (but I think it would not be if you had only union of Exact types, that's another reason why I would love to have Exact types!).

Example in article doesn't have this problem so I guess this could have been improved. Sound like minor issue for me but maybe author could create suggestion on github to improve it and allow discriminator to be nested?

[0] https://github.com/Microsoft/TypeScript/issues/12936#issueco...
[1] https://github.com/Microsoft/TypeScript/issues/12936
> Quantitative research suggests that big companies do different kinds of R&D than their more modest counterparts. Instead of coming up with new products, they come up with process improvements. "If the nature of innovation is distorted toward selling to an incumbent, you're going to get more feature-driven innovation rather than systemic disruption," ...

I can anecdotally confirm this. I spent the summer in 2018 doing research at Carnegie Mellon's Human-Computer Interaction Institute. While there, I attended a presentation by the director of the Future Interfaces Group[0], Chris Harrison. He described some incredibly cool technology his group had developed over many years (for example, ViBand in 2014[1]).

At the end of his presentation I asked: if this technology has existed for years, with accessible implementations available from researchers, why isn't it in consumer products yet? His exasperated response echoed the quote above -- big companies like the safety of the status quo, and don't need to innovate if what they have is working well-enough. In other words, they are extremely risk-averse when it comes to revolutionary technology.

More recently, I had the pleasure of meeting Dr. O'Mara at a presentation about her book. Based on her informative book talk, and a skim of the book, I can highly recommend it.

[0]: http://www.figlab.com/about-us

[1]: https://www.youtube.com/watch?v=Poi0MeASmuY
There is a lot of public information about IKEA's woes in Russia, it's just the tip of the iceberg [1]

[1] https://www.smh.com.au/world/corruption-halts-ikea-in-russia...
>what's hampering Silicon Valley innovation right now is the outrageous cost of living.

I wish a “remote hub” concept would become popular. Where you work remote but need to be close enough to come in once a week or for big meetings. This would allow people to move a little further away and would possibly allow areas right outside the bay to become an extension of Silicon Valley.
Yes, lucky people have more flexibility. The problem is that very few people avoid getting sick or hurt[1], having kids, needing loans, getting laid off, etc. and a healthy society should work for more than 10% of the population.

1. “Keep your health” up is obviously naive to start with but also ask how many people are, say, hurt in car crashes or on the job every year and how cruel your advice would sound to them.
> Imagine if the computing revolution were in China instead of USA... we might all be coding using Chinese characters instead of Latin characters right now.

Nah. We would all be using a binary language based on I-Ching trigrams for "octal" representation, and 6-bit (hexagram) "words". A hacker's dream right there.
The cheat sheets exist because people aren’t learning regex. You don’t need to learn every flavor of regex, just the one or small number you need to know. And once you know the basics, the differences are very minor.
If it was banned, it would still happen, but not in the public eye.

A relative of a friend was a politician. He used lobbyists indirectly to work on issues. Say he needed help understanding a school textbook issue. He would call up his oil lobbyist, whose job it was to make him happy. It was definitely not his job to piss him off. He would quickly get a report on the textbook issue, probably written by the expert in the field.
>I've yet to find a reliable, reputable retailer that comes close to price-matching Amazon

I don't know if that's a fair comparison... do you consider Amazon reliable and reputable?
Amazon makes it really easy to accidentally resubscribe to prime, as well as accidentally subscribe to random products that have a subscription option. The dark patterns are such a turnoff.

I try to buy locally but sometimes I still need to use amazon, eg, a Self published book will only be available through them
My response is a facepalm, as i've grown tired of explaining "Amazon Marketplace" listings and the button you can push to hide all of them.
Having seen many professionals writing shell scripts. No they can’t.
> Why do they bring all of these instruments?

I think people are very personally attached to their instruments.
could you expand a bit? what are the unmet permanent needs
Racists don't use the term racist to describe what they do either.

Language policing is still big in dem circles.
I have found the bashdb plugin for vscode to be invaluable. It can step through, watch variables, break points and some other things. BashIDE is another good vscode add on that can take you to var definitions and format code (but I don't trust the formatter).
I think the economic incentives, rather than the culture, is what has changed over the past decade or so. As the article mentions - companies stay private and the probability of IPO is so low these days that working for a non-FAANG company is effectively return-free risk. Combine this with a high-and-rising cost of living and rising college debt and I would guess that fewer people today have the means to strike out on their own. Perhaps this will reverse should ZIRP end someday.
These are fair points.

POSIX shell being fixed forever though also means it will /never/ get "fixed".

Shell's silent-failure-by-default, implicit-by-default, principle-of-most-surprise semantics will always be there, and they are /bad/.

I have read lots of shell scripts, by many people, from the experienced UNIX greybeard to to the novice web developer, and they were almost all flawed. Pointing out the flaws, the devlopers of each level were surprised by them. It is close to impossible to write correct shell script, no matter the level of expertise, because the language offers neither semantics nor tooling that foster correctness.

Forgetting `set -e`, forgetting that it gets turned back off in subshells, quoting mistakes, pipefail semantics, you have to have made many mistakes to even /discover/ that these pitfalls exist (or use shellcheck, which will find some, but certainly not all of them).

Shell is a language that looks simple on the surface, but has 1000s of exceptions you have to master to write even minimal non-bugged scripts.

The lack of any form of reasonable data structures and strings being the prevalent data types also do not help. For example, NixOS's linker wrapper script (written in bash) was accidentally quadratic because of quadratic append-to-strings (https://github.com/NixOS/nixpkgs/issues/27609); and that was despite NixOS having many competent bash programmers. When scripts grow, these things happen.(Note that shellcheck does /not/ point out quadratic string appends; it can only find obvious mistakes and this is hard to detect in general). Fixing it was very difficult, and was not understood by many. If you have a language like Python that offers reasonable set/dict data structures that people understand and use intuitively, this is trivially avoided.

Finally, POSIX does not help much when the main thing shell does is calling other programs, and there are no guarantees on what the APIs for those programs are. For example, I have encountered many shell scripts that themselves are technically "portable", but they use arguments to e.g. `rm` that do not work on e.g. busybox, thus crashing the boot processe and resulting in hours of time lost for hundreds of people.

By not using shell, we can support that the next SOMETHING-standard will NOT mandate shell, but something better.
That sounds similar to what Knuth had in mind with literate programming:

https://en.m.wikipedia.org/wiki/Literate_programming
Convinced entire team on spa and microservice infrastructure, it made total sense for our company. Pushed for totally new tech in company and actually made it happen 6 months later. This was very fulfilling and now its norm.
As others have noted, the choice of both syntax (extremely elaborate, to the point of reeking of esoteric languages like Shakespeare) and semantics (scalar imperative language, JavaScript) seem to be a poor match for Classical Chinese, known for the brevity and tacitness of its texts.

I always thought that if for some reason one wanted to map an existing programming language into Classical Chinese (instead of coming up with something semantically closer resembling the latter), one could do worse than start with the likes of APL.

Consider the Fibonacci example: https://github.com/wenyan-lang/wenyan/blob/master/examples/f...

Is this really how you would like to use Classical Chinese to convey the idea of a Fibonacci number? Indeed, this form maximises the number of words one can use in a single definition; is there anything else for which it is good?

Here's an equivalent program in APL (also naively recursive, that's not necessary how I'd implement Fibonacci sequence):

{⍵<2:⍵⋄+/∇¨⍵-1 2}

If the argument is below 2, that's the answer; otherwise, compute sum of the function applied, in turn, to the argument less 1 and 2.
> many bots will only do one HTTP connection at a time (single threaded)

Is it only service admins who do such detective work, or do admins of intermediate nodes also try to filter out bots? I wonder if simple API calls wouldn't get caught in the crossfire.
Version without paywall: https://outline.com/SvtKVv
Very glad this was written and posted. However, it could have been shorter. If education were indeed the true social value, we could just improve the quality of public education, add an additional year or two to high school, and essentially fold the undergrad syllabus back into the public system. Simply, the purpose of college is to create a culturally separate managerial elite in society.

The basic problem is the legitimacy of the elite it has produced in the eyes of people subject to it. There was always tension, but code changed everything. PhD holding managers today are often functionally illiterate in their domain of responsibility, and that has a huge cultural impact.

There is reliable predictive power in explaining the culture wars of today as the reaction against a managerialist elite using radical cultural change in an attempt to dilute the bargaining power of competent working people, and to insulate itself from a working class from whom they are increasingly undifferentiated.

This is a pet issue of mine, and glad to see it's getting traction, as it's really the defining conflict of today.
correct me if I was wrong: the turn out ratio in local elections is very low, to the degree i feel meaningless.
Pull requests is not the only way to collaborate in a team. git also works with other tools for review and merging can be done by other means.
> Apple, a start-up at the time, would famously popularize PCs instead.

I have a hard time accepting the conclusions of this article when this one line is so inaccurate. It was IBM, a very old company even in the 1970s, that popularized PCs. Apple was barely a blip.
Imagine where we would be if the vision and dream of USB and Java came true. Sure, they're both around and doing great, but Java is still a pain to update and it took 20 years to get to USB-C.
"duplication is cheaper than the wrong abstraction"

i think i read that in POODR by sandi metz
It is terribly verbose in Chinese too. It is verbose because it's straight-up copying the style of ancient books talking about formulas for magic, without trying to optimize for ease of use. A less verbose (but still mostly gramatially correct) version might be like this:

有術曰「曼德博」。先得數曰「寬」，曰「高」。乃行是術曰。
What does this have to do with ttys or terminals though?
It has more to do with plot armor. You can't kill off your important characters. They are needed later.
The social benefit from more effective law enforcement can only be gained if the government makes a goal to completely defeat hacking and compromise of privacy.

It is possible to redo the internet and computer operating systems with safety as the first priority. We will need that for safe AGI anyway.
addio
Holy shit, I'm surprised they care THAT much about start date/end date. Like.. seriously? WTF? That's insane lol.
It’s abusive when it’s used as it was here to imply that it’s the worker’s fault for accepting bad working conditions, as if there aren’t many well documented reasons why that’s hard for most people.
Numbers forwarding means you can create whitelists. CallKit doesn't support whitelisting as you mention. Whitelisting with CallKit was the first thing I looked for in the Apple developer docs, and there was nothing on it, so I used number forwarding.
The article convinced me that UBI would likely be a more meaningful policy position. Some people (the majority, in reality) just aren't cut out for college. Co-determinism seems D.O.A if companies like Uber are planning on autonomous transportation: the underemployed working class is but a stepping stone to creating a company that depends on exclusively highly skilled, upper middle class laborers. Truthfully, there may be not much of a place for low-skilled labor if the service sector will be inevitably automated. UBI is too far left; education for all is palatable policy. And that's why the Democratic establishment is where it's at.
Part of the reason the Valley is so successful is because after work you can pop over to a meetup about your very niche expertise, or meet up for coffee with some old coworkers.

If you only come to the office once a week and otherwise live outside of the valley, that gets a lot harder to do.

I live in the south bay and already feel the pinch, as most of the meetups I'd want to go to are in San Francisco, about an hour's drive away. When I worked in SF, it was no big deal to stick around for a meetup or a drink. Now it's 1/2 a day's outing.
The recommendation I see in a lot of BSD guides and documentation is to use /etc/mail/aliases to make root's mail go somewhere else. Works slightly differently from ~/.forward
I totally agree with the article, but to me the saddest part of all of this is I'm unconvinced that a college education is actually even that useful. (I say that with a four year CS degree). Most majors, to be blunt, are pretty useless in terms of real world skills. The argument is "they teach you how to think". I don't know how you would even measure that, but it doesn't seem that true, especially since colleges are hotbeds of intellectual fads that are easily disproved by reality. The only prerequisite to learning to think is making an effort at it. College used to be a good signal for that, but now its not.

So we essentially created a "virtuous" class of "educated" people that aren't as smart as they think they are, talking down to people that are struggling economically by telling them that they need to spend 100k to "learn to think". It's amazing things have stayed relatively peaceful.

It's funny to me because arguably I am part of this liberal elite, and even I feel a lot of contempt and irritation towards my increasingly smug compatriots. People really need to tone down the "flyover state" and "redneck" rhetoric. I definitely didn't vote for Trump, but I'd be lying if I said I didn't get why people did.
Would be cool if you checked now. On FF mobile I installed "Dark Mode" which made the page black and the text white.
I also disabled images.
> applicants can afford to give HR bullies the middle finger.

Probably depends a lot on your location though unless you are aiming for companies that allow remote. Midwest Ohio vs. San Francisco. I feel like since the job market is so much larger, SF would be much more flexible when being picky about jobs than other places.
> compared to something like middle english, which modern readers cannot read at all, you can see that the chinese language hasn't changed all that much

It helps that ancient texts are usually not presented in the original handwriting (which has changed a lot over the millenia) and of course the writing system masks changes in pronunciation. If you speak Mandarin, try reading a text in another Sinitic language using an alphabetic writing system, e.g. a random article of the Hakka Wikipedia: https://hak.wikipedia.org/ Then consider how different the last common ancestor of both languages must have been.
I'm not sure if you're joking, but there are a couple of such protocols - IMAP being the most prominent.

As for opensmtpd, it should probably only reject, drop or hand off mail via LMTP. Then another daemon should deal with storage and provide access to mail.

You might look at dbmail.org if you want mail storage in PostgreSQL with IMAP support, for example.

Dovecot can handle incoming mail via LMTP, but needs roit to write to mailboxes, unfortunately.

I suppose you could give each user a suid binary to handle incommming email... Not sure if that'd be a great idea, though.

Ed: ironically, a change along these lines resulted in this bug. Maybe it would be better if opensmtpd only spoke LMTP, and never did any launching of a shell. Conceivably the LMTP daemon might have a similar bug, though..
The best part of startup culture is the idea of being able to create something that can grow big while starting as a small player. The rest is just marketing and envy over ceo bonuses.

My town doesn’t really have that culture, but we have a decent small business culture at least.
I love to program but I am a career switcher. All my professional experience is in logistics, I have a B.S but not in CS, also I am 41. By all means if you have any tip to get a H1B (I have heard is crazy competitive) let me know.
This would be trivial if we had more effective mass transit
Social Credit Systems, coming soon to a democracy near you
Yes it does. It won't ring you unless the caller is permitted to.
Probably a legal requirement to provide it, such as credit reports if used for employment or apartments, etc of providing a copy.
I had unknown/blocked phone numbers blocked so a deputy had to unblock her number to notify me my brother had died.

I would've been alright with a voicemail, tho.
Similar to your idea, I wish there was a news app that could break down evolving news stories into the stats. For example with the corona virus story, I'm able to track the progress of the number of cases, deaths, etc on this site https://thewuhanvirus.com/ without having to constantly check CNN or BBC and scan article for the latest numbers. I'm currently travelling in Asia and this info is important to read at a glance. Recently with the wildfires in Los Angeles, it would have been useful to have a site like this with stats on the fires, % contained, number of injuries, lost structures, etc.
What do you think the original 'vision and dream' of Java and USB were? And what does it have to do with updating Java and USB-C?
Can you please substantiate why you believe there to be zero expenditure associated with the MFI program? The MFI certification team at Apple do not work for free.
Hadn't thought of that potential benefit to the rust-analyzer work: I could get borrow errors upfront even if there are irrelevant errors in other areas of code.

(borrow checker seems like it is one of the last phases).
Good question. There are certain professions, and really only a very few, that prepare one well for the task of campaigning for office. Lawyer, military officer, business executive, actor, a few others. All of them are from the professional class, nowadays, with the partial exception of military officer.

Once upon a time, a lot more power was held by local politicians, who were often from the working class. Over time, more and more of that became centralized, and the ability to speak well in public is not something that even most professional class jobs prepare you for. Put a programmer up against a lawyer or a CEO, and the programmer will not do well. We not only have mostly professional class politicians, they are overwhelmingly from only a few of those professions, because there are only a few that prepare you to speak, from a script, to a large group of strangers, staying on message and keeping your message short and clear.