Hacker Newsnew | past | comments | ask | show | jobs | submit | YourDadVPN's commentslogin

Why are people using "learnings" as a word, when "lessons" already fits all its use cases? It's quite jarring.


Considering they knew these failure modes in advance, would it not have been prudent to put some sort of self-righting mechanism on the lander? Something like the mechanical arms you see in Robot Wars.


Mechanisms weigh a significant amount, long mechanisms like arms even more so. The more mass you spend on contingencies the less science you bring and the less valuable the mission is, even with a flawless touchdown.


If you can't land reliably, then a lot of the science is wasted. On the other hand, once you reliably solve the landing issue (which was one of the main objectives here, and where they made significant progress in that they successfully deployed the two mini rovers anyway), you can add on as much science as you want.

Also I've said before and will say it again, the moon is not far away. Unlike Mars and other celestial bodies where we have to time launches around orbital positions, gravitational slingshots and such, the moon is really close by, and we should be lofting stuff onto it on a monthly basis.


Good point, but I wonder if some of the attitudinal jets could be employed to push it upright, assuming there's any fuel left (and power).


Neat idea, I'm not sure how much force those jets produce, maybe it could be enough? It might be risky to fire up jets after a botched landing though. If the nozzle has any material in it I'd be worried about blowing a hole in the lander!


And it's all a moot point if you're too heavy or complicated to fly in the first place.


What is your opinion of code coverage requirements now? I have been in a "phase" of seeing them as "code quality theatre". Considering that a function which takes a single 8-bit integer as an argument already has 256 unique inputs, and may bug only on 1-2 values, 100% statement coverage can be very misleading. A typical function has billions or trillions of unique inputs and 100% statement coverage could be very nearly 0% state space coverage. I'm 5y into my career (but 15y into programming) and aware that my opinions will change and develop as I progress. This one has been stable for a while though.


Coverage is necessary but not sufficient, your tests also need to be good and test the right things. What's your proposed alternative - that we don't even try because our tests aren't guaranteed to be perfect?


Well, almost. I use a lot of assertions to check the obvious (value out of range, null pointer, etc.) and test the happy path(s) to prove the code at least works in the cases I can anticipate. I add unit tests for complex algorithms, and to prove a reported bug is what I think it is and that it has been fixed. Otherwise, I think using unit tests to find bugs is mostly busywork.

For even a fairly trivial piece of code, the search space for bugs can be vast or even infinite. Writing unit tests to find bugs within that space is like throwing darts at an infinitely large wall and trying to hit an unknown number of invisible targets. You can only write tests for the potential bugs you anticipate - if you could anticipate a bug, you wouldn't write it, right? You end up with dozens or hundreds of tests that probably never failed, except when you have to change something. Such was my experience when I tried to maintain high code coverage. When I switched to writing assertions and acceptance tests, my rate of bug reports did not change, and I was more agile.


I think the best way to achieve this is by providing an OS API that results in the files always being created in the same place. Applications/libraries could still choose their own filenames and syntax, just the location would be OS controlled. I think there is room for a new desktop/laptop OS to emerge and one good idea from mobile OS design I would like to see is having everything be an API call that allows the OS to impose standardisation, permissions and user preferences rather than the free-for-all desktop OSes have (though I propose letting the user run non-compliant applications, and not porting the iOS app store only model into the OS).


You're basically suggesting the windows registry.


The problem with the Windows registry, at least back in the day, was that it was a single file that could be corrupted and it would wreck your whole system.

I think having a standard utility API for *nix configs makes a lot of sense. I'm surprised it doesn't exist.

I tried to find one, and there are some libraries for reading and parsing in every language, but nothing that seems to cover everything.

This bash script seems to be a fairly "built in" way to parse them: https://unix.stackexchange.com/questions/441076/which-is-the...


> The problem with the Windows registry, at least back in the day, was that it was a single file that could be corrupted and it would wreck your whole system.

Exactly. But Registry has been using NTFS and it's capabilities for rollbacks and recovery. Therefore, the problem is mostly solved. There are occasions [0] of bugs causing corruptions though but they are very rare.

0. https://www.bleepingcomputer.com/news/microsoft/windows-10-n...


macOS has something similar also with defaults [1].

https://macos-defaults.com/#%F0%9F%99%8B-what-s-a-defaults-c...


At 29, I don't feel like I was "basically finished" until 25 or so, and feel significantly more mature than I was even a year ago. I'm very interested to know why you think 13 year olds are mostly finished developing.


Extended adolescence is a byproduct of postmodernity. By the time my grandmother was 25 she had been married for a decade and had 2 children herself.

I had a job at 13 and would've spent my own money on something like this.

We treat adults like children so children behave like infants.


The human brain does not fully develop until around the mid-20s. https://hr.mit.edu/static/worklife/youngadult/brain.html


Alexander conquered most of the known world with a "undeveloped brain".


You seemingly state that as a positive goal. I posit that many people would have preferred to be left alone and not killed or subjugated. Perhaps if he had been prevented from those actions until after maturity, he would have chosen different actions.


To rephrase the other user's [correct] sentiment, a scientific determination of brain development has more to do with myelin on axons than maturity regarding emotions, finances, or anything else we actually judge people on.


Wonder how much Apple paid for all these ads.


I mean, I don't think most of us commenting here are Apple ads. I think we're all hoping that if Apple is jumping into VR, then finally it'll be good enough for us all to adopt massively, the same way we all have smartphones. That's an exciting prospect, even if we don't necessarily "like" Apple.

But at $3500 for one, I think they've blown it. I'll wait for the reviews, and if it really does deliver on all the promises, then that'll be nice. Somehow, I doubt that it'll happen though.


I was talking about the posts/linked articles rather than the comments. I counted six in the first 20 posts, and the titles are mostly quite ad-like.

While I was initially interested by the announcement, the size, lack of internal battery and price makes this a hard no for me. Idk what they were thinking - doesn't anyone remember Google Glass? That was half the price and size and nobody wanted it.


Why was Bitcoin an option?


No! Since I made a new email account with email aliases allowing me to give a unique address to every company I haven't received a single spam email (apart from advertising from said companies) in over a year.

I have however been getting spam WhatsApp and Telegram messages claiming to be from recruiters. These are quite obvious though as they lack any of the details recruiters usually include when they reach out on LinkedIn.


I didn't have a case on my Pixel 6 for almost a year. Now it has a cracked back. And a case. This phone seems engineered to be dropped. When I had an iPhone Mini, I didn't have a case and I never dropped it because the phone is actually ergonomic.


A real implementation should swap bytes until the pointers are both aligned correctly. On some platforms unaligned memory accesses cause an exception, but on x86 it will work but be much slower.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: