skysight-inc/HackerNews huggingface dataset:
Talking points tend to include facts. I'm sorry if the facts are not helping your narrative.

Yes, the 1930s plant patents are a bit different. But they are still corporations owning IP in plants. It didn't end the world then, it's nothing but a source of faux outrage now.
> Because remote is hard, if it would be just about typing code then yes you could live in igloo in Greenland.

So is writing maintainable code with actual documentation, etc. And I find that there's a lot of overlap between good remote work and that sort of development.

It's a lot hard to slap together undocumented spaghetti and then hand it off to a coworker if you can't bring them over, point at a monitor, and redraw the UML diagram for the eighteenth time with dry erase marker.
This isn't how I remember it. I remember that prior to the scientific python stack, you had to pay for Matlab or mathmatica licenses. The scientific python stack meant that for essentially free, you no longer had to justify licenses at any financial or educational institutions. You could just load up your code and run it against your data. In academia this meant that every student could do their homework on their desktop or laptop (if they were motivated). Even in financial companies, the decision was often made to limit the number of licenses - and in most cases they weren't used to actually run production jobs. Quants had to translate their work to another language with the help of their developers.

With the scientific python stack you entered a new world with unlimited seats, you could at least try to run the same experimental/exploratory code with minimal changes in a production environment, etc.

So in short it didn't need some tentpole user/customer/exemplar. In almost any situation it was free and it started making money as soon as it was downloaded installed and run.
I agree with what you said but how many people can afford to have families in hubs like you assume?
Eye damage repair:
https://www.biorxiv.org/content/10.1101/710210v1

Also, the cornea does heal from some damage, so clearly it's not just passive tissue.
Imho, the WebAssembly community should focus on the missing features multithreading and shared memory. That way, we could run arbitrary code, written in arbitrary languages, and we could just compile existing code to the platform without problems, saving lots of developer time.
I haven't given Unison a try so I won't dismiss it outright but to me having to explicitly propagate your change to your entire codebase before you can run anything doesn't suck at all, it's actually the killer feature of statically typed languages.

I've written big applications in python, every time I made a significant architectural change (which might not even be huge code-wise, just far-reaching) I feel super uncomfortable. I know that I have to follow up with an intense testing session to make sure that I go through all code paths and everything still works correctly. Even then sometimes the testing is not thorough enough and you end up with a regression in production.

As a result I tend to avoid these types of changes as much as possible, even I believe that the application would benefit from them.

Meanwhile in Rust it's a breeze. Yesterday I decided to make a small but far-reaching change in an emulator I'm writing: instead of signaling interrupts by returning booleans, I'd return an "IrqState" enum with a Triggered and an Idle variants. It's more explicit that way, and I can mark the enum "must_use" so that the compiler generates a warning if some code forgets to check for an interrupt.

It's like 4 lines of code but it means making small changes all over the codebase since interrupts can be triggered in many situations. In Python that'd be a pain, in Rust I can just make the change in one place and then follow the breadcrumbs of the compiler's error messages. Once the code builds without warnings I'm fairly certain that my code is sound and I can move on after only very superficial testing.
I have placed it behind cloudflare. Thanks for the feedback.
> I bike 15 minutes to work rather than commuting 2 hours, because my work pays me enough to live close by.

For now. Unless you marry another professional, it will be difficult to keep that commute if you decide to start a family.

Part of the problem with the Bay Area and NYC is that it's cradle-to-grave unsustainable. That's not to say people don't make it work, but it's unlikely that the average tech worker in those places has replacement-level fertility or will hang around the area with their kids and grandkids to form a multi-generation household.
People expect their WebAssembly applications to run on more platforms than just Microsoft Windows. There is a reason why web browers have their own graphics API for example. DX12 (and previous version) is the only first class API on Windows. Metal is the only first class API on Mac/iOS. Vulkan/OpenGL are only first class on Linux (and friends) and second class on Mac/Windows. So which API are you going to choose? You'll have to choose the most popular, all or a newly created API that is first class in every compliant web browser. The same thought process happened with I/O devices and WebAssembly itself.
From the BBC audio, about Canada:

> In 2017-2018, 3.6 % of criminal cases in adult courts led to acquittal, but 62 % led in a guilty decision, and 1/3 were withdrawn or subject to a crown stay.

To be fair in their comparison, they should have mention withdrawals in the Japanese courts. In 2016, 62.4% of the criminal charges were withdrawn[^1].

So, comparing the conviction rate on the initial charges (meaning that withdrawal of charges in taken into account):

Canada: 62% of the initial charges led to a conviction

Japan: 38%

Comparing the conviction rate excluding withdrawal:

Canada: 95% (62 out of 65.6)

Japan: 99%

As noted in the BBC audio and pointed in the article, Japan's system is unfair, but I think the rest of the comparison in the audio was biased.

[^1]: https://www.nippon.com/en/japan-topics/c05401/order-in-the-c...

[edit: messed up the 62% of Canada]
What about OpenGL?
Emmy Noether probably also warrants mention.
That's not true at all: as a kid, I had to do inordinate amounts of reverse engineering precisely because I didn't have sufficient documentation, and what little I did have was in a foreign, non-English language I did not understand! I would have loved to have had books on how to program!
Never? lol this guy is joking
This parallels the encryption debate somewhat. Govt says 'we need a backdoor to your messaging system/phone to catch $criminal, trust our $system not to abuse it'.

Systems like Signal do not try to solve the problem of govt abuse. Instead, it constrains govts by making them find other ways to conduct surveillance, expanding the task of mass surveillance to one of creating implants for O(n) phones.

It's true that you can't prevent any University from seeking out dark tech patterns, but at least have them make that choice. The community can then have them accept responsibility for that.

Obviously legislation is needed to constrain rempant privacy violation, and we seem a long way off that, especially in the States and the UK. In the mean time, engineers should examine the ethical basis of their work, and consider how it effects their standing in society.
"Alpha" means dominant, the best. The best chess player, the best go player...

https://en.wikipedia.org/wiki/Alpha_(ethology)
It will eventually be nice that I don't have to foot the tax bill for superpower expenses.
It stinks how? You can see those type errors at compile time, or your users can see those type errors at runtime.

One of those is worse.
No it isn't, he right. It's child abuse. Not Swift, but Java is definitely child abuse.
> The whole idea of remote working to arbitrage cost of living falls apart if you are in any way social. [...] I don't want to live in the middle of nowhere and earn 10x what the average local does. I want the people around me to be roughly on my level and share my interests.

I don’t really prefer to make all of my friends within the tech/academic bubble that I work in. I would feel weird if I didn’t see my coworkers, but I’ve made a point of finding activities that bring me into contact with a range of different people, and I think that makes my social life more interesting.

I was lucky enough to choose a career (medical physics) that takes place everywhere, but I could see remote work being effective for people in other fields.
It's not about performance but about convenience. Having a way to plot single pixels with the CPU without a lot of boilerplate code to setup a 3D API context, creating textures, vertex buffers, shaders etc etc is a good thing to have in many situations.

That this is not a good way for doing more complex rendering tasks seems quite obvious (e.g. in the long run this cannot be the only API for covering all sorts of rendering, but it happens to be a good sweet spot for getting anything on screen at all, and not having to deal with an overly complex rendering API just to get some 2D image data rendered).
Ask HN: Stem for a Toddler?
Hello Adults

Any ideas/guidelines/resources on how to introduce and maintain learnings for little minds in the field of Science Technology, Engineering and Maths?

My son is two and a half and play and frenetic fun are permanently at the top of his agenda of course.

I'd like to take him to the Science museum in London (I've heard the basement is where it's at)

Any thoughts on the topics welcomed. I realise there is plenty way to go from 2 1/2 but interested on how to form a foundation.

Thanks!
> writing it in Rust, because why not

I think this is the problem rather than static typing or rust.

Can you tell me what do you want your ORM to do?
...And then some. That would be enough for me to report the abuser to child services.
This is amazing! Nice way to visualise visa friendly countries on a map. Good job! Now visa list has become my go to site for finding visa requirements
Entropy as a Service
The article is from 1997. Every C++ developer will agree that the area surrounding owning raw pointers is chock-full of footguns, but that area is avoided in modern C++, both in theory and in practice.
So, someone had lisp, thought "I want to teach people programming", and instead of just teaching lisp directly, chose to implement something quite different in syntax and spirit?
Historically speaking. But these days having that is not enough. Russia is still technically a superpower but see their actual power on the world stage. Without public support and strong economical and political ties you’re just a madman with the biggest gun. So unless you’re willing to use it against everybody and go to war with the world your status as a superpower is fluid.

Do you think the US is dumping all those resources in Europe out of the kindness of their heart? Why would a superpower do it if it didn’t need it? These days military power can only be used sparsely if ever against the civilized western world so it has to be “monetized” in other ways. By offering it as a service in exchange for service (or servitude, depending on interpretation).
Wow, so parking for 130 minutes in a 120 minute spot is breaking the law now?

There was I thinking it's a contractual dispute.
> countries where I have spent a lot of time and have gained any real experience dealing with the police, they have proven to have a relatively genial and pro-community outlook, aiming more to help people and prevent harm

Where have you been?
Compelling Science fiction is back
Checkov: Prevent cloud misconfigurations during build time
That's been my experience as well. I've worked remote for a few years and love it because I'm fine without the social aspect of work, but most of the people I know left their remote job in under a year because it felt lonely and isolating. Anecdotally, it seems like married people and homeowners tend to like remote work because they have extra free time and a spouse to talk to, whereas the single people I know would quickly start doing their remote work at Starbucks or pubs with free WiFi because it's the only way they'll see another person during the work week.
Numpy was working fine and effectively for a long time, ruby had narray but it wasn't as good (less documentation and such).
Then scipy was the same. Then pandas etc etc.
Ahh, yes that would be a problem.

On the other hand, wouldn't a ddos be visible in the logs?

Logs should be checked centrally anyway, so a 30 second flood of messages should be visible.

But in the end, you are right that it will be hard to do this the right way.
Yes, some programming languages take this approach but I don't think that prototyping is as easy in such languages as it is in a dynamically typed language (e.g. Haskell vs Python).
You're being downvoted for missing the obvious sarcasm.
> The best I've seen a type system do on user input is blow up at runtime and that's not good enough for me

Then you haven’t been looking closely enough. The article addresses exactly this wrong argument.
Props to OP for launching, it looks like this tool has some real potential. I think low-cost web monitoring is a great idea and caters to what is otherwise an under-served market.

...which is why I've been building a similar tool [0] that's currently in private beta. So a bit of a plug: if anyone is looking for an alternative or just wants to try something different, feel free to send me a message. Contact info is in my profile.

And if anyone from Brandchirps wants to chat about this market and our respective projects, please get in touch. I sent you all a message and would love to talk.

[0] It's not public yet, but here are some screenshots to give you a sense of the similarities+differences between these tools: https://imgur.com/a/Sxpt2An
There's at least one large tech company that has located themselves totally outside the typical tech hubs - Epic Systems, in Madison. I interviewed for them after graduation but ended up taking a job at Facebook in Seattle.

The offer was for half my current salary. They tried to argue that with the cost of living adjustment I could buy a house, but what 22-year-old wants to buy a house? Locating in Madison is kind of a physical manifestation of their business strategy - avoid any competition, pay sub-market rates and issue strict, possibly non-enforceable non-compete clauses.

It works for people who really want to live in the Midwest. I think there's a spectrum between "live to work" and "work to live", and I think most ambitious college grads actually want many opportunities, for a while at least.
As someone who codes in Ruby daily this is my by far biggest issue. Ruby's performance is pretty good (I do not use Rails or ActiveRecord) and while the state of concurrency is not ideal it is not really an issue in practice for me, but the lack of a proper module system forces me to invent unnecessarily long and convoluted names.
>> Since the company doesn't do business in the EU, the GDPR can go get knotted.

That's not how international law works though, especially when wielded by a large economic block. If the EU wants to put pressure on a company the pain is harsh. For instance they can blacklist the company and it's C-suite from international banking and ask any in-treaty country to extradite or arrest employees.

Also are you admitting to breaking EU law and moral/ethical codes on HN ?
If convenience is what you want, that can be provided by a 2D canvas. This could even support a "soft framebuffer", i.e, a pixel-perfect canvas taking up the full screen, or some well-defined window inside it. But that would not be a low-level rendering API, of course.
OpenGL is on the way out, and for rendering 2D image data it requires too much setup code (need to create the GL context, a swap chain, a texture, and (unless GL 1.x is used) a vertex buffer, shader and setting up tons of render state).

For 3D rendering, WebGPU would be the better option to support in WASI because it has standalone native implementations:

https://dawn.googlesource.com/dawn

https://github.com/gfx-rs/wgpu

But for blitting CPU-generated 2D image data to the screen WebGPU is also sort of overkill (of course it would be possible to create a much simplified wrapper library in WASM).
Based on user surveys I've completed for them, it seems they are at least exploring the idea of releasing a Heroku-like service.
Why did you decide to use a system programming language to build a web api? That's 100% the wrong tool for the job.
There is no reason why the same would not be possible in a statically-typed language.
Mulan is a corporate product that killed itself by fake publicity
Indeed, thank you for!
"The United States has met the target, and dedicated 3.36 percent of GDP (around $664 billion, according to NATO figures) to military spending in 2016." [1]

1. https://www.cnsnews.com/news/article/patrick-goodenough/us-p...
On the one hand, pebbles are more like spheres than like cylinders. On the other hand, they’re different in that they can only lose weight, whereas this can also grow.

I guess the end result would depend on the shape of the surrounding cave and on what fraction of its volume the object would eventually fill. I don’t see a tumbling cylinder made of ice inside a hollow sphere filled with icy water remain cylindrical in shape, for example.

On the other hand, inside a relatively tall cylindrical space where the water is below freezing temperature, things could be different (does the production of M&Ms involve tumbling?)
Software engineers, what did you wish you knew before joining your company?
Calling all software engineers/web developers, what things do you wish you knew about your company before joining that you found out the hard way after joining?

And how do you think you could eradicate this problem in the future?
"On your level" just screams pretentiousness. Since when is money the measure of a man anyways?
I'm not sure I understand what you're saying. There are two core principles behind WebAssembly. First of all you can run low level programming languages like C on any architecture. This is possible if the code is available and you are willing to compile the C code before installing the application (see gentoo). Secondly the libraries/APIs that the program depends on must be available.

What you're saying is that every vendor shipped their software with source code and only used cross platform APIs. Is that right?
CSS Icons. Customizable, Retina Ready with API and NPM
This already exists in Haskell. Firstly, Haskell has type inference so you can write entire programs without any type annotations. Second of all, since type annotations actually help to document your code, it’s recommended as good Haskell style to annotate all top-level definitions.

To aid you in the latter task, you can press a key in your editor to fetch an automatically-inferred type for the name under the cursor and insert it into your code, then refine it as necessary if you find it to be too general (inference always gives the most general type possible).
coding standards, validity of the bullshit that recruiters were spouting and whether the managers were competent or not.
“relatively stable”
You didn’t use itunes much did you?
Blacklist is certainly missing. I want to filter out garbage sites that somehow hacked the SEO game.
Sounds like your country is the problem.

The "young people" should move or change the rules like they do in other countries.
"The existence of old people is not the cause of unemployment."

Perhaps you meant to post this under someone else's comment, because I didn't claim that the "existence" of old people was "the cause" of unemployment. However, if a 75 year old man retires, it opens up a job for anyone who is younger, be it a 20 year old person or a 55 year old person.
I don’t think that’s correct. The author’s point is that structural typing is possible in statically-typed languages, but isn’t a thing in Haskell.

To learn more, Google for “Haskell row polymorphism”.

The author correctly points out that structural vs nominal is a separate argument from static vs dynamic.
Crazy how Nintendo was cutting edge innovation but has completely fallen behind.

I have a hard time considering themselves a video game company over a marketing company since GameCube.
EasyArbitrage: Tracking arbitrage opportunities in Telegram
Coding standards are probably a myth.
So to the point of your first edit that is basically what we demo here in regards to GitHub we have some metrics in regards to the repos we've been tracking and we have various knobs that control how fast a top result would degrade from it's position while trying to maintain topical relevance in the results. The difficult part is with GitHub you have some canned metrics you can use as an approximation for quality and novelty that aren't immediately obvious for the rest of the web. We have some thoughts in mind though of how we can tackle that.

For number 2 it's interesting that you mention that, our initial inspiration for this was the awesome lists which if you look those up are hand curated lists of different topics that people have put together. We wanted something wider in that we want to be able to accommodate a much wider array of interests and we though by figuring something out algorithmically we could do it for anything we've crawled. What we didn't like about those lists is they're static, the top item in the list is going to stay that way we wanted to create something that will refresh itself and provide continuous use in discovering new things about some topic of interest.
The plan9 one is short and sweet, but what I don't like is that it doesn't support the dashdash thing that unambiguously marks that rest of the arguments should be interpreted as files and not flags. Needed for reliable defensive shell scripts imo.

You may say "it has no options anyway" but other cats do. And you may want to add options in a future version.
To reinforce your point: static typing doesn't just force you to fix some bugs earlier, but it also forces you to spend more time doing design upfront, often when you still don't have clear specs. That can be a big drag when you need to do a lot of experimentation/iteration.
The biggest problem is their coercive and brutal interrogation tactics, which result in false confessions.

There was a story a number of years ago about a cyber criminal who hacked victims computers to commit crimes, and then taunted the police about it after they forced false confessions from the hapless owners.

https://www.bbc.com/news/magazine-20810572
I am not sure I understand what are the strongest motivations behind "compiling to categories". Is this an improved formal verification motivation? What does it gain over existing programming languages? In what scenario does a working programmer decide to utilize these concepts? Genuine questions, btw.
The first yes, the latter no.

I also freely admit to breaking a lot of blasphemy laws.

None of them are laws where I live, so I won't ever get extradited.
> Trump has zero interest in eliminating NATO or reducing it. It's just another case of Trumpian bluster.

And ... Trump has delivered on more promises than any American president in history. [1] I don't think he's bluffing on this either.

1. https://www.washingtonexaminer.com/washington-secrets/trumps...
I have worked with a lot of product managers, but I still find myself unable to understand what value they bring.
It increases the distance between the engineers and customers. This eventually leads to making wrong short term decisions because PMs do not understand how to actually build a product. I had better experiences when engineers made product decisions.
If you sold this as an add-on to Asana -- elegantly handle the syncing between each task and Slack -- we'd subscribe.

There's no way we'll switch task managers just for this feature, though.
Sorry Elon Musk, but You Don’t Get to Decide Who’s Not a ‘Real Person’