Amazing list of things that are important to reliable software. About the only thing I can think of that hasn't been mentioned that would fit in with the rest of the topics is observability in your production environments, make sure you track everything there that is important to later figure out what did go wrong since you can't really rely on the ability to wait for several occurrences of an issue for a pattern to form or to reproduce it if you didn't track everything important the first time around. Basically ask yourself at every error path in your code "what is the information I wish I had if I had to figure out that this error occurred and why?" and often you will realize that there are values that are available in local variables or similar easy to reach locations for your code that you did not log or otherwise preserve or that there are connections between components that call each other that could be more easily correlated in your logs or traces if they shared some trace or request id or similar identifier you can pass on trivially if you think about it up front.
Regarding code doc and comments, I'd add one thing: *don't use confusing foo/bar identifiers* . Don't be that lazy guy and take the time to find something *meaningful* the reader can relate to and remember. That's how our brain works, so use it. For the tests, code coverage is also very helpful, unless you have some ATPG tool available.
Some excellent points and whilst i try and advocate for Rust for (safety) critical software I always seem to come up against arguments that the Rust ecosystem/style is not compatible with formal safety requirements & standards?
I understand your sentiment, here is another way this could be viewed. I would rather have passionate engineers who speak openly about the practices they deploy at their military AI companies rather than silence. IMO the silence of military software is the terrifying part, not passionate engineers.
I trust Jon Gjengset's impressions of the company. He said in a Q&A that he carefully evaluated the company, his responsibilities, and the outcomes of his actions before and during each interview.
I think the last few years have shown very well, that (at least in Europe) the military industry is clearly necessary for defense and not just destroying far away places. History is not as over as some hoped in the 90s.
Literally. Helsing claims they will only work for "democratic" countries like that somehow is the litmus test that separates the good from the bad. Yet ppl in the comment section call us childish that we don't follow their black and white logic: democracies are not free from bad politics such as fascism, and who gets to make those prescriptions anyway?
Jon is a fantastic speaker! Really engaging stuff!
Awesome that the talks are already online! Thanks a lot! Just started to learn rust and learned about the conference too late to be able to attend.
Amazing presentation. Jon is a treasure.
Amazing list of things that are important to reliable software. About the only thing I can think of that hasn't been mentioned that would fit in with the rest of the topics is observability in your production environments, make sure you track everything there that is important to later figure out what did go wrong since you can't really rely on the ability to wait for several occurrences of an issue for a pattern to form or to reproduce it if you didn't track everything important the first time around.
Basically ask yourself at every error path in your code "what is the information I wish I had if I had to figure out that this error occurred and why?" and often you will realize that there are values that are available in local variables or similar easy to reach locations for your code that you did not log or otherwise preserve or that there are connections between components that call each other that could be more easily correlated in your logs or traces if they shared some trace or request id or similar identifier you can pass on trivially if you think about it up front.
This is fantastic presentation!
Yet another Jon awesome presentation 👏👏
Fantastic! Thank you @jonhoo!
Great presentation Jon! Thank you
Regarding code doc and comments, I'd add one thing: *don't use confusing foo/bar identifiers* . Don't be that lazy guy and take the time to find something *meaningful* the reader can relate to and remember. That's how our brain works, so use it. For the tests, code coverage is also very helpful, unless you have some ATPG tool available.
Impeccable Rust, Impeccable Speech!
Excellent talk 👏
Some excellent points and whilst i try and advocate for Rust for (safety) critical software I always seem to come up against arguments that the Rust ecosystem/style is not compatible with formal safety requirements & standards?
Where can I find more information about YADR?
Great as always!
How is a two-phase struct different from a type state?
I'm currently learning Desktop app building with Rust. Do you think Rust is good choice for API and apps
Depressing that this passion and effort is being funnelled into military AI.
I understand your sentiment, here is another way this could be viewed. I would rather have passionate engineers who speak openly about the practices they deploy at their military AI companies rather than silence. IMO the silence of military software is the terrifying part, not passionate engineers.
Military AI isn't inherently bad. You need to prepare for future conflicts. Working for the defense industry is not the same as advocating for war
I trust Jon Gjengset's impressions of the company. He said in a Q&A that he carefully evaluated the company, his responsibilities, and the outcomes of his actions before and during each interview.
I think the last few years have shown very well, that (at least in Europe) the military industry is clearly necessary for defense and not just destroying far away places. History is not as over as some hoped in the 90s.
@@CharlesTheYoungest "the silence of military software is the terrifying part"
no, it's the killing
Jon… I love your talks and streams but you gotta consider your employers better…
Genocide enabler.
unemployed
Literally. Helsing claims they will only work for "democratic" countries like that somehow is the litmus test that separates the good from the bad. Yet ppl in the comment section call us childish that we don't follow their black and white logic: democracies are not free from bad politics such as fascism, and who gets to make those prescriptions anyway?