HN user

OnlyOneCannolo

358 karma
Posts2
Comments200
View on HN

Unless it's a verb that ends with -ano. In that case, stress the preceding consonant. It's kind of like the difference between urAnus and Uranus. There are other exceptions, but that's the most common and important one.

Poisson's Equation 5 years ago

It's a simple and general method that works in many domains, which is an usual combination.

The other ways of solving the example of arbitrary heat sources and sinks on a plate range from hacky combinations of simpler methods, to tedious math, to complicated general methods. If you switch from heat to pressure distribution, you'd have the same types of options, but the specific methods would be different.

I've read the USB PD spec. What's wrong with it? It seems ok to me compared to other specs. And yeah it's long, but different sections are for different people with different roles.

In my anecdotal experience, the problem is that many programmers just don't like working to a spec.

That's not at all what I'm saying. Aside from web development, most professional tools are only used by professionals because they cost money. It wouldn't make sense to judge something by the free toy versions that happen to exist.

I think they're saying that the switch was justified because the workforce is no longer familiar with Ada.

Ada is mostly used by professionals, not enthusiasts. It has a captive audience of governments and companies working on safety-critical systems where they have strict toolchain requirements or legacy systems. Pretty much the only thing that can move those users off Ada is to retire older systems, and rebuild their processes for C++. That's tough to justify when the language and ecosystem are still actively developed (paid, not free tools). Things like a language server are unimportant when your IDE must be qualified, and you're not allowed to install or use any software of your choosing. You will never see most of what goes on with Ada outside of a work environment. Its continued use is largely unaffected by anything you'd see in the open source community.

I binge-read the RAQs a few months ago. So much great information. Thank you!

I also appreciated the consistent URL scheme because it let me easily scrape all the PDFs to read them offline. The one bummer is that the links at the end of the PDF versions seem to be broken now.

Because it's still a town? It just happens to also have a college in it. The transient population results in more stuff (industry, services, transportation, ...) than you'd get otherwise, minus the traffic and real estate prices. There are still people of all ages just like any town. You have to go out of your way to meet students, so just don't do that.

Anecdotally, I've noticed that management tends to consider interruptions more acceptable for anything related to web development. It's usually not as bad for the web dev team to slip their schedule as for the hardware team or the legal department or whatever, so interruptions happen more often. I was briefly embedded in such a team and that aspect drove me nuts. You really have to enjoy being essentially a point of contact as part of the job.

If anything, it's the opposite. Even if engineering advocates for doing more about the problem, it only takes one manager screw it up. Either everyone has to want an ethical product, or there have to be formal processes to make everyone do the right thing whether they want to or not. Ideally both.

I'm re-reading what I wrote, but I still can't see how you inferred that implication.

I agree that a hazard analysis should have identified it. But whether it did or didn't, there are still many possible reasons why it wasn't addressed effectively. Hence, a systemic failure.

I have no idea if it's legal, but any punishment would probably be on the company rather than the individuals.

It takes institutional knowledge and experience to make a safe and reliable product. Even if you had a whole team dedicated to it, it's not much use if the rest of the company doesn't care or do their part.

It also takes money. But why bother protecting the consumer or even the company if you're not legally or financially liable yourself?

There's little incentive to do things right. And when there is, most people will only ever learn the hard way.

I should clarify - it's at the start of runtime when the library is initially loaded. Not afterwards. You'd have to restart the program to swap a library.

For testing and simulation, it's a way to mock dependencies. You get to test the otherwise exact binary you'll deploy. And you can inject tracing and logging.

Solver installations tend to be long-lived, but require customizations, upgrades, and fixes over time. Dynamic linking lets you do that without going through the pain of reinstalling it every time. Also with solvers you're likely to see unconventional stuff for performance or even just due to age.