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

Also remember: Even though many of these articles/books/papers/etc. are good, even great, some of them are starting to get a bit old. When reading them, check what modern commentators are saying about them.

E.g.: What every programmer should know about memory (18 years old) [1]

How much of ‘What Every Programmer Should Know About Memory’ is still valid? (13 years old) [2]

[1]: https://lwn.net/Articles/250967/

[2]: https://stackoverflow.com/questions/8126311/how-much-of-what...


While i cannot comment on the specifics u listed i dont think the fundamentals have changed much concerning memory. Always good to have something more digestible though.

I've always wondered how well these RPi based cubesats really work in space. Really hard to find out. Also, people (naturally) aren't always eager to talk about failed projects. Maybe some people here on HN have experiences to share?

In my experience, having provided advice to a lot of academic CubeSats: the issues usually aren't related to the parts, the problems are usually lack of testing and general inexperience.

Yes, a Raspberry Pi isn't radiation hardened, but in LEO (say around 400-500 km) the radiation environment isn't that severe. Total ionizing dose is not a problem. High energy particles causing single event effects are an issue, but these can be addressed with design mitigations: a window watchdog timer to reset the Pi, multiple copies of flight software on different flash ICs to switch between if one copy is corrupted, latchup detection circuits, etc. None of these mitigations require expensive space qualified hardware to reasonably address.

The usual issues I see in academic CubeSats are mostly programmatic. These things are usually built by students, and generally speaking a CubeSat project is just a bit too long (3-4 years design and build + 1-2 years operations) to have good continuity of personnel, you usually have nobody left at the end there since the beginning except the principal investigator and maybe a couple PhD students.

And since everyone is very green (for many students, this is their first serious multidisciplinary development effort) people are bound to make mistakes. Now, that's a good thing, the whole point is learning. The problem is that extensive testing is usually neglected on academic CubeSats, either because of time pressure to meet a launch date or the team simply doesn't know how to test effectively. So, they'll launch it, and it'll be DOA on orbit since nobody did a fully integrated test campaign.


As someone that have successfully flown a RPi CM4 based payload on a cubesat, I fully agree with this. There's not enough funding in my research group to hire a dedicated test engineer so I need to both design and test my payload. It was a long lonely road

It does work at the end, but shortly after we got our first data from space, I decided to quit the space industry and become a test engineer at a terrestrial embedded company instead


It's a bit like balloon projects that have a transmitter. I think now the 20th group found out that standard GPS receivers stop reporting data of at a specific height because of the COCOM limit implementation (They 'or' speed and height). Well.. there are quite a few modules around that 'and' this rule and so work perfectly fine in great heights.

It's all about the learning experience and evolution of these projects. Mistakes must happen.. but learning from them should take place too.


That's kind of how I was thinking about it. Why does each cubesat project have to start over from scratch? Why isn't there a basic set of projects that a team can build on top of to make their own custom sensors for their purpose, but the basic operational stuff like the suggested multiple storage types with redundant code shouldn't need to be recreated each time. Just continue using what worked, and tweak what didn't. No need to constantly reinvent the wheel just because it's students learning.

Yep, but students love reinventing the wheel ;).

I agree though, my dream for years has been an open source CubeSat bus design that covers say 80% of academic CubeSat use cases and can be modified by the user for the other 20%. Unfortunately I have very little free time these days with family commitments.


Well, the point of a student's project is to reinvent the wheel.

One should limit the number of wheels being reinvented each time, though. What would also reduce the time-to-space of those projects. The design should cover 100% of the CubeSat, so the students can redesign any part they want.


>Yep, but students love reinventing the wheel ;).

And ... professors love making students reinvent the wheel


I thought professors loved making students by the latest version of the book they wrote discussing how the wheel was invented

And that

> I agree though, my dream for years has been an open source CubeSat bus design that covers say 80% of academic CubeSat use cases and can be modified by the user for the other 20%

Surely this, or something like it, exists?


Not really. There are a couple of open source projects (LibreCube being the biggest example) but they aren't flight-ready.

Seems like we have similar thoughts as we wrote more or less the same comment 10 minutes apart :) Would love to chat about this, maybe we figure out a way to get there? Email is on my profile.

Email sent. I am generally very busy with family commitments but happy to stay in touch.

have you seen https://github.com/the-aerospace-corporation/satcat5 ? sadly I don't have the FPGA skills to play with it, but the features are very cool

Not just students TBH...

And it would be much cheaper too.

Imaging a group building an managing a robust power supply design for Cubesats that can be immediately ordered from JLCPCB. With a well maintain BOM list.


My dream is to build an open source CubeSat kit (hardware, software, mission control software) with an experience similar to Arduino. Download GUI, load up some examples, and you're directly writing space applications. Ideally should be capable of high end functions like attitude control and propulsion. The problem is that designing and testing such a thing is a rather expensive endeavour. So far I haven't found a way to get funds to dedicate time on this kind of "abstract"/generic project, most funding organizations want a specific mission proposal that ends generating useful data from space.

Sounds like you have yourself a YCombinator startup proposal in the making

I wondered about the radiation hardening aspect.

At one altitude does that make a difference?


The annoying answer is "it depends." The main drivers are reliability (ie: how much risk of failure are you willing to accept) and mission life (ionizing dose is cumulative, so a 2 year vs. 10 year mission will have different requirements).

I would say you certainly need to start seriously considering at least some radiation hardening at around 600 km, but missions that can accept a large amount of risk to keep costs down still operate at that altitude with non-hardened parts. Likewise, missions with critical reliability requirements like the International Space Station use radiation hardening even down at 400 km.

The "hard" limit is probably around 1000 km, which is where the inner Van Allen Belt starts. At this altitude, hardware that isn't specifically radiation hardened will fail quickly.

The inner Van Allen Belt also has a bulge that goes down as low as 200 km (the South Atlantic Anomaly), so missions in low inclined orbits that spend a lot of time there or missions that need good reliability when flying through the SAA may also need radiation hardening at comparatively low altitudes.


Always wondered if you could mitigate this somewhat by basically putting your sat in a bag of water and leaving the antenna and solar panels sticking out.

Not really. Radiation shielding has diminishing returns with thickness as the relationship is logarithmic. A few millimeters of aluminum cuts down most of your ionizing dose by orders of magnitude over unshielded, but doing appreciably better requires impractically thick shields.

And that only helps with ionizing dose, which is already not really a problem in LEO. The issue is more high energy particles like cosmic rays, which cause single event effects (SEEs) - things like random bit flips in RAM or CPU registers, or transistor latchup that can cause destructive shorts to ground if not mitigated. These are impractical to shield against, unless you want to fly a few feet of lead. So instead we mitigate them (ECC memory, watchdog timers, latchup supervisor circuits that can quickly power cycle a system to clear a latchup before it can cause damage, etc).

If you want to get an idea of how much shielding is effective in a particular orbit, you can use ESA's SPENVIS software (online, free): https://www.spenvis.oma.be/. Despite being free, it's the tool of choice for initial radiation studies for many space missions worldwide.


There are many Raspberry Pis on the International Space Station (AstroPis). They're subject to a similar amount of space radiation as CubeSats in LEO, and they work just fine. There's also an increasing trend of building CubeSat On-Board Computers (OBCs) as some form of Linux System-on-Module (these would traditionally be microcontrollers). I think Raspberry Pis (especially the Compute Modules) are quite suitable for Payload Data Handling (PDH) systems, although I've personally not had a chance to launch a RPi chip yet.

But even in LEO, there must be quite a few SEUs and resets?

I personally haven’t seen confirmed SEUs in the satellites I’ve designed/operated (as in, an ionized particle affecting a transistor/MOSFET in a way that creates a short circuit and can only be cleared with a power cycle). But it’s good practice to design space systems to have current monitoring and automatically power off in case of such events.

Resets etc. are common, most likely caused by software bugs. This is more or less assumed as a fact of life; software for space applications is often as stateless as possible, and when it’s required you’d implement frequent state checkpoints, redundant data storage, etc. These are all common practices that you’d do anyway, it doesn’t make a huge difference if the software is running on a rad-hard microcontroller or off the shelf Linux processor - although (IMO) there are many benefits to the latter (and some downsides as well.) Assuming a base level of reliability, of course - you don’t want your OBC/PDH to overheat or reboot every 5 minutes.


About 50% of cubesats fail, at least partially. I've worked with a dozen or so of them, supporting different people and companies trying to use them. Only one failed to work at all. But many of the others had serious problems of one kind or another that limited their usefulness.

We’ve been using Raspberry Pis in CubeSats for a while, for LEO they are good enough for a year or two. It’s the common consumer grade SD cards that are the weakest point. There are more robust industrial grade SD cards and there are RPis with flash (the compute modules) that can work great.

I've participated in the design or manufacture or launch of dozens of cubesats. The ones with RPis as their flight computers either accept that they'll get messed up by radiation with some regularity throughout their mission (and design other components accordingly, such as timeout watchdog resets), or accept that they'll have a quite limited mission lifetime.

Great project! Been using it for years together with VTS [1] to visualize real-time and propagated satellite positions and attitudes, and also star tracker and payload "beams".

[1] https://timeloop.fr/vts/


Swish is great, but it is sensitive infrastructure. It has already been down multiple times due to DDoS attacks (together with BankId). Don't let Swish completely replace a stash of cash at home.


I've got bad news for you on that front: https://www.explorsweden.com/sweden-destinations/sweden-a-ca...

(tldr Sweden is pretty cashless and a lot of shops don't accept cash)


speaking from a Swedish perspective, I haven’t even seen Swedish currency in about eight years.

I’m not even joking.


There are lots of places where most customers still pay in cash. Mostly ethnic minorities in stores that cater for ethnic minorities. I find it interesting that ethnicity or religion would end up being a signal informing if one is using cash or digital money.


That's your personal choice. Doesn't mean stores don't accept cash.


No, its the nature of the country.

And, most companies don’t take cash, especially smaller ones.

Large companies (ICA the supermarket) takes cash but it’s like 1/200 who use cash and the cashier is often visibly flustered when cash is presented.


Please stop mansplaining (and wrongly so at that!).

I happen to be in sweden in this very moment. And no, cashiers are not flustered and alarmed when they see cash, old people pay with cash every day.

Yes there is some restaurants that will not take cash.

Last april I was in a place where they did not take cards :)

There's more to sweden than what you personally experience.


Curious where abouts you are in Sweden? (i.e. how far north/south).

I'm not Swedish but a lot of my family are, so I visit fairly often. In Gothenburg at least, it's pretty standard in my experience that small grocery stores won't accept cash. I won't pretend that generalises anywhere else.


What does gender have to do with this conversation?


Unfortunately there is no term for "stop explaining my own country to me", but there are similarities with that other situation so… a rhetorical figure? Heard of those?


There was a term: condescending, which is ironic because you were being quite condescending in your reply to me about my observed experience being somehow a personal choice.

I could write a huge diatribe of statistics and behaviours that back me up, it's quite public that even in 2022 across the entire country only 8% of transactions were made in cash- which is even lower in the cities. https://www.riksbank.se/globalassets/media/rapporter/betalni...

And it's also quite well known that many independent businesses do not accept cash (my Coffee Shop, the restaurants I frequent (Quan in Malmo, Marvin in Malmo)).

And yes I've visibly seen cashiers recoil after putting a transaction through to the payment terminal; only to have the person tell them that they'd rather pay in cash (leading to the cashier becoming flustered).

Yes, it's more common that old people use cash (from my observed experience) but increasingly they're using debit cards (not mobile payment methods like younger folks), but no: the country is pretty much cashless; and coming from the UK (where not accepting cash is definitely a more controversial decision outside of London): here it's seen as pretty normal to say "no cash" or "cash free".

Speaking for: Stockholm, Malmo, Gothenburg, Lund, Sundsvall, Oskarshamn and Umeå, and after being in the country for 11 years. I'm not sure what other representation I should be seeing.

Talking about my personal observed experience doesn't invalidate yours, but it feels like I can speak for the overwhelming majority of the population here.

And incidentally I'm also in Sweden right now (https://mrkoll.se/person/Jan-Martin-Harris-Harasym-Kattsunds...); if you'd like me to document a day trying to use only cash I'll let you know how it goes. But I won't be able to get to work (Malmo Busses do not take cash) and I won't be able to eat at any of the restaurants in Malmo (Saluhallen and the others I mentioned above are entirely cashless) so I'll have to use COOP, Willis or ICA exclusively.


Well I've seen a lot of incompetent cashiers. Especially in summer when the real ones are on vacation. I'm not sure what that proves besides that being a cashier isn't as easy as you might think.

I assure you that pressbyrån accepts cash and you can buy tickets there to get to work. Also having a long subscription for public transport on the phone is a bad idea, because if you drop your phone you'll also lose your subscription. And depending on how many days you had left and what phone you had, it could cost you more than the phone.

And handpicking restaurants that don't accept cash is no more a proof than if I were to do the same but handpicking restaurants that don't accept cards.


Happy to hear of any restaurants that only take cash in Sweden tbh


Wasn't your claim that they won't take cash at all? Why the sudden shift?

Anyway it was a place i went in april, i'll have to look it up, i don't really remember.


patronizing


Many many restaurants and stores never accept cash here. This would be a huge problem if cash suddenly becomes the only way of paying for everyone at the same time.


Stores accept cash. Some restaurants don't, but restaurants aren't really something necessary for survival.


Yeah, I don't know if I even seen the new money.


It's another knife in the drawer.


The same can be said about prints.


Yes, but to a lesser extent.


Most books are, sadly, quite worthless nowadays (monetary value). But the Tove Jansson illustrated, swedish edition of Bilbo is still a sought-after book that usually goes for hundreds of dollars.

Here is an ongoing auction on Tradera (the swedish ebay), currently at SEK 3050 (~$320):

https://www.tradera.com/item/341571/686383148/j-r-r-tolkien-...


>Most books are, sadly, quite worthless nowadays (monetary value).

I am not sure I understand. Aren't books "worthless" because they are readily available? Books are only expensive if they are rare (out of print, special limited edition, hand made or labor intensive, author signed, etc.). I don't think I would want "most" books to be rare and difficult to obtain.


It is becoming increasingly difficult to sell, or even give away, books. In Stockholm, Sweden, where I am most familiar with the situation, most charity second-hand stores no longer accept hardcover books at all. The monetary value of most second-hand books is so low that many end up being thrown away instead of recirculated.

Of course, there are rare antiquarian books that always find a buyer, but they are quite few. And perhaps nobody will mourn the vast number of cheap crime novels thrown away every day, but there is so much more: good, beautiful, high-quality books that happen to be out of fashion for the moment. These, too, are being thrown away.

It was a long time since public libraries aimed to maintain a somewhat curated (or complete-ish) collection. Nowadays it is all about statistics. If books are not borrowed often enough, they are removed from the shelves and disappear.

Perhaps I am overly pessimistic, but I fear that many, many books will, for all intents and purposes, be lost. There are so many books that aren't scanned/digitized.


There are plenty of books which are scarce but not sought after. Not necessarily because they lack intrinsic value but simply because they are forgotten. Beautifully crafted antique books which can be bought for almost nothing nowadays since the collector’s value isn’t there.


Not my experience - the Victorian books I bought cheap as a teenager I wouldn't even attempt to replace these days. Maybe the books I'm interested in held their value for some reason. (Just picked one at random, the exact binding I have isn't in abe, but the two closest, less decorative examples are 135GBP and 195GBP).


If you find someone who has cataloged and listed what they have, especially of “pre-ISBN” books you’re going to have a certain price floor. And if you want a book, likely others do, too.

But you also can find them and garage and thrift stores, languishing unsold.

Wonder Books has a concept of how to save them: https://booksbythefoot.com/about/

Which perhaps people buying books because how they look on the shelf is bad, but is it worse than the giant recycling grinder machine turning them into pulp to fuel Amazon’s Mordor-esque delivery furnaces?


This is only partly true. The fact that the OP is referring to is the fact that books aren't sought after. Many books that have been bought for a 100 dollars in 1980 are worth only a few dollars nowadays even if they are relevant. Not many people look for used books.


Or there is _The Old English Exodus_ which is four figures (and annoyingly, the son of the author gainsaid my request for permission to reprint).


Wow, printed in 1994


Yeah, look at that! Fourteenth edition. Then it stayed in print for more than 30 years. I guess earlier editions are even more expensive.

A bit strange though. So many editions should mean there are quite a few in circulation and that they aren't that rare, or pricey.


She wrote a "treatise" on electronic music called An Individual Note of Music, Sound and Electronics. From the back cover:

"[...] a fascinating glimpse into the creative mind behind the Oramics machine. In this engaging account of the possibilities of electronic sound, Oram touches on acoustics, mathematics, cybernetics and esoteric thought, but always returns to the human, urging us to 'see whether we can break open watertight compartments and glance anew' at the world around us."

http://www.anomie-publishing.com/coming-soon-daphne-oram-an-...


After years of maintaining and using an application suite that relies on multicast for internal communication, I would hesitate to use "reliable" and "multicast" in the same sentence. Multicast is great in theory, but comes with so many pitfalls and grievances in practice. Mostly due to unreliable handling of switches, routers, network adapters and TCP/IP stacks in operating systems.

Just to mention a few headaches I've been dealing with over the years: multicast sockets that joins the wrong network adapter interface (due to adapter priorities), losing multicast membership after resume from sleep/hibernate, switches/routers just dropping multicast membership after a while (especially when running in VMs and "enterprise" systems like SUSE Linux and Windows Server, all kinds of socket reuse problems, etc.

I don't even dare to think about how many hours I have wasted on issues listed above. I would never rely on multicast again when developing a new system.

But that said, the application suite, a mission control system for satellites, works great most of the time (typically on small, controlled subnets, using physical installations instead of VMs) and has served us well.


I recently finished eight years at a place where everyone used multicast every day. It consistently worked very well (except for the time when the networks team just decided one of my groups was against policy and firewalled it without warning).

But this was because the IT people put effort into making it work well. They knew we needed multicast, so they made sure multicast worked. I have no idea what that involved, but presumably it means buying switches that can handle multicast reliably, and then configuring them properly, and then doing whatever host-level hardware selection and configuration is required.

In a previous job, we tried to use multicast having not done any groundwork. Just opened sockets and started sending. It did not go so well - fine at first, but then packets started to go missing, and we spent days debugging, and finding the obscure errors in our firewall config. In the end, we did get it working, but i would't have done it again. Multicast is a commitment, and we weren't ready to make it.


Yep- the main issue is multicast is so sparsely utilized that you can go through most of a career in networking with minimal exposure to multicast except on a particular peer link- once you scale support to multi-hop the institutional knowledge is critical because the individual knowledge is so spotty.


Aeron is very popular in large financial trading systems. Maybe since multicast is already commonplace (that's how most exchanges distribute market data).


"reliable" means that if one of the recipients observes a gap, it can ask for a replay of the missing packets.


Sure. But if you don't have reliability at the network layer you don't have any chance to have a reliable transport layer.



Printers seem to be a solved problem and they mostly use zeroconf which uses mDNS (multicast DNS). I have done a bit of work in the area and I didn't run into the problems you mentioned.

However I had very semi-strict control of my network, but used plenty of random routers for testing.


Link-local multicast like mDNS can be a bit simpler to wrangle than routed multicast. For the link-local case a lot of the interop failure cases with network equipment just devolves into "and it turned into a broadcast" instead of "and it wasn't forwarded". You can still run into some multiple interface issues though.


Some thoughts regarding this:

1. It is partly because the typical metrics used for software development in big corporations (e.g., test coverage, cyclomatic complexity, etc) are such a snake oil. They are constantly misused and/or misinterpreted by management and because of that cause developers a lot of frustration.

2. Some developers see their craft as a form of art, or at least an activity for "expressing themselves" in an almost literary way. You can laugh at this, but I think it is a very humane way of thinking. We want to feel a deeper meaning and purpose in what we do. Antirez of redis fame have expressed something like this. [0]

3. Many of these programmers are working with games and graphics and they have a very distinct metric: FPS.

[0] https://blog.brachiosoft.com/en/posts/redis/


1. Totally agree that the field of software metrics is dominated by clueless or outright bad actors. I can say with complete certainty that I do not know the right way to measure software quality. All I know is that quality is handled as a metric in most hardware companies, not an abstract concept. When it’s talked about as such an ephemeral thing by software people, it strikes me as a bit disconnected to reality. (If I was going to try, I’d probably shoot for bugs per release version, or time from first spec to feature release.)

2. With respect: that’s a bit of an exceptionalist mindset. There’s nothing precious about software’s value to a business. It’s a vehicle to make money. That’s not to say craft isn’t important - it is, and it has tangible impacts to work. The point I’m making is that: my boss would laugh me out of the room if I told him “You can’t measure the quality of my electronics designs or my delivery process; it’s art.”

3. I’ve never heard of FPS but I’m very interested in learning more. Thanks for sharing the link.

Edit: oh ok duh yeah of course you could measure the frame rate of your graphics stack and get a metric for code quality. D’oh. Whoops. XD


> The point I’m making is that: my boss would laugh me out of the room if I told him “You can’t measure the quality of my electronics designs or my delivery process; it’s art.”

You can find some kind of objective metric, e.g. bug count or time spent developing new features. That alone is super hard to get right, but even if you could, it wouldn't necessarily tell you which techniques lead to a better result. People have tried studying such things (e.g. do static types help) and the studies rarely come up with any effect.

I don't think that's necessarily because these things don't have an individual effect, but because there are humans involved and so, personal ways of thinking probably play an outsized role, so technique X might be a very good fit for person A, but not for person B.


Whatever the reasons are, decent countries should not fall for the temptation to launch embarrassing campaigns to rise the fertility rate. That is what totalitarian countries do. And all these campaigns seem to fail anyway. Sure, low fertility rates (if they prevails) will cause disturbances on society, but then societies must adapt.


>should not fall for the temptation to launch embarrassing campaigns to rise the fertility rate.

Entire generations of women have been told that it is ok to delay having children into late 30s and early 40s.

The science clearly shows that both fertility rate and increase of an unhealthy baby increase with age.

There should be 'embarassing campaigns' to revert this.


Entire generations of women have been told that it's not OK to have children unless you're in a stable relationship and can afford them, which requires waiting.

Are you really going to run the "we need more eighteen year olds to be welfare mothers" campaign?


Not 18, obviously.

But ideally a woman should be having a first child before 30 so a second and possibly 3rd in early 30s.

A large percentage of marriages end in divorce. Stability is statistically an illusion.


> Not 18, obviously.

Why "obviously"? If they're not old enough to start families, why is the age of consent that low in many places?

(When I was 16 and living in the UK, it was 16, but back then so too was the age of the end of mandatory schooling).


Generally speaking, the more life experience you have, the better a parent you would be.

At 18 most people will have just come out of a regimented education system, never had to pay bills etc


Humans are unusual: we live long enough to be grandparents. It is suspected that this is because we evolved for them to be an important part of raising the next generation.

Working with the grain on this rather than against it, it wouldn't matter that new parents were kinda noobs at adult life, so long as they were actually adults.


Yes, I read that some scientists believe that the reason women go through menopause and can longer have kids, and also lose their ability to attract male attention (relative to younger) is so they can focus on grand kids

The problem is that human being used to live in family clans, and the western state institutions deliberately pushed the nuclear family as family clans were powerful.

And then as cities became popular for jobs, kids moved away from family.

And presently the parents buy a house and raise kids, but with ever increasing house prices and gentrification many can't afford to then live down the street from their parents.


Me and the wife had our only child past the age of 40. Only then our finances were in order that we could properly raise a child, to our own acceptable definition of "properly".

Life sucks in the best of times. I was not going to bring a human to the world so she would suffer, replacement levels be damned.

If I was unable to give my daughter a comfortable life, I would rather have no child.

I think many people would agree with this sentiment. If we want more people to have children in early adulthood, we need a major social upheaval so that people can achieve financial stability earlier in life.

Most people that seem overly concerned with fertility and population replacement, also happen to consistently vote against any policy that could nudge things in a direction where people would be able to achieve financial stability earlier in life.

My answer to that is a vague shrug.


Many people don't understand kids.

Kids don't care about a comfortable life, as long as they are loved and supported.

I've worked with Devs in the west who came from tiny rural villages in India, and with love and support got into the leading universities in India and did well.

Lots of middle class western kids get screwed up, despite 'having everything'.

Money, a bedroom not shared with a sibling and so on do not matter to a child.


> Kids don't care about a comfortable life, as long as they are loved and supported.

It's a lot more difficult to give love and support when you can get evicted for not paying rent.


In most western countries, parents with kids will always be housed with no risk of being on the streets.


How is Japan adapting?


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

Search: