HN user

deltaonefour

694 karma

I work at anduril. I'm also really tall.

Posts0
Comments872
View on HN
No posts found.

Just coming from Hong Kong or Tokyo I don't understand how someone can write an article like this without feeling completely embarrassed. Bart is a symbol of American incompetence.

It's like, ok, unique decision on the broad gauge. But the Bart is a piece of shit. So why should I care?

A real topical blog post would be one comparing Bart to say the train systems in China; but instead they ignore the obvious and focus on this irrelevant detail.

These aren't just random libraries that some FAANG dev worked on in their free time. These are company-released libraries and frameworks, that have full time employees working on them. If these companies are willing to pay FAANG engineer salaries for these employees, I expect it to be FAANG level work

You seem to view FAANG as some school of superior humans. I can assure you the amount of variance in intelligence is quite high.

But let's assume everything you said was true. It doesn't change the fact that FAANG can put full time employees on EASY problems to produce "FAANG level" work. FAANG companies have a bunch of menial developer jobs that need doing. And if the only people in the building are geniuses then the geniuses are the only people available to clean the toilet. Yeah and you can probably expect them to build a robot (that no one will use) that automatically cleans the toilet.

Additionally I should mention that google in FAANG is a bit different in terms of web. They use C++ for most of their backend services for scale, so it's a step above typical web development. Although I'm very sure it's not too far away as their developers extensively use frameworks so the experience of development doesn't deviate too much from your traditional golang or java app.

As for anecdotal evidence, sure I have some, my professional experience is pretty evenly split between Java and Javascript, both backend and frontend. I feel like they are of equal difficulty

A web dev includes both "backend" and "frontend" your statement shows that your experience is exclusively web dev and as I suspected very javascript focused. When I said web dev was easy, I wasn't talking about just front end. I was talking about everything from the front end all the way to the back end. This includes architecture, optimizing queries and all that jazz.

I have no doubt you won't be happy with this answer though

No of course not. Don't attribute it to some predictive power you have about my bias. It's not, I stated plainly what was needed. I literally stated what it takes for me to be interested, and you literally stated that you had nothing. I'm pretty sure your opinion will change if you ever do a big software engineering career switch outside of web.

Well you did say you have experience with Java but you never said what you were doing with that Java. So if you're one of the few developers doing things outside of web with java then I stand corrected.

If smart people are working on these problems, I would expect them to be hard.

This isn't a logical statement. Who says smart people can't work on easy problems? Is there some rule that says smart people HAVE to work on smart problems? FAANGs definitely has a bunch of mundane problems to work on, and they have an over abundance of smart people to work on those problems.

I suspect an argument about difficulty will go nowhere until we have a proper way of measuring such things.

Not everything has to be done through scientific measurement. If I punch someone in the face I don't need some scientific measurement to tell me he will be in pain? No. Anecdotal experience is enough here, and such "measurements" only serve to make things too pedantic.

The same applies to web development compared with other fields of software development. I think it's actually quite obvious. If you disagree, which you're free to do, then I would ask, do you have the relevant anecdotal experience? Have you worked on something outside of javascript or web development?

If not then I would say your experience and thoughts are biased. Among most people who have experience in software development outside of web, it's obvious them. If I'm wrong and you do have extensive experience outside of web then I'm actually interested in what you have to say because it's like hearing someone say that being punched in the face is not painful at all.

It doesn't take a complicated renderer to make a usable browser.

99.9% of front end web developers and back-end as well won't even know how to begin to do this in C or C++. Nowadays to even build a trivial renderer in C or C++ using vulkan is not something someone can pull up a tutorial for and learn. Not like React or Vue or even some backend framework.

I don't think it's pointless at all. If advanced pure web dev is relatively less complicated ,even at the highest levels, then it's important to define where the line ends and begins

You accomplish nothing with this other then to put one set of developers in a stupid bucket and another set in a smart bucket. These buckets are real but specifying and talking about the bucket only pisses people off. Additionally the line is very complicated and has several dimensions and in many areas the line is not a line, but a gradient.

You'd only be aware of of this dichotomy if you worked outside of web development (and not in datascience).

Nah. That's crossing over to not being a web dev anymore if you're writing a browser engine in C++ and the renderer is in vulkan or opengl. If someones writing a rendering engine in javascript and html. Well, that person is basically what I'm talking about in my initial post; a person who thinks he's solving some problem but not.

It's blurry in this area. It's hard to fully define and arguing about the borders of this field is sort of pointless.

Take the definition to be fuzzy but to be referring to the Majority of Web Developers in general, and advanced web developers to be people that are harder to define.

Try stremio.

It's a completely legal app, that's still updated. But it becomes just like popcorn time after you download a few plugins.

And those plugins are downloadable from within the app itself.

(optimizations, caching, architecture, etc)

These things are trivial compared to what other fields of software engineering have to deal with (and other fields have to deal with all this stuff too along with extra harder stuff as well)

At the most advanced levels of pure web dev it is still FAR easier then other fields of programming. It only gets a bit harder at massive massive scale, which 99% of developers are shielded from through frameworks or the fact that the company itself doesn't deal with that level of scale.

The End of CI 4 years ago

He hasn't been in the industry long enough to see that most of the pillars of software engineering are built on top of massive tech debt.

When I say tech debt I mean design flaws created by designer who simply could not anticipate the future. I'm not talking about bugs, mistakes or intentional shortcuts.

Whether jenkins is "tech debt" is a different topic. But whether Jenkins is here to stay past 2025 has nothing to do with how well it's designed.

I think the opposite. The tools keep changing because they think they have a solution to a problem and they end up creating something that's relatively ineffective.

If you been in other areas of software engineering like embedded development, OS development, language development, database development, game development.... then you will see that Web development is the easiest and most accessible. The filter for intelligence in web dev is much less stringent and thus the people in web development tend to reflect that.

Not trying to offend anyone. I've been a web developer most of my career and I switched to embedded development and I have to say, web dev is definitely really easy.

Open Logic Project 4 years ago

This stuff is foundational to things that check for program correctness. For examples type checkers check if the program is type correct. The foundations of these checkers rest on the content of these pages.

It goes even further then this in the sense that with logic you can design a language with correctness checking where even the logic of your entire program can be verified via something similar to a type check. So for example, Agda or Idris are examples of languages with this capability.

So basically most of this stuff isn't relative to most job. It's a higher level thing. It's more advanced theory for the people who create the tools SO you can do your job. A step above Dev Ops... it's the people who create the languages you use.

Two high level abstractions that compile into another high level abstraction called SQL.

Why increase the complexity of something that's already a high level abstraction? Abstractions are about simplification. An orm and sqlc are not it.

Orms are a huge mistake.

SQL is already a very high level API that compiles to low level algorithms? Why put another very high level API on top of that?

To top it off SQL is a leaky abstraction by nature. Two high level SQL queries with equivalent results can both compile into algorithms with COMPLETELY different performance profiles. You have to manipulate the SQL query to generate the correct performance profile. This means understanding things below the SQL abstraction.

You put a ORM or any new abstraction on top of that guess what? That abstraction must compile into hacked SQL. You have to be able to manipulate the ORM such that it generates the correct SQL such that the correct SQL generates the algorithm with the correct performance profile. The leak from the sql abstraction must propogate into the ORM layer which in itself must be a leaky abstraction. It's like dealing with a leaky pipe embedded within another leaky pipe.

Optimizing SQL is already a domain knowledge thing. Now you have to use new tricks to optimize the abstraction on top of it. Two Leaky abstractions on top of each other and both very high level is a bit of a head scratcher.

Why do people even make these abstractions that only make life harder? I think it's an illusion. It's to satisfy an OCD thing but people don't realize the OCD is an illusion. People want to deal with a single language, not have strings of another language living in the code. For example, SQL strings are seemingly kind of ugly in something like GO code.

Databases are the classic bottleneck of web development in terms of speed. Optimization is a very important part of writing SQL queries as a result. Having orms and other high level abstractions on top of this area is much much more harmful then it otherwise would be if databases did not exist in this bottle-necked area of web development.

In actuality it's also questionable whether or not a leaky abstraction in the first place was the right design decision. Is SQL the right abstraction for database queries? Or should we design another high level API that has a more 1 to 1 correspondence with optimization as in a High level API that's not leaky, like What Rust is to systems programming.

Python is data oriented. Nobody is talking about origins of programming languages. That is a separate topic. We are talking about the language as it stands now based on how it's used and the ecosystem.

I never said Ruby was data oriented.

--edit, i thought the original author was countering me. Turns out it's another person so I'm editing the comment to appropriately respond.

The real problem here is that you're extrapolating way past a reasonable intuition. Not only are you intuiting that pirating would impact sales, you're extrapolating that:

No I'm not. I make a best claim based off of the best possible evidence.

1. An ebook is the only way a pirated version gets circulated (many physical-only books are scanned and uploaded)

No you extrapolated that I was thinking this. Your intuition is the one way beyond reason. First off I am aware of scans and scanlations. There's an entire scene of asian comics where not only are the pages scanned, but they are translated into english. Additionally famous books like JK Rowlings final Harry Potter was famously not released as an ebook but was scanned within a couple days of it's release.

Not having an ebook makes pirating HARDER. Such that books such as computer programming books may never get copied because they're more obscure. It would be stupid of me to extrapolate unreasonably that you're unaware of this, but unlike you, I don't make unreasonable extrapolations. You're aware of everything I just said, but now you're also aware that you yourself is quite unreasonable.

2. The displacement caused by piracy from introducing an ebook version will outweigh the combined revenue of physical and ebook sales, such that physical-only revenue > physical book revenue + ebook revenue - piracy displacement, which depends on assumption 1.

This is a reasonable assumption. Given my own anecdotal evidence. Unless you have evidence to prove otherwise?

3. Piracy displacement is comparable across media types and topic. For example, does your "intuition" tell you that a programmer is just as likely to pirate a programming book given the amount of free learning material on the internet as a movie watcher is to pirate a movie or a video game player to pirate a game?

It is comparable. This is a highly reasonable assumption. Everybody likes free things, this extends past media types and topic. I am a programmer and I am just as likely to pirate from all genres and media types. I also pirate software.

I think your intuition is more flawed than science. Science at least suggests only what the results show and doesn't build upon unsubstantiated assumption after unsubstantiated assumption.

Well I would say you'd be wrong. It's not so clear especially given the whole fiasco in psychology. https://en.wikipedia.org/wiki/Replication_crisis It's actually not so clear cut what to trust.

Science is better then intuition in principle. But in practice it is highly flawed. So flawed that there are measurable cases where intuition beats it.

In that case, you should make a hypothesis and not a claim,

There's no difference between these two things. A hypothesis is a claim. They are one in the same. You don't truly understand science. You're imagining that a claim is hypothesis proven, but there's actually no such thing as proof in science. All there is in science is just claims and supporting evidence. But there is never enough evidence for proof. The entire endeavor of science is an attempt at falsification.

From a statistical perspective, Fuzzy connections can be drawn through correlations. Correlations are also again not proof as correlation does not equal causation.

Causation on the other hand is a much harder type of experiment to setup. Much more expensive and the conclusions it produces are also still not proof. Just a fuzzy causative connection that may or may not be actual.

It might be better than zero, but not my much. In many cases, it's worse because it's misleading. Anecdotal data only matters in aggregate such that the sample size is reasonable. Using a derivative of your car accident example: just because one pedestrian survives getting hit by a car doesn't mean that getting by a car isn't fatal.

There is a time when I worshipped science like you thinking that dispassionate logic was the way to truth. It is the truth path, and I followed it so much that I understand the philosophy of science and everything about it. But once you get to a certain point of understanding it comes full circle. You realize the limits of science and you realize that it's so limited that it's flawed.

Here's the thing. People often mistake science as a form of logic. As if science was a way to logically analyze the world. This is wrong. Science and logic are different. Logic is often inapplicable to the real world, but science is no replacement for logic.

Intuition is flawed. But in many cases not more flawed then science. There are tons of studies with bogus results out there. And those bogus results can be often invalidated by intuition alone.

Another thing with intuition is raw speed. If I punch a person in the face he will be in pain. Intuition tells me this in seconds. A scientific study will take a lot of time and money to create a fuzzy causative connection at best. But most people don't even run the causative experiment as that experiment is more complicated and harder, so they just do the correlative experiment that proves absolutely nothing then they call it a day.

Also you have to note anecdotal data is much more then one data point. Intuition can be described as a machine learning model trying to upscale a picture. It is often flawed but you have to realize the model is also OFTEN right despite not being a purely logical automaton. When given anecdotal data, people often describe with vivid descriptions and reasoning such that we can run our intuitions on it and form a somewhat accurate conclusion.

Finally, your link is not a counter to the parent's link as all their link says is that ebooks sell more than physical books while also acknowledging that ebook piracy has also grown.

Then his link doesn't support his point. Then his evidence was invalid to begin with. Thus my claim completely demolishes his claim.

script style languages specifically designed with modern concepts and to be highly performant.

V8 is likely the fastest interpreter (javascript) for a script style language but these languages should be a step above and beyond v8 in terms of performance.

Oftentimes, intuition is not correct.

However oftentimes statistical data is not AVAILABLE. Thus you must make a claim with available evidence.

Similarly, simply because you believe that ebook sales reduce print book sales intuitively does not mean that this be so.

No but given the logic of how humans prefer to get free things then pay for things, and given the fact that I myself prefer this you can make a best possible conclusion.

In fact, based on other studies, it seems that piracy actually increases sales [0].

There are studies that show piracy decreases sales as well rendering even statistics ineffective and contradictory. Additionally the MAJORITY of studies indicate the opposite of your cherry picked source; further indicating that "sources" alone can't even be trusted: https://corsearch.com/does-piracy-impact-sales-a-look-at-the...

Second, just because you pirate does not mean everyone does.

No but if one person does, it's possible that other people do to. 1 person is 1 data point which is better than zero. Anecdotal data matters. Do I need a scientific study to prove that hitting someone with a car can potentially injure them? No. I don't. Intuition is valid evidence for me to follow so I don't go around running people over with my car.

All in all, you have no source except intuition that can be shown to be wrong.

https://corsearch.com/does-piracy-impact-sales-a-look-at-the...

The site above shows your conclusion and your study to be wrong and contradictory. It says 22 out of 25 studies show that piracy harms sales.

Now the above is a scientific study, but before I even found that study I already knew intuitively that piracy harms sales. I made that claim BEFORE I had scientific evidence. I made that claim off of INTUITION.

I'm assuming your claim of Increased Sales was based off of you coming to a conclusion based off of that study you linked. Well we both arrived at conclusions. You arrived at your conclusion based off of a scientific study, mine off of intuition and the link I showed you above shows that MY INTUITION beat your SCIENCE.

This shows that there's a high amount of unreliable data and bias in science and that you cannot place your full trust into "studies" and "sources" Often times intuition can beat out these studies because there's so many flaws in science in practice that a lot of these studies are just as flawed as intuition.

There's 3 languages in the same class. Julia, Nim and Crystal.

I'm specifically curious about Crystal vs. Nim. Benchmarks show that crystal is pretty much faster, but I'd also like to know the advantages of why someone would choose Nim over Crystal I'm looking for reasoning that is deeper then just superficial language syntax differences.

Has anyone extensively used both? I would like an unbiased view from someone who has used both as opposed to someone who's only used one.

Agreed. But also no denying the fact Blade Runner had horrible pacing.

Pacing is hard to get right in a movie. It is a separate pillar of measurement for a movie. A movie can rate 10 out of 10 for setting and character development and 3 for pacing. Blade runner is such a movie.

In general Ridley Scott isn't very good at making well paced movies. Pacing for him comes as a bit of a lucky draw. Gladiator is one of his movies that had incredible pacing, but in my opinion that was mostly luck as most of his movies don't have good pacing.

Matrix also came out much later. The kids who watched the Matrix when it came out, most of them don't even know what blade runner was because it came out before a lot them were born.

Also matrix doesn't fully hold up with time. It is a bit unintentionally campy. I was captivated by it when it came out, but when you watch it again in modern times or show it to someone who's too young to have been influenced by it, you'll actually kind of notice the campiness. If you don't, the young person will point it out.

i personally found LOTR to be "groundbreaking" for it's time. But if LOTR came out after say something like GOT. Well GOT is better in that sense.

The key difference between modern cinema and previous cinema is pacing; and this is a key ingredient stories need to be good, that people often dismiss.

GOT by itself, is a relatively Mundane story. But pacing was masterful. Killing off the main character at the end of the first season was revolutionary.

LOTR also has a relatively generic plot. LOTR is mostly famous for the world building. That was a first and it was revolutionary as well.

I would say however, that when analyzing basic human nature and looking at what we truly like and don't like... pacing is actually far more important then world building.

Blade Runner is great, I liked blade runner for the world building and character development as well. But don't be so snobbish as to ignore pacing. The pacing in blade runner is categorically horrible.

An important part of movies is pacing. Many fans (not all and not the majority, but a lot) are so snobbish, they can't see the fact that Blade Runner has really bad pacing.

Blade runner is great, I like the movie, but it lacks pacing and many members of the general audience place a high bar on pacing.

From my perspective, while I like the movie, I can still understand why someone like you wouldn't like it. And it makes sense. What you say is true, the ending offers no resolution and the pacing through the whole movie was just really bad.

But the good parts of blade runner that people talk about. Those things are also true.

That's what they say. I want to see the actual data.

I think part of the problem is that really in order to get proper data.... You have to actually hire the people who failed the interview.

So i actually doubt google has any good internal data. Not unless they hired a bunch of people who failed.

Causative experiments are quite different from correlations. Correlations are observations only, causative experiments are not.

To determine causation we'd have to have a set of isolated people and a set of social people and for each set we deliberately pick half and raise the isolated people to be more social while making social people become more isolated. Then we record IQs. Only this experiment will determine causation.

Again, I believe the basic conclusion that isolation is bad for your brain is likely true, but I'm not sure I agree that this is strong evidence for it.

The entire human body responds to moderate stress by improving itself. Studies have shown that fasting, exercise, and "cognitive taxation" aka learning through practice improves related areas and there is causative connections here.

I think this, plus the correlation from the study is effectively strong evidence for isolation being causative to lower intelligence.

We'd have to run an actual causative experiment here to establish this with any sort of finality though.

Does anyone have actual metrics about whether this stuff works or not?

All I see is anecdote after anecdote in both directions.

In god we trust, all others must bring data.