skysight-inc/HackerNews huggingface dataset:
> Sure, but how many applications are you running? Let's say you have 20 applications running at 200MB each that's 4GB (50%) of your available memory with an extra 4GB for spiky workloads (if you have 16GB it drops to 25% available memory usage).

A bunch. Most of them in the background. A lot of them in browser tabs. Good chunk of them use way more than 200MB.

Some applications a typical person may be running that will each use more than 200MB of RAM: garbage audio "control panel" that came with the driver, garbage video card "control panel" that came with the driver, Skype, Steam/Origin/GOG/Ubisoft Connect/EA whatsthename, possibly all of them at once. Facebook (in browser). Messenger (in browser). GMail (in browser). Couple of news articles (in browser). That's all before starting to look at whatever the user currently needs to run to accomplish their goals.

A different example: two years ago, I had a desktop with 8GB of RAM, on which I worked on a software project (remote job). I had it running Linux and trimmed of most of RAM-consuming things, and still I could only run three things - Emacs, our backend, and a web browser with our frontend, Slack and some HN threads. Anything above that would exhaust available RAM. Slack Desktop was out of the question. That's how I discovered Ripcord - turns out you can write a perfectly functional and ergonomic Slack client with close to zero memory footprint, if you give a shit.

Of course I upgraded my machine as soon as I saved up some spare cash, and I sport 32 GB of RAM. And guess what, I've managed to exhaust that too! Thanks to software having memory leaks. The difference between 32GB and 8GB is that I can run some software for 8 hours vs. just one, before having to restart it.

I could go on, but I'll also end with this point: 4GB of RAM is still frequently seen in cheap laptops sold today, and of course common in laptops sold few years ago. This is the kind of hardware a typical non-tech person is going to have. Software bloat directly limits their ability to multitask on their machines.

FWIW, I'm not dismissing VSCode because it uses 200MB more of RAM than it should. It's a pretty lean piece of software for the features it sports. But most modern software is not like that.
I think its wild that when the absurd energy consumption curve of bitcoin used to be brought up the defense was "you're blowing it out of proportion", whereas now it's "so what.. don't you have a fridge?"

(Same pattern I recall about climate change, ice caps melting, etc. Deny until it's impossible and then dismiss instead)
I really really hope that this does not end up in people abusing generics in Golang code and making Golang code harder to read. The biggest argument of Golang in my opinion is that it is extremely easy to audit and read and understand at the moment.
Yes. FWIW, I've been in the recent position of not making it past multiple rounds with top tier companies. And of course, it hurts to get rejected.

A mentor of mine essentially said to me it's not personal, think of how much each of those engineers are making and how much it costs to interview you. If you didn't leave a great impression (and I fully admit that I wasn't on my game), it's cheaper to move on. A bad hire is very costly in terms of money/time/energy.

At the end of the day, there's other opportunities. Plus, there's nothing that says given more time improving oneself, one can't land the opportunity they were looking for.
But when gas prices fall people either move those savings to cheaper, less efficient cars or get more satisfaction out of their driving?

Whereas there is very little change in the bitcoin mining, unless you have fetish for long zeros in hash values.
> I'm thinking of Rob Pike

I do not remember him being against generics. He is the one who contacted his former colleague Phil Wadler to help with the theoretical validation of the type parameters proposal. In his talk about the Go 2 draft specifications (back then the proposal was still based on contracts) he was positive that a good design can be found.
(*) https://www.youtube.com/watch?v=RIvL2ONhFBI
I've bookmarked directions for it. For the admittedly out-of-date High Sierra, for instance: https://www.howtogeek.com/285922/how-to-create-a-bootable-us...
Programmatically retrievable via

whois -h whois.radb.net -- '-i origin AS32934' | grep ^route

Source: https://developers.facebook.com/docs/sharing/webmasters/craw...
First, you have a bunch of ideas that you're trying compose into an argument, you were not successful.

Second, Bitcoin solves the problem of digital exchange between non-trusting parties, this is a very hard problem that didn't have a solution before Bitcoin came around, that's why it exists and it's useful.

Above, you do weave U$ Dollar throughout, let's use it to explain Bitcoin. Currently the trust-less exchange is solved by holding assets which others trust. This means that if you have $100 you can show it other people and they can see that you have it and test that it is really $100. The reason $100 is $100 is because USA makes sure that is true. Now, non-US people are not the happiest that the US dollar is effectively the world currency. This has roots in WW*, Bretton Woods, etc., beside the point for our needs. The biggest problem is that US controls the dollar supply, just in the last year the supply has increased by ~25%, making everyone else'$ cheaper. If instead the world currency was Bitcoin or some other cryptocurrency, one entity would not control the supply, the supply would be controlled by algorithms, which are easier to understand than some old white men. To me the last point, about algorithms, is enough to make bitcoin useful. No matter how much we fight it the world is going digital, and why would money be an exception?
Fowler and Beck in particular have been massively useful to me recently. Refactoring and TDD by example are wonderful books, and completely changed my approach to software.

I also love Feathers and Working Effectively with Legacy Code, but that might be more of a niche taste ;)
Yubikey 5 series have some 20 extra slots you could use to store more keys. I'm not sure if yubikey-agent would have out-of-the-box support for that, but choosing a slot is just a single integer in the code, and you can enumerate them all too.
PHP was also hugely successful, success is not the criterion by which this kind of feature should be decided.

The bottom line is that generics allows the production of safer, more robust, more evolvable, more documented, more performant, code.

Along with static typing, generics are simply a feature that no language created recently should be without.
> Let's count - 3rd-party patmatching libs for Python exists for 10-15 years. And only now some of those people who did their work as "third parties" came to do it inside mainstream Python.

Well, somewhat tongue-in-cheek, why not introduce a macro system into Python which allows to experimentally implement such syntactic changes as a library?
Tesla made me give a presentation, that's the only time I've encountered this request. That was fine with me. The presentation bit went well and they were an easy crowd.
Someone else got the job though.
The problem is more fundamental than that. We cannot solve climate change by subtraction (eliminating things, usage, consumption, fuels, factories, etc.). We know this with absolute certainty through at least 800,000 years of highly accurate ice core atmospheric data.
growth is usually in percent. If you make $1000 more dollars per month, it doesn't mean the same thing if you do 1M ARR or 10k ARR
I think there is some nuance. The fundamental value of wheat is linked to its ability to feed people. In other words, it has concrete qualitative value to human existence, with natural scarcity.

BTC's scarcity is set by algorithm and BTC provides no value other than being a store for value.

USD's scarcity is set by the printers and databases at the Federal Reserve, and its value is derived from the faith that the US economy and government will honor its value.
It's been years since I had Facebook and Instagram. I stopped whatsapp recently, no longer have Imgur on my phone, etc, etc.

Slowly I'm getting my attention span back, Only recently have I been able to read an article online completely again.

It's bad for you. Truly. It's an addiction and a hard one to get rid of.
Sure, they're flammable.

But the amount of BTUs in, say, packaging, is negligible, because it's so lightweight.

When you combine lots of recycled packaging into dense bricks, it becomes a lot of dense BTUs, so can provide a lot of fuel to a fire.
I know it’s not a popular opinion, but one thing I love about Perl and wished more languages adopted was the way how variables and functions could be prefixed by a special character (‘$’ for scalars, ‘%’ for hashes, ‘@‘ for arrays and ‘&’ for functions, though the latter was optional). Perl had a lot of properties that made it look a lot like executable line noise but those prefixes did help with readability in a way that a lot of more readable languages lack.

In the case of Go and the example you’ve given, if ‘W’ were a function then the code should read like this:

a, b = w() < x, y > (z)
> When Java was considering generics, there were two major proposals out there. Sun decided on easily the worst one: type erasure. Now we're stuck with it.

Though using type erasure may have made the JVM a better target for other languages.
Golang needed sum types (for options) and match statements (python got it after all...) way before it needed generics. CHANGE MY VIEW.
Ask HN: Why are we expected to train Google's NN for free through captchas?
I keep seeing the captchas more and more whose obvious purpose is to train their self-driving NN, and they're getting out of hand. Sometimes I have to work through 5+ images. How is that legal that they can just interrupt me on a whim and ask for me to do work for them? Is there an alternative solution available?
The main difference between the accepted proposal and the original proposal is that the original proposal introduced contracts and the accepted proposal folds all that functionality into interfaces.
Interested as well. I’ve heard a number of tech companies use react native on iOS targets which allows for easy reuse of components developed for web UI, and any mobile... certainly where I’d lean given the choice based on current information.

There was an engineering blog post from discord a number of months ago discussing their use of react native bottlenecking iOS app performance, and they ended up converting some key react data structures to native iOS constructs within the react native app and crushed those bottlenecks. My takeaway was that developer ease and reusability should be prioritized until you hit a performance wall at scale such as discord did, at which point you’ll have the money to pay other engineers to optimize the important parts of you don’t have the time or know-how ;)
M1 support coming out is great! I have been fighting with it after starting a new job last week.
The stupidest thing is that `-c` gives you no information about what you're approving. All an attacker needs to do is race an actual ssh call, and you'll happily okay it.
FreeBSD 13 will be significantly faster than FreeBSD 12
> You can't really teach "mobile engineering" in abstract like you can with databases or computer vision or whatever.

Sure you could. "mobile engineering" would just be a study of solving computer science problems with relatively low resources, a finite amount of power, etc. You don't need to make iOS/Android apps to study this. Many lessons I've learned while solving problems on mobile apps can be easily transferred from platform to platform. They weren't Android or Chrome specific for example.
Agree with you on the generics, they make code harder to read and the biggest selling point of Golang is that it's easy to audit/read/understand.

IMO Golang needed sum types and match statements, but it didn't need generics.
Show HN: I built a better box-shadow generator
Yes, it's a powerful and flexible mechanism. The problem is - how many people know (in detail) how to configure all of this power so as to take best advantage of it? My subjective perception is a that the answer is something like "a very small percentage of Java developers".
Kind of neat. Why not async and TPL instead of all the manual locking?
Flutter web simplifies web app development in this regard. It's not fully mature yet but I recently wrote a web app using Flutter web that had 250k users in a week, and it works beautifully.
And a separate copy of `append` for every possible type :)
Yeah, it's a chicken and egg problem. Old software doesn't use many cores, and even new, single threaded one doesn't (Javascript, Python, Ruby, etc.).

Because software doesn't really need many cores, no need to create CPUs with many, many cores.

I imagine the cycle's going to break at some point, after all we can only ignore having many cores for so long. Especially that now even mobile devices routinely have at least 4 cores.
This is also why Mac apps built using frameworks other than Cocoa (or Carbon) never feel quite right!

Sure, you may have recreated the copy and paste menu so it looks and feels identical. But did you remember to handle .clipping files? What about File > New From Clipboard? What about the system-wide custom keyboard shortcuts? Oh, and don't forget to make it all behave properly with Voiceover!
Savvy, but not intelligent. His brain is heavily optimized to be skilled at the particular American environment of celebrity worship, mixed with perceived business success. He is able to capitalize right now on that, but I'm not sure there is an adaptive intelligence in there.
Exactly. It was IMHO pretty authoritarian to say "you dont need generics" and then use it yourself in the standard lib.

But then Go is not a public place: it's private domain of Google.

I decided long time ago I dont want to learn a private tool without being paid.
Clubhouse: The Reinvention of Party Lines
‘Party Line’ Redux: Sometimes Reinvention is a Shortcut to Innovation

Rick Robinson

I entered a time machine recently, with the ticket to ride being my phone — naturally — and traveled years deep into the last century where I fell into a good old fashioned … party line?
He's commenting on the fact that no one here seems to understand the author did ZERO UI/UX WORK. He wrapped an existing tool.

Made something incredibly useful, but wrapped an existing tool. The praise is completely misguided.

I prefer a world where people get praise for something praiseworthy. Not an army of people who say things like "take a swig of positivity buddy".
The correct comparison is with the transaction and storage costs, in electricity, of storing gold in fort knox and moving it once a century in a boat across the ocean. Tesla's 1.5 billion USD in bitcoin probably won't move in your lifetime.
Well, then you also know he just didn't see any good implementations of generics, yet. Let's hope this gets good!
You forgot the link... would like to read.
Oracle’s own secure coding guidelines for Java [1] actually now recommend adopting a capability-based approach rather than relying on SecurityManager:

> FUNDAMENTALS-5: Minimise the number of permission checks
Java is primarily an object-capability language. SecurityManager checks should be considered a last resort.

(Note: quite a lot of Java’s standard library is not designed along object-capability lines so you should take this advice with a pinch of salt).

[1]: https://www.oracle.com/java/technologies/javase/seccodeguide...
I'm guessing #2 is probably closest (to be charitable). The required skill may have been a soft requirement for a candidate who otherwise wowed them but, as they moved through the process, that just wasn't the case.
And the second paragraph:

"Contractors accidentally destroyed the plug holding water trapped inside the mine, which caused an overflow of the pond, spilling three million US gallons (eleven thousand cubic metres) of mine waste water and tailings, including heavy metals such as cadmium and lead, and other toxic elements, such as arsenic,[5] beryllium,[5] zinc,[5] iron[5] and copper[5] into Cement Creek, a tributary of the Animas River and part of the San Juan River and Colorado River watershed."

Note the words "contractors" and "accidentally". Also note that the EPA has taken responsibility for the accident.[1] If you think this reflects poorly on the EPA, you may wish to have a word with the United States oil, gas, and chemical industries.

[1] Yes, and refused to pay "on grounds of sovereign immunity, pending special authorization from Congress or re-filing of lawsuits in federal court."
void * is very useful as an opaque pointer type. For example, it's used all over the place in collection implementations and user-defined arguments (e.g., callbacks, pthread_create).

It might not be used much in the stdlib (which is relatively small!), but libraries and applications rely on void * heavily in my experience.
You clearly didn't read the article, since they call out the two companies who supply this type of technology to law enforcement organizations.
"...turning into"? Let me think back to ideologies I was taught in school over 40 years ago.

- Columbus was a smart guy that was the only one at the time that thought the Earth is round. He was laughed out of royal court because everyone knew the Earth was flat. (Laughed out because he calculated the size incorrectly, turns out.)

- Poor ol' United States was just sitting there minding its own business when out of nowhere the Japanese attacked Pearl Harbor w/o provocation. I didn't find out about any embargoes until years later.

- Colonialism: those natives aren't going to civilize themselves.

I could go on, but the ideology I was taught last century is easily summarized as, "America: Fuck Yeah!" I think a bit of self-examination is warranted on whether or not the fecal output of the U. S. actually does stink. Like whether or not we overly fetishize the nuclear family, for example.
Hey, if that's what it takes to make the company respect peoples time.
I think that C# has a successfull implementation because it isn't just about syntax sugar. The runtime knows it. Generics+structs allows many optimizations.
Would be great to see this paired up with Hasura as the backend (also written is Haskell). I'm using Hasura with React Admin (configuration based admin framework) and it's a huge time saver.
Wood also is highly flammable and that is not stopping one of the most developed country in the world to keep using it to build houses.
The idea of AFU isn't inherently bad. The problem is that too many concessions have been made in favor of usability.
Volvo cars will notify other Volvos about slippery roads and other road hazards, and there’s work to share this data with other car manufacturers as well. https://www.cnet.com/roadshow/news/volvo-european-data-task-...

Is there something like an Open Routing project where this dynamic data would make more sense than in OSM?
Windows had a very similar idea to that, called "shell scraps" [1]. The feature was removed because basically nobody ever used it (and it was a vector for viruses) [2].

[1] https://en.wikipedia.org/wiki/Shell_Scrap_Object_File

[2] https://docs.microsoft.com/en-us/previous-versions/technet-m...
banning bitcoin would be fine with me, because i think the tradeoff is a bad one.
My guess is that it wasn't actually a deal-breaker, and if there were no other candidates or if the other candidate ended up not being a good fit, the company wanted to go ahead with the presentation to see if they would be a good fit even without that specific experience.

It's a complicated situation from both side. If you're the company, you have to anticipate that the other candidate might get another offer, or turn you down, or turn out to be a flop, so you want to interview other candidates at the same time to have a back-up plan. And that's a good thing for the article author too, because it gives them the chance to see if they're a fit for the job and could learn the required skills even if they don't have them now. And it's great if it works out... but shitty when it doesn't.

It's worth realizing that it's a losing situation for the company, too. It's not like they want to waste a bunch of time interviewing you for a job you're ultimately not going to be in any more than you want to waste time on it. But unfortunately "wasting a bunch of time interviewing" is just how job hunting/hiring works these days.
why not activatypub
Oh wow yeah Surgical Science - their LapSim mentor simulators for laparoscopy are certainly our direct competitors. I’m at Laparo Medical Simulators - we specialize just in laparoscopy and we’re working on delivering an enterprise VR simulator (no goggles), though our main market currently is simpler box trainers which undercut the competition on price.

What you’re describing is something we run into with the US specifically quite often. It’s kinda crazy, but the US has really become a stagnant market; nationalistic economically, and difficult to do business with unless someone gets to take a big piece of the slice, and very conservative when it comes to innovation.

I would really like to talk more if you’re up for it.
>I do wonder about microplastics flaking off of them

especially under strong light/UV of equatorial Sun. While the story looks great at first, i wonder whether it can succeed under more strong environmental review.
Type erasure was the best of these options, and it's one of the main reasons why Java became even more successful than it already was, and also the main reason why there are so many languages created on top of the JVM (as opposed to .net, which supports reified generics, which complicates enormously writing languages on it, especially for interop reasons).

More details: https://www.beust.com/weblog/erasure-vs-reification/
I might agree that "cheap" is the wrong word, but "value" is definitely the right one. There's nothing at its price point that provides a similar value prop.
and less readable, less auditable, less understandable, etc.
So they changed their pricing currency and then we became enemies? Or we were enemies, and they changed their pricing currency because of that... lol
> (tip: 5 presses of the lock button on iPhone wipes in-memory encryption keys, essentially exiting "AFU mode")

Is this the same thing as holding down the lock button and one of the volume buttons on one of the newer iPhones? I'm referring to this doc: https://support.apple.com/en-us/HT208076
If Intel can manage competitive technology node, it's not any more difficult than moving for new TSMC node.

Every time there is new possess, high-end micrarchitectures are redesigned and optimized for the new process.
"Science" as a pursuit of knowledge is.

Technically, in the US, executive branch agencies do two things: (1) sponsor actual science (either directly by employees, or by grant to third parties), (2) decide on how to apply scientific results.

"The EPA" is more of a body concerned with "What do we do about scientific results?" than "What is scientific truth?"

It often conducts research, usually in areas where private industry has no incentive to do so, but that's not why it exists.

And historically the dichotomy between science and policy has been reflected in the organization: scientists were highly discouraged from advocating policy positions in their research results, and policymakers were highly discouraged from influencing science.
I mean it depends on what you replace it with. Sales tax on basic necessities is regressive. Real estate tax, not so much. Capital gains tax definitely not.
> Of course I'm joking, but I think implicit nullability is the worst part of Go.

Go doesn't have implicit nullability. You have to declare that something is a pointer for it to be nullable.

There are a few kinds of pointers: "normal" pointers, slices, maps, function pointers, and interfaces. Any of those pointer types are nilable. Regular structs and primitives are not nilable.

var x someStruct = nil //this will not compile
var x int = nil //this also won't compile