HN user

dsab

94 karma
Posts4
Comments63
View on HN
O(x)Caml in Space 2 months ago

CCSDS guides you to reinvent everything from scratch, I doubt memory safety is the biggest attack surface when you implement this stack. I dont know how big players implement networking for their satellites, but personally I would choose to fit something existing and battle-tested like TLS instead of reinventing data encryption, just look at those documents: https://www.google.com/search?client=firefox-b-lm&q=ccsds+en...

I have the same feeling paying for LLMs, it sucks we are financing genocide tools used by guys who are blackmailed with Epstein movies.

I had the misfortune of working with the Xilinx Vivado environment, it's a fucking garbage, the software is straight out of the 90s, everything is glued together with shell scripts and the TCL scripting language, the IDE throws thousands of warnings and errors while building a sample project, the documentation is missing or spread over 150 PDFs, if the manufacturer of your evaluation board prepared an example for the previous version of Vivado, you must have two installations, which is probably about 2 * 100GB, if you want to keep anything under version control, you have to use some external tools, it's all absurd.

I was working in space industry and ECSS security guidelines are missleading grant seeking startups to try to reinvent TLS on orbit. There are to mamy bureaucracy. ECSS guidelines for software teams were created by people who never written a Hello World in their life, just look at specs of ECSS Packet Utilisation Service, it's a joke, that's why I prefer to work for VC funded companies than grant funded.

418 I’m a teapot 2 years ago

I love those RFC documents. I am currently working with CCSDS documents and they are total trash comparing to RFC. For example when I read documents about how TCP works or TLS works I see that it has been written by professionals with experience and vision. And CCSDS documents have been written by bureaucrats who have never written a line of code in their lives.

I have the same experience, I like splitting my embedded C microcontroller peripheral drivers into 3 layers:

- header files with registers addresses and bitmasks

- asynchronous layer that starts transactions or checks transaction state or register interrupt handler called when transaction changes states

- top, RTOS primitives powered, blocking layer which encapsulates synchronization problems and for example for UART offers super handy API like this:

status uart_init(int id, int baudrate)

status uart_write(int id, uint8_t* data, int data_len, int timeout_ms)

status uart_read(int id, uint8_t* buf, int buf_len, int timeout_ms, int timeout_char_ms)

Top, blocking API usually covers 95% use cases where business logic code just want to send and receive something and not reinvent the synchronization hell

I bought Samsung S21 from some shady reseller because original Samsung store was trying to steal my data by a promotion where I need to give them my bank account number and they will send my 20% of phone price back, then when I returned with phone to home and turned on phone I saw a message saying "this phone is a property of Polkomtel (on of carriers operating in Poland), it will be locked if you stop paying the bills", shady reseller agreed to replace my phone with another one not fucked up by a greedy carrier who is making incomes private (selling expensive phone in subscription model for people with no credit rank, often abusing this subscription model as low rate credit (they are goi g from carrier straight to lombard) and making loses public (they will lock my phone if someone dont pay)

I suggest that, given the insane proliferation of valueless derivatives and ejection of human values from these systems

What do you mean by "these systems" ? Blockchain based money?