skysight-inc/HackerNews huggingface dataset:
Yes, you could do encapsulation in C. You'd have a struct. But the problem is, any function in the whole program could modify the data in the struct, possibly placing it in an invalid state. When the struct wound up in an invalid state, you had to look at the entire program to find out who did it.

(C++ style) OOP encapsulation is different. Only member functions can modify the "struct" (object) data (unless you did something crazy like make your data members public). If the data is in an invalid state one of the member functions did it. Nobody else had the ability to do so. Your debugging got easier, because there's a much smaller set of places where the problem could be.

Now, true, you could do that in C, with the structure declared only in one C file (and no header file), and all functions declared file static except the "public interface". But C++ make that the normal way to work, not something that you had to go out of your way to do.

Inheritance: If you have a problem where it adds value, use it. It's a tool, not a religious dogma (either for or against). You could argue that most people, when they think they have a problem where inheritance adds value, are mistaken. You could even be right. But never use it? It's always the wrong choice? Get outta here. I'll use it when it helps - when the shape of the problem calls for it.
In the words of Mr. Mumble-Mouth, Curtis Jackson, "Yeah.. y'supposed to have a remix. that's how you make one hit record into two."[0]

[0]https://www.youtube.com/watch?v=R0VMB1gN6XA
Indeed!

Was just looking at that yesterday.
Quite a dramatic rewording of "we banned a guy on Twitter for saying racist stuff."
Saaaaaaaaaalt

(But yeah it's messed up just don't put out dates)
It's not comparable - music is art.
Yeah, why spend hours on the most important part of the application and likely the most important part of the business when you can gloss over with with an ORM and not worry about designing the database until it comes back to bite you in the ass when you can no longer grow your business because of the incredibly stupid thing you did which is not designing your database. Frankly, those businesses deserve to fail if this is the kind of idiocy that drives their decisions. But hey, we got the app going really quickly before going bankrupt.
Perfect candidate for a Valley Silicon pick on Front End Happy Hour, paging Jem Young
> ... If it gets too acidic some lime can adjust things back.

You probably mean lye [1], which is alkaline to neutralize the acid.

[1]: https://en.m.wikipedia.org/wiki/Lye
Are there morning rituals that rev you up for a productive day?
Can you provide a link or source for Vonnegut on the subject? I'm interested.
I'm not sure it's a super smart move by Nvidia, but it would certainly help them in the short term, particularly because a ton of analysts and hedge funds and the like would read this as "Nvidia becoming a leader in the CPU space".

Let's all remember that Apple has a perpetual license from ARM, and that ARM doesn't generate TONS of revenues in absolute terms, which is what most people would expect.

I think it's not a dumb move either, because there's a lot of pressure on Softbank to provide liquidity and de-risk certain positions, particularly because of the abysmal performance that Masa's Vision Fund is having now (WeWork, etc). Nvidia could probably get ARM for a good price, and I doubt there are many other suitors who would drive the price up. AWS, GCP? Nah, why would they?

Curious to see where this goes.
The problem is with using that as justification for censorship is that it can be use to justify censorship on a wide range of unorthodox speech. We can all agree as a baseline that advocating for intolerance in the form of imminent lawless action[1] should be banned, but what else? Any lawless action? What about advocating for lawful action that leads to direct discrimination of minorities? eg. internment of japanese americans. What about advocating for lawful action that leads to indirect discrimination of minorities? eg. war on drugs. What about advocating against discrimination that helps minorities? eg. affirmative action. Finally, what about saying facts that are true, that might be misleading or lack nuance? eg. "blacks account for 52.5% of all homicide offenders, but only make up 13.7% of the population"

[1] https://en.wikipedia.org/wiki/Imminent_lawless_action
> the pattern is, some news about Apple comes out, people rage BEFORE getting the entire story, then later learn the truth and calm down

I found it credible. I upvoted the post. I then learnt the truth, and posted that I found the original tweet credible.

There's no rage. There's just me, a long time Apple customer, finding a falsehood believable.

There's more nuance to the world than just 'Apple haters' and 'rage'. You don't have to be an 'Apple hater' to fall for this. You don't have to have been 'raging' to have fallen for this. You can just be (like me) stupid, and happily admit that.

¯\_(ツ)_/¯
The recency bias is painful. If you read a recent article and want more information on some background from the story, the results are mostly a flood of more articles on the recent story, with no new info. Your best bet is to find one of the new articles that actually cited and linked to some older work.
> gradually chipping away at a company using the very thing that powers it is pretty interesting. It's hard to imagine doing that in 2005, even harder to imagine doing it now.

Most tech companies have pretty good defences against that sort of thing. High gross margins mean when your involvement increases sales on their platform, their P&L figures look a lot better. High P/E ratios mean every time their P&L figures look unexpectedly better, the value of all the stock you haven't bought jumps by a lot more.

Then again if you yourself are a fashionable web company, maybe it's different, especially if you buy more shares in the platform company you're dependent on by selling off your own stock. Wonder how much of Facebook Zynga could have bought when it was supplying 19% of Facebook's revenue....
I wonder who will launch them, Blue Origin or SpaceX.
To libertarians, everything is the stupid horse manure thing. Space telescopes will never be cheaper than ground telescopes. This is mind numbingly obvious. Just say you don’t care about astronomy.
> There are very good reasons that procedural programming was abandoned a long time ago and the need for global variables to make it work is one of the big ones.

Procedural programming does not, at all, require global variables to make it work.

I'm not a big fan of procedural programming at scale because it almost always seems to assume mutability (by default) and shared state when dealing with concurrency, but let's set those aside.

You use structures to contain what a naive programmer (or a prototype) would use global state for. Instead of:

player_t current_turn; // a global

You do:

struct game_state {
player_t current_turn;
}

And pass that game_state value or reference around. The global state can easily be minimized or eliminated from most procedural programs. I've done this quite often as part of improving older programs.
Lime is alkaline, too, and cheaper:

https://en.m.wikipedia.org/wiki/Agricultural_lime
'the data' is a vague concept. Usually, a hash map doesn't expose, for example, the bu met array, or the length of the bucket array. Sure, you can ask the hash map to give you the contents associated with a hash key, but you can't access the entire data structure that the hash map represents.

By contrast, in an 'extreme procedural' style, you would have a struct that is an array of buckets and an integer, and functions that can take such a struct and return information from some particular place inside it. In normal use you would just use the function, but if you're passing your hash map to someone else, there is no longer a guarantee that the length field still matches the actual buckets, or that objects are still arranged into buckets based on their hashes.
The years in the article seem coinciding with the Revolution in France. Where was Mozart during the revolution, and what did he do during it? Wikipedia seems silent on this matter.
> ARM crushes them on I/O performance

This sounds difficult to believe. Do you know a benchmark that shows this?
From that era, wasn't the lesson: "the best way to make money on a satellite venture is to buy out a bankrupt satellite venture"?
"Forgiving someone who hasn't changed is like encouraging a poisoner."
First Thieves Stole My Jeep, Then San Francisco City Government Did (Part Two)
I enjoy reading your takes, e.g the Case against Docker. It's good to have sane minds still around in the industry.
Apple had a long patent and design mark infringement fight with Samsung all while using Samsung fabs for their SOCs, flash, and LCD panels.

Nothing personal, just business.
They have. Their first purchase (Nervana) hasn’t worked out for them so they are now working through their purchase of the more conventional Habana.
I regularly see promotion and defense of rioting, anti-white racism, and threats of violence from Twitter. Hell, I'll never forget all of the blue check marks saying they wanted to punch that high school Covington kid for literally standing in place with an awkward smirk.

Twitter absolutely safe-harbors the extreme left. I think it's the only tech company I would refuse to work for due to their moral failings.
But it could lead to plenty of people making the smart decision to file for bankruptcy even when they have a good degree. Bankruptcy at 22 isn’t that big of a deal, generally.

I’m not sure what the answer is, though I think an economic approach is key.
If true, then how did tolerant societies arise from intolerant ones?
"A lot of comments are saying people will leave. I don't think this is true."

On evidence for this see the Guardian article titled:

:If you tax the rich, they won't leave: US data contradicts millionaires' threats:

https://www.theguardian.com/inequality/2017/nov/20/if-you-ta...
First, if moore's law (transistor count growth) is dead why have faster GPUs with more transistors been released?

Realistic rendering has not solidified and in any way. It is arguably in a much greater state of flux and advancement these days with lots of useful research coming from game and game engine companies. Not only that, it is unlikely that it would buy much speed to hardcode some model into a GPU and those transistors could be used instead for flexible computation. It would need to do lots of floating point math, which is already what shaders are great at. Shaders were invented to 'shade' fragments, that's why they are called shaders. They have been gradually adopted as kernels that are run on other things.
isn't this true now for gaming?

With the success of things like Fortnite seeing games being released for free and relying on the DLC's and skins and rewards as the product.
What is the current state of the client ground antennas used to connect to these satellite constellations? My understanding is the tech is still too large for practical use?

Is the consumer market for the larger antennas big enough to support the satellite costs?
> What if one's parents have condescended and belittled them for decades?

It's all a matter of perspective. You see, one day, your parents will show up at your doorstep and expect you do the mature thing and take care of them in their old age. You could then go off on a long rant, wash all the dirty laundry, and finally slam the door in their face. Or you tell them "I forgive you" and close the door in their face.

That's the power of forgiveness.
I believe the antenna's + gear you will need will be larger than you'll want to haul around. Starlink is mainly for permanent rural installations where cable+fiber sees no profits.
Not enough profit for their liking was the reason.
Music is different from software in my mind.

Software, with rare exceptions, is solving a problem—music is not.
> Musicians can do whatever they want.

They can, but only as long as they don't care about money. But musicians also need to pay rent.
I've taken to pulling my shades down, turning on the kettle, and reading for 20 minutes... in the same order, every morning. It's odd, but somehow this calms me. Curious to know what others do.
The implication in your comment is that code isn't art, when code absolutely can be art. Functional things can be artistically beautiful too.
Ha! I recently picked up a old gift someone made to me of a book of Hemingway short stories -- this is quite a good approximation.
Can you explain how you see the two things as conflicting? They both seem natural to me.
So many bands lose their creative spark after the first album or two, and it's exactly because of this mentality. I'd rather have one album of music carefully curated over 4 years than four albums than have 4 albums rushed out over a year. The creative process takes time. If you just rush out the next album you're probably just adding onto the already massive heap of formulaic uninspired music. I'm not saying you can't have quality AND quantity, but the number of bands who can crank out both is limited.
I can't wait to switch to either spacex or amazon's satellite internet, especially if there is a price war.

And be free of cox's monopoly price gouging as the sole provider of speeds over 5mb/s for my neighborhood, which is part of the second largest metropolitan area in the nation.

If cox and the rest had provided decent service and decent prices instead of gouging and underinvesting, they wouldn't be faced with competition from satellite clouds anywhere near as soon as they are going to be.
Trump to Order China’s ByteDance to Sell TikTok in U.S.
This might be because almost all languages that support OOP are mutable, which goes all the way back to Smalltalk and CLOS, and becomes popularized with C++ and Java and then the dynamic languages like JS, Ruby and Python.
Person, Woman, Man, Camera, TV: The Class Hierarchy

https://www.youtube.com/watch?v=LhZyHIZpzoM
I believe the usual term is a "bill of attainder". The US has a long-standing constitutional prohibition on doing this, though apparently Australia does not.
Right, we should never strive for beneficial public things because they're hard and people complain. Yes, this makes sense.
It definitely happens, but we shouldn't make it look easier than it is. I agree it's one of the fields where you don't need a formal education / diploma so in that sense the barrier to entry is indeed low.
Not OP but I just just use my Advantage at Home/Work (currently the same thing) and the Mac keyboard if I'm mobile. I tend not to do much heavy coding if I'm not at my desk due to the reduced screen size. If I had one of the newer Macs with the crappy keyboard I'm not sure what I would do. This hasn't been an issue since every work Mac since 2015 has been a the old style keyboard for some reason.
Bloomberg says that SoftBank approached Apple before they approached Nvidia, but who knows.
Music release trends are now converging towards software development speed & iteration cycles haha
I think you will find many here who would argue that code can be art, too.

The thing that people don't realize is that it is in fact quite comparable: the binary that one works with to hear a song is not intrinsically worth any more than the same bytes that produce a software application. I'm a musician who now primarily makes music with code. [0] I've decided therefore to always make my music available for free, without exception. We all agree software can and often should be free - music, to me, is exactly the same way.

[0] https://multipli.city
Isn't the rise of the US based on breaking out of past stagnant structures, and using creative destruction to change how the world works?

I don't know if the creativity and opportunities to grow, try new things, be someone else would be the same if everyone were "just happy" ala Old Europe (in Rumsfeld's words). You might not be very happy, if the environment were everyone just being happy...

But I guess the article is suggesting that people readjust their definition of what happy is.
As a teaching tool RISC-V is clearly great, as it is for companies that want to add custom instructions to their microcontrollers like NVidia or WD. But if I was looking to design a core to run user applications then to me it looks like everything is stacked in favor of Power. The complexity of the ISA is dwarfed by the complexity of a performant superscalar architecture. And to be performant in RISC-V you'd probably be needing extensive instruction fusion and variable length instructions anyways further equalizing things. And you really need the B extension which hasn't been standardized yet. Plus binary compatibility is a big concern on application cores and ISA extensions get in the way of that.
What if they said, "Our product isn't our software, our product is our marketing"? This makes more sense because there can me many products offering the same service, but the one with the best marketing can win, even if it's not the best software.
> The glTF material model is essentially all you need for realistic rendering.

If you assume the whole world is plastic, then yes! But the microfacet model is not the ultimate physical model, GGX-Smith and Epic/Disney PBR are compromises in a lot of cases, and you interact with hundreds of surfaces every day that can't be modeled accurately with it. Fuzzy or hairy surfaces are often modeled with a microfiber model! Epic's approximations (e.g. the split-sum approximation) can't easily handle anisotropic surfaces like brushed metal. And fleshy surfaces like skin, wax, paper, fruit pulp, etc. all require some form of subsurface scattering beyond the basic Lambertian diffuse.

> I always wondered how much performance you could gain by implementing that model directly in silicon and ditch GPU shaders instead.

Very little of the shader code that's being run is the microfacet BRDF stuff, and that's ALU so it's the fast bit! The expensive stuff is texture fetching for i.e. incident light, shadows, and that's all done by artists and graphics engineers above the BRDF layer. BRDF just tells you how to respond to incoming light, not where it is or where it comes from. And it makes you supply stuff like albedo color, normal direction, which are where shaders spend a lot of their time.
If definitions are clear and everyone agrees on them, then discussion can be about whether those definitions apply. Discussion is then about the real world. The definition of murder is pretty clear and widely agreed on; there is plenty of room for discussion about whether it was Smith or Jones who committed it.

If definitions are unclear or people disagree on them, then discussion may either be about the definitions and not about the real world, or be incoherent.
This reads like a rejection of von Neumann architectures. I don't think this is quite right.

https://en.wikipedia.org/wiki/Harvard_architecture
There's already a Aegis Ashore Missile Defense System in Romania.

The United States has no official policy of mutually assured destruction.

If you're asking me - everything should be done to make sure one can win in a potential nuclear war. MAD sounds like glorified defeatism to me. President Reagan had a great Strategic Defense Initiative but it has been shelved in the 90s. Now Space Force could be an attempt at bringing a lot of that back in a way that will be much harder to get rid of by future administrations. To not be working on such systems is (not necessarily mutually) "assured destruction".
I'm not sure i agree with "most", but certainly agree that many are poorly formatted...But even then - whether it is most or only some - these authors tend to want to have that "formatting" preserved almost exactly...missing an important point of web documents. :-)
All of SpaceX's new starlink satellites have the new sun visor, per musk. I believe the last launch (or maybe two?) of starlink satellites had them. The one coming up this weekend also will have them.
> You can't forgive someone who feels no remorse for what they did.

Why not?
I use an Ergodox-like keyboard (Centromere v2) and am currently typing on my laptop (normal Dell keyboard). I switch between the two completely effortlessly, without thinking about it.

I can no longer type on my old Das, though, as I haven't used it ever since I got the Centromere. I would not get a wireless keyboard now, it's not very unreliable, but enough to be a slight nuisance for no benefit.
In my opinion the "killer feature" of OOP at scale, more than hierarchy, it's compartmentalization of code.
Class hierarchies tend to have issues at scale, but OOP makes people agree on "where should we put this block of code" in a way that's "intuitive" and scales.
Which FP languages do you think would be good for managing state?

I've read here on HN the idea that FP is appropriate when you can think of your program like a pipe (data comes in, data goes out). To me, significant amounts of state would be antithetical to that. Is that view mistaken?
> Shouldn’t the musicians be the ones how decide how much they want for their music?

Then break up Koda to start with, they're the state created monopoly.
I'd add (or even put on top): Work out. There's nothing better than working your muscles to prevent injuries. Even hand grippers help already.
So then... how does more tax revenue help with the healthcare and public transportation you're talking about?
I've seen a few clean examples where it works really well.

Particularly, Java's AbstractMap is a thing of beauty in the amount of code it saves you if you need to make your own map data structure for whatever reason. One method override and you have all the Map functionality.

Otherwise, I agree that it is an Anti-pattern like 99% of the time. Young devs tend to reach for inheritance almost out of instinct whenever they have code they want to share. It's a hard habit to beat out of college grads (Honestly, some of our senior devs haven't learned that lesson :( )
>The definition depends who you ask, and is constantly in flux.

Saying the term "racist" is "constantly in flux" seems to imply its definition is completely arbitrary, or that no commonly accepted or generally agreed upon definitions exist. Regardless of what else people may say it does or doesn't mean, I think most people would agree that the white supremacist views of David Duke could be considered racist.

>If I say I'm anti-racist, but disagree with you as to what constitutes "racism", which of us is right and which should be banned? Who gets to judge?

In the specific case, obviously the owner of the platform. Despite what people say (or want to be true) Twitter is not a public space, it's a private platform and its owners can ban whomever they please for whatever reason they want, and that's probably spelled out in their terms of service somewhere.

In the more general case, possibly a framework of law, common societal or religious norms and cultural influences, or no one. Truth can't always be determined with absolute certainty when one is dealing with social constructs in the subjective and abstract landscape of modern hyperreality. People can't even agree on the world being round anymore, and it's easier to accept that everything one is told is a lie than attempt to reconcile a complex and fragmented media universe of mutually opposed, violently overlapping magisteria. Obviously, if we can't even agree on what race is, we may not agree on what what racism is, or opposition to it. How do you even do that when some people believe most of the people they pass on the street are holograms in the Matrix?

That said, when David Duke talks about "the Jews" and their campaign of "white genocide" or about his desire to live in an all "white" society, it's entirely possible to see what he means in that context and form an opinion accordingly.
Both aren't exclusive you know.