1,033 karma · joined October 3, 2020
The really cool optimizations come from compiling TypeScript, or something close to it. You could use types to get enormous gains. Anything without typing gets the default slow JS calls. Interfaces can get reduced to vtables or maybe even straight calls, possibly on structs instead of maps. You could have an Int and Float type that degrade into Number that just sit inside registers.
The main problem is that both TS and V8 are fast-moving, non-standard targets. You could only really do such a project with a big team. Maintaining compatibility would be a job by itself.
This will keep happening because people like you will just flippantly continue saying, "It's not my problem." It will become your problem soon. As companies continue ignoring completely screwing a slowly growing percentage of people, that demographic will do what he will likely do next, call his local congressional representative to grab your company by the metaphorical ear.
Internet companies have incredible legal privilege right now. As expected, they are now abusing it as they have grown large enough. I'm glad these companies are filled with people like you because you don't even mask yourself. That is what will make the boot come down faster and harder.
And most importantly, humans are more complicated than code. With enough time and knowledge, I can accurately tell you what any piece of code does on a single expression or statement. Humans regularly do things they don't even know for purposes they don't understand.
You might suggest refactoring, which is what companies do too. They create departments, promotion ladders, org charts, and mission statements. The problem is that abstractions leak by design. As your abstractions accumulate and change outside your view, your ability to understand the entirety reduces.
A startup starts at the bottom. It begs investors, customers, and employees from a position of optimism and humility. The organization enthusiastically changes itself to find a good balance between those three or it dies. As the organization grows, it starts demanding everyone else change for them instead. Google's interviews are an example. Its famous customer service is an example.
Then we get to size and complexity. Thanks to Dunbar's numbers, we know that there are numerical limits to a human's ability to know people. This makes sense. I can know everything about 6 people, most things about 50, and keep track of about 250 well enough. As the organization grows, your ability to know it disappears. You begin making abstractions. Instead of knowing exactly what Susan does, you say she works in X Department, for Y Initiative, doing Z position.
Google is so big that one person can't understand it anymore. The inevitable reduction to a corporate abstraction occurs and then people treat it like the X Company, which is just like Y Company but makes X instead of Y. Short term revenue and expenses are the only measures at the end.
And in this faceless abstraction, the professional parasite class infests and extracts resources and morale. Eventually the C-suite stops fighting it and joins in on it until only the sheer size and momentum of the company keeps it going. Maybe an investor group will come and force a rework of the company, but not before the company is just a shadow of the shadow of its former self.
Everyone demands victims be kind and normal, but that is rarely the case. Kind and normal people stay far away from the boundaries by nature, but the boundaries always shrink when there is no push-back. We need the kooks out there getting tazed so we don't have to.
The previous solution to this was that parents booted their kids out of the house and made them play outside. This has somehow gone from normal parenting to abusive behavior that could get you arrested in some places with a possibility of losing the child.
So instead, we throw tvs, ipads, and phones at them just so we can get a modicum of quiet. Not surprisingly, each one of those is bad for the kid. The developmental problem is screen time but the scary one is strangers on the Internet. Elsa Gate upset a lot of people, and that's not the worst thing that happens.
Policing the Internet is a bad decision. Any Internet Safety Committee will eventually be staffed by the people you would least like to be there. That's especially problematic because one person's bad guy is another person's hero a lot of the time. Although this is the inevitable future due to increasing clamor by Internet companies for regulatory capture, it won't even be effective.
Parental controls never work. Your kid has way more time and motivation to figure out workarounds, even if the parents and the company set everything correctly. Everyone also knows that there will be at least one friend whose parents don't care. This is true whether the parental controls are local or done by a central committee.
The only solution to this mess is:
* Remove the insane laws and policies that prevent parents from letting their children play outside, especially unaccompanied.
* Educate parents on the importance of moderating and monitoring electronics use.
* Educate parents on how to educate their children about the dangers of the Internet, especially social media, pornography, and pedophiles.
* Accept that some parents don't care and will neglect their children no matter what you do. Instead, empower the parents that do care to easily and safely raise their children.
I remember the first time I saw this at a small company. The head programmer was the only one with the actual production source, despite a working source control system. He complained about how people didn't appreciate how hard it is to make builds work. I should have left when we lost three man months of code to losing email. I only left after screaming at the head programmer for refusing to stop making the repository unbuildable at all.
I also pointed out that the problem isn't with the developers but the leadership, starting at the top. The programmers are just acting rationally in the environment they are given. The value of a programmer is exponential with time in the code, and yet, they aren't compensated for it. What they are compensated for instead is decorating their resume for their next job.
The most important person in every company is the CEO. He sets down the culture of the company and creates these incentives either directly or indirectly. The only solution to RDD is for the CEO to be tech oriented, avoid hiring people who jump companies every couple years, build a great work environment, and compensate people well.
Most people grant these powers to the government hoping to get their pet peeve taken care of, and are surprised when the government not only doesn't do what they promised, but turn those powers onto its own favorite victims instead.
Driving with any amount of cash above a few hundred will get you robbed by the police in asset forfeiture. It happens everyday around the country to small business owners that deal with a lot of cash.
When the USG tells anyone to do something, chances are they will comply, legal or not, just because it isn't worth the pain and suffering of fighting, especially for someone you don't even know. We have relearning what it is like to have your personal life ruled by people you have never met in places you have never been. The USG has stepped too far and the overreaction to public/private partnerships is coming.
Very few companies understand that the most valuable asset of a programmer is his mental model of your system. You need people who can do the hard work because they understand the system at an intuitive level.
Power demand follows daily sinusoidal cycles. By having an economical consumer of electricity that can choose operation times, you can have them use power at night in order to flatten your sinusoidal demand, thus allowing a higher percentage of efficient baseline units to run instead of peakers.
1. https://www.statista.com/statistics/183995/us-college-enroll...
The demand for Fortran/Cobol experience has nothing to do with training. We need to make sure you are masochistic enough to trudge through the sludge.
Reddit code is trash. The old version is just much simpler and therefore less annoying. If it weren't for the fact that the smaller subreddits have lots of value, no one would put up with it.
FTFY. Philosophy aside, humans understand complex things by building simpler abstractions for them. I think the key to NN understandability centers on building simpler NNs focused on specific tasks that build into bigger ones.