skysight-inc/HackerNews huggingface dataset:
Swift has a GC, what it doesn't have is a tracing GC.
The sand is mind blowing. Every grain is a mesh itself.
I sense a story there, tkyjonathan, care to share?
The original paper by Simonyi actually does describe prefixing with datatype. E.g. b for byte, ch for character, w for word, sz for pointer to zero-terminated string.

He specifically states:

The basic idea is to name all quantities by their types (...) the concept of "type" in this context is determined by the set of operations that can be applied to a quantity. (..)

Note that the above definition of type (which, incidentally, is suggested by languages such as SIMULA and Smalltalk) is a superset of the more common definition, which takes only the quantity's representation into account

So he is comparing to early object oriented languages where presumably Hungarian notation is not needed anymore because the type system of the language itself is rich enough to constrain the set of valid operations on the value/object.

So the "metadata" encoded in the Hungarian prefix is exactly what would be called type in a modern language. The idea of Hungarian was valid in a language with a insufficiently expressive type system.

I think the term "Typed Hungarian Notation" is really weird. Hungarian Notation is a workaround for a limited type system. "Typed Hungarian" is just... typed code.
I really appreciate keldaris' posts, as his experience seems to be very similar to mine.

Many simulation algorithms involve manipulating large arrays of data. Rust can check that your indexes are within bounds, but it can't check that your indexes are correct. If you access X+1 to get the element to the left of X, but you should have accessed X-1, then you have introduced the same sort of error as you'd get from memory corruption (and, frankly, one that is much harder to debug. Standard library assertions, Valgrind and ASan are no help at all if you're accessing valid data.)

Nevertheless, I found it helped a lot to compile with `-D_FORTIFY_SOURCE=2 -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_DEBUG` during my normal development. Among other things, that adds bounds checks to all container accesses. I leave them off in release mode, as my full-scale simulations already take multiple hours and I need the performance.
The answer has always been obvious. Facebook (and Google, etc) would rather keep the tens of billions of dollars in profit they make each year and keep growing that number, too.

They don't have need for "cost centers" such as customer support, moderation teams, etc. Facebook doesn't even have a large enough support team for advertisers let alone anyone else that might have some real issues with their accounts, which I think should probably be illegal. You can't offer a service and then not respond to your customers issues/problems, especially if they pay for it.

There definitely needs to be more regulation in tech regarding this aspect. These companies have all the money they need to solve some of these issues, and then some. They'd rather keep that money for themselves and try to enter completely different markets so they can become an even bigger monopoly instead, though (which is yet another good reason to put restrictions on this stuff, because the goal should be to minimize the number of monopolies).
> What does the Itaipu Dam's installed power have to do with stored energy?

Nothing. Was there something to suggest otherwise? I listed two weak points for hydro: Terrible energy density, massive land use.

My first reference supported the first point and my second reference addressed the second point. Land use: 1,350 square kilometres were flooded. The installed power was to give context of how big the plant is.
I hope things works out for you. Having a mom with PhD makes huge difference in balancing things out but these studies are not bogus. They have proper sample size, metrics, control group and there is high probability that hypothesis is plausible. I've seen several parents buy Disney Princess book set, movie set, doll set to their daughters. My heart often sinks. It's an extremely popular Christmas gift unfortunately and marketed with vengeance like nothing else. It's like a tradition of pregnant women painting baby room. They don't know they are inhaling potentially very dangerous fumes for fetus for hours on that can potentially lead to various birth defects including autism and asperger. Not all kids gets affected but some do.
Meanwhile, many European countries also make things available universally, without making everyone poor.
Yield improvements are great for business, but this isn’t a business question.

14% seems quite a large shift.

Separately, even if we assume that protein yield per acre is increasing, if calorie yield increases faster then eating the same foods processed in the same way make us gain weight when it previously didn’t. If total calories per unit of protein goes up 1%, 2500 kcal per day with the correct level of protein becomes 2525 kcal per day, which isn’t much on its own but it’s every day for your entire life and adds something like 18 kg/decade to your body weight. [0]

(This does make me wonder how we were supposed to self regulate body weight in the wild).

[0] assuming a 100g/500kcal bar of chocolate is a representative model of human fat cells.
That’s the most comment emoji reactions I’ve ever seen. I digress.
The alternative is to write SansI/O code (https://sans-io.readthedocs.io/), so that your program don't have to think about that.

Besides, you don't have to put async/await everywhere: if your code is not performing IO, it completely ignore this concern.

The problem is that most of your code is mixing I/O and non I/O code, and people just don't think about it. E.G: a django website is not just a web server, but has also plenty of calls to the session store, the cache backend, the ORM, etc.

Now you could argue that the compiler/interpreter is supposed to hide the sync/async choice to the code user. Unfortunately, this hides where the concurrency happens, and things have dependencies on each others. Some are exclusive, some must follow each others, some can be parallel but must all finish together at some points, some access concurrent resources...

You must have control over all that, and for that to happen, you can either:

- have guard code around each place you expect concurrency. This is what we do with threads, and it sucks. Locking is hard, and you always miss some race condition because it can switch anywhere.
- have implicit but official switch points and silos you must know by heart. This is what gevent does. It's great for small systems, not so much at scale.
- have explicit switch points and silos: async/await, promises, go-routine. This is tedious to write, but the dangerous spots are very clear and it forces you to think about concurrency upfront.

The last one is the least worse system we managed to write.
This sounds like the Nirvana fallacy. Just because parsing over validation is not perfect, it can still lead to significantly more maintainable code and safer and stabler system.

Pure validation has a lot of problems, namely that you have to validate the data on all levels for the invariants required at that level.
Speaking of garbage to not listen to...
This article was published by The Correspondent, a new media startup funded by members – if you'd like to read more by the journalists you can become a member (pay-what-you-like)https://thecorrespondent.com/ | or follow us on Twitter --> @The_Corres, @jessefrederik, @mauritsmartijn
I recently signed up on Twitter with a new account for a new project I'm working on. Like a few posts here (on HN) have highlighted, my account was disabled for security reasons (official work email, not a single tweet, email verified) and the only way to unlock is by adding my number.

I've been opening tickets for a week but they're all automatically closed. This gets me thinking, does it even matter if a SaaS product has a twitter handle for marketing and support?
If you sell a sixpack to a 17 y.o. you thought was 18 because they gave you a fake digital licence, that's one problem. If you witness a statdec making claims about a specific person because they gave you a fake digital licence, that's a different problem.
Handling missing values in your dataset
An article with only anecdotes on a country of 1bn people... BBC is a shadow of it's former glory.

Don't get me wrong, I'd love people moving from Twitter to Mastodon, but this article doesn't have any substance.
Some commenters on reddit are not so hyped by this PR piece.

https://www.reddit.com/r/science/comments/dssixi/inspired_by...
One thing to keep in mind is the fed used to do this all the time before 2008. It is considered normal monetary policy then and now again.

More details: https://www.fisherinvestments.com/en-us/marketminder/everyth...
After a certain threshold of processing power, you can just use earth as it is, pretty amazing
This isn't a situation for partisan tribalism. Everyone with connections to Epstein should be investigated by the FBI.

Also,

>Don't forget shooting firearms in pizza parlors

You mean the guy who fired a single shot to open a locked closet door because he thought children were trapped behind it . That was idiotic, but not an act of terrorism or motivated violence.
The genuine answer to your question is that their news sources haven't been demonising renewables and green government initiatives for the last 20 years (in order to prop up their fossil fuel sponsors) so they don't automatically think "communist, hoax, inefficient, boondoggle, political correctness gone mad, end of civilization as we know it, bloody hippies, etc." when renewables gets brought up. Instead they think "cheap, efficient, distributed tech that keeps getting cheaper and that I can use for energy independence on multiple scales" so it's not that they have any great distaste for nuclear, they've just not been trained to hate and fear renewables.

They don't for example, wonder if no one has thought to calculate the carbon impact of renewables, because they assume the scientists and other authority figures they trust who recommend it would have taken that into account. And if they did wonder, it's a short Google away, and their usual info sources would provide facts, not scaremongering propaganda.

That's why you'll rarely see a defence of nuclear that doesn't quickly degenerate into attacking Californian hippies, or government interference, or the collapse of Germany into a solar powered Islamic no-go-zone, or flat out denial that climate change is even a problem anyway" that they've read about in their highly reliable news sources. Generally they're more anti-renewable than pro-nuclear.
Expertise in the Age of YouTube
My Take on Agile Coaching Certification from ICAgile
The article is about the ethical/philosophical implications of having dead performers holographically “brought to life,” so Hatsune Miku isn’t really relevant to the topic.
8 weeks => 16 months,
2 months => 4 years

???

Doesn't seem consistent
On top of the world: Europeans say they are happier than ever
Related link: https://www.o-boot.com/en/

s.a. https://en.wikipedia.org/wiki/Vacuum_airship
Paradoxically, the reason why I can afford things is because I don't buy shit I don't need just because it's "$120 a year" and "not that much". It does add up. And then it also compounds. As a rule, I try to avoid buying things with zero (or negative as in the case of NYTimes) residual value.
> This does make me wonder how we were supposed to self regulate body weight in the wild

Finding food is uncertain, hard work.
20k * $1M is $20B, not $200B.
I think you're being downvoted because you made a pretty amateurish mistake: on HN you're supposed to say that you yourself can create a better GNSS over the week-end.
> Be respectful to all people and not just the ones that don’t inconvenience you.

This is a good ideal to strive for. However, people should not be getting fired, banned, excluded, ostracized or otherwise sanctioned over this. For example:

https://github.com/joyent/libuv/pull/1015

https://www.joyent.com/blog/the-power-of-a-pronoun

What happened in that pull request is completely disproportionate. These reactions and punishments will cause chilling effects. People are watching.
"We have had a legion of volunteers... who review uploads in exchange for in-site rewards, as well as the health of the community."

...or in exchange to see the stuff they can't get to see anywhere else? I wonder for how many of these "volunteers" this is the main motivation - is this a quasi-legal way to see illegal content?
Security assessment techniques for Go projects
I read this article before.

From the study: The largest was a 9.3 percent drop in the zinc level in wheat. They also found reduced levels of protein in wheat, rice, and peas, but not in soybeans.

Ok. A 9.3% drop in zinc on a per unit basis. First of all, not an alarming figure at all. Second of all, wheat is not a great source for zinc. It has phytic acid that prevents the absorption of zinc and iron [1].

Also says reduced levels of protein in wheat rice and peas, all single digit drops (again on a per unit basis more than made up for by increased yields under higher CO2). And again, these are not significant sources of protein. Soybeans are, and it clearly states that soybeans are not affected.

Plants evolved under CO2 conditions in the thousands of PPM. The carbon we're releasing into the atmosphere is ancient plant material. If you think CO2 has an adverse affect on nutrition, then you've got to explain to me how the dinosaurs got so big.

[1] https://www.healthline.com/nutrition/best-foods-high-in-zinc...
I'm stealing this with the caveat that it could put pressure on a developer to work out requirements, which isn't always what you want. If used correctly, to remove "gold plating" from an MVP, this seems like a great technique.

Another estimation trick that I've found to be very effective over the years is to start with the same sort of task breakdown and finger-in-the-air estimates. Next, start to make a mental list of all the things that could possibly go wrong with each of those tasks. Add those to the list. Most developers with some experience don't add these initially because they don't consider them to be "tasks", but can come up with a huge list surprisingly easily when prompted. Now factor in all the extra time for dealing with those unexpected-but-will-definitely-happen issues.

The original estimate is your best-case, since almost all developers tend to estimate optimistically. The new one is the worst-case.

A good rule of thumb is that the worst-case is 16x the best case, so if you got less than that, it's a good indication you didn't think of enough things that can go wrong. If it does follow the typical curve, 4x the best-case estimate will be a good expected-case (75% chance of success).

What this manager did right was prioritising the tasks, because estimates are just the starting point. The next thing is to know what absolutely must be done for MVP and what is nice-to-have.

If you have 3 weeks to launch an MVP then that MVP needs to be achievable in about 4 days. Otherwise you are setting unrealistic expectations. If you actually finish it in 4 days (unlikely) then well done. You can start adding polish in order of priority, starting with a load test in production to find out as many "unknown unknowns" as possible.
It is possible that a project is non-trivial to you but trivial to someone else, then that someone else could properly estimate it. Also most software projects are trivial so I don't see why estimations would be impossible, it is not like your typical react app is going to push boundaries on research topics. They might push boundaries to mediocre developers though, in which case it is a non-trivial project for them.

I think the real reason estimations are hard is that basically every developer is working on projects too hard for them. Like, if you are so good at your current job that you can reliably churn out good solutions with ease then instead of just producing you would move on to do harder things for better pay.
Not on the same scale as USSR. The less you do it the farther you are away from making everyone poor. Europe still has a lot of capitalistic elements to counter the equality plague.
This is great and tallies with my experience.
They do, but only at the expense of interoperability. Any "green thread" solution breaks down once you have to invoke code written in something else while allowing it to call you back. Async futures, on the other hand, can map to any C ABI with callbacks.

So until there's some standardized form of seamless coroutines on OS level, that is sufficiently portable to be in wide use, we won't see widespread adoption of them outside of autarkic languages and ecosystems like Erlang or Go.
Show HN: One easy-to-use component to build responsive timelines with Vue.js
Do they? Have you asked the people who created TCP/IP what they think about software patents?

It's mostly companies who want to profit from other people's ideas.
I suspect they didn't because the players need to be recognizable to the film goers. It's the same thing with movies about military pilots - they are filmed with the oxygen mask off.

(Top Gun helpfully had the name of the pilot stenciled on the front of the helmet! Sort of like why knights had a coat of arms so you could tell who was who and not hack off the limb of your buddy.)
Restarting the process frequently sounds like a very messy solution. It is not acceptable in all cases to restart the process frequently. For server software it is the rule that this is not acceptable. Also note that if your software is going to be used more it would need more frequent restarts. This will generally not make users happy. Maybe you could sometimes get away with starting a new process for every login. Memory usage will be higher in that case, though, perhaps unacceptably so. Also for software that is used on the desktop it would generally be frowned upon by the users.

I suppose it is possible to avoid garbage collection if you are willing to accept kind of old-style programming practices. You could have arrays of objects and when an object is no longer needed you don't deallocate it but allow it to be reused when another object of that kind is needed. I guess this would not lead to clearer code for most purposes. But, who knows, some people have been complaining about the lack of clarity in object oriented code.
I vouched for this comment, because I don’t see what was so objectionable about it. It seems like a genuinely held opinion, expressed in a relatively measured tone. If you disagree, reply with your reasons rather than trying to get it removed.
Google Enters ‘App Defense Alliance’ to Help Detect Malicious Android Apps
Evan You – What's Coming in Vue 3 0
I just think that "Self-driving Uber wasn't programmed to detect people outside of crosswalks" would have been both a more precise title and more respectful to the victim.

Sorry for dragging this out for so long!

On the off-topic, I highly recommend Orwell's brilliant essay "Politics and the English Language"[1]

It deals with the subject of how choice of words affects thought, and on the danger of canned phrases.

A parallel work, in Russian, is Канцелярит[2], by Чуковский (a chapter from his book).

If you've already read both, would love to hear your thoughts; if not, then hope that this would be a good thing you could get out of this conversation :)

(I think you'd enjoy reading both as someone who speaks both languages)

[1]https://www.orwell.ru/library/essays/politics/english/e_poli...

[2]http://vivovoco.astronet.ru/VV/BOOKS/LANG/LANG_6.HTM
Tech Troubles? Get by with a Little Help from Your Friends
I re-evaluate my stances rather regularly. I've switched on brands, politics, climate change approach, even countries to live. I don't think Google has some kind of magic stranglehold, it's just a company I like right now.
Does the UK not experience night time?
RAII works as long as you don't have closures, which are prevalent in higher-order/functional settings.

If I adhere to RAII, I guarantee that if I allocate something in a scope then it will be de-allocated when I leave the scope. But if I want to return a closure (a function pointer + state) then I can't de-allocate it myself.

I thing C++ and Rust are trying to address this kind of thing with move semantics and ownership. Perhaps functional languages will solve this kind of thing with linear types in the future.

I'm currently looking into 'defunctionalization', 'lambda lifting', etc. to see if they are viable alternatives.
Honestly, I think an Apple Watch (maybe the very affordable Series 3?) would be your best and most comfortable option. You can have your activites tracked by Apple's own first-party Activity app, which is likely the most privacy-conscious option.

I use an Apple Watch for cycling and several other activites. It isn't a necessity at all and one could debate the purchase for ages, but once you start using it you probably wouldn't want to miss all those small and frequent conveniences it provides in addition to the rock solid activity tracking.
Clickait headline without much substance
I imagine a Director of Compliance in the Russian or Chinese government has more authority to force people to comply.
In europe we have phone app for public transport, in my city, if your phone is out of charge they will help you charge it so you can show ticket to them.
That's a really weird assumption - if you're looking for dodgy videos it's trivial to find them the dark web. Volunteers who do the same jobs for companies like google or facebook frequently say they are traumatized by content they see - it's not just sexual stuff, there's plenty of really explicit gore and abuse videos that come through. And if you're the kind of person who gets off on that stuff then like I said, it's not exactly difficult to find on the dark web.

My point is - doing this like you said "quasi-legally" must be the worst way of doing it, as you're giving the company all your real details to be employed - the very second anyone suspects you're doing it for the thrills(maybe you are the only employee who actually watches every video to the end?) you'd be in deep trouble.
On further consideration I have no earthly idea who is correct but can't edit it at this point.
Ask HN: Developer-Focused CRM with a Solid API?
I want to integrate a CRM into a SaaS I'm building - https://kvdb.io - but many of the existing solutions are either too complex or don't provide a nice enough API. I'm looking to enable and record events from this kind of workflow:

1. User signs up on my site

2. User performs an action

3. Transactional email is sent

4. User clicks a link in the email

5. User performs actions in product

etc.

I'd like to see all of this activity in my admin piece, in a kind of timeline fashion to enable measuring product engagement and identifying issues (feature use, abandonment, etc.). I'm not sure if there are third-party services that enable this kind of tracking, but I'd love to pull all this data into my admin site rather than going to another site to view it, so I can enrich the CRM data with my own. I think I'd be reasonably happy with an API-only CRM!

How's everyone else doing customer management and event tracking for their SaaS apps?
Eh, many of the questions in Workplace are about FUBAR situations. It makes sense to take extreme measures in those cases.
We usually overestimate the short term impact of technological changes, and underestimate their long term impact.
My father knew a fellow who was having trouble with his teeth. His dentist convinced him that he'd be better off with all his teeth pulled and use dentures instead.

My father said he was very sorry he'd done that - no matter how bad his teeth were, they were better than dentures.

I remembered that story when I was 21 and the dentist wanted to pull all my wisdom teeth. I asked him what was wrong with them. He said nothing, but they were in a difficult spot to clean and I'd lose them by the time I was 30 from rot.

I changed dentists.

I'm old now, and my wisdom teeth are the healthiest teeth in my mouth :-)