# How NASA could have prevented a $200m crash with Julia's type system

**URL:** <https://discourse.julialang.org/t/how-nasa-could-have-prevented-a-200m-crash-with-julias-type-system/37496>\
**Category:** Community\
**Created:** [April 13, 2020, 9:27am UTC](https://discourse.julialang.org/t/how-nasa-could-have-prevented-a-200m-crash-with-julias-type-system/37496 "2020-04-13T09:27:14Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![xiaodai](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xiaodai/32/15937_2.png) [@xiaodai](https://discourse.julialang.org/u/xiaodai)\
**Post date:** [April 13, 2020, 9:27am UTC](https://discourse.julialang.org/t/how-nasa-could-have-prevented-a-200m-crash-with-julias-type-system/37496/1 "2020-04-13T09:27:14Z")

</div>

[![](https://global.discourse-cdn.com/julialang/original/3X/6/0/60a3e345011d940c3b9de5df876f747a4e990901.jpeg "How NASA could have prevented a $200m crash with Julia") ](https://www.youtube.com/watch?v=n4leHwOfHBs)

It’s my first data science-related youtube video. I had some fun making it.

---

<div class="post-metadata">

**Author:** ![lostella](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lostella/32/356_2.png) [@lostella](https://discourse.julialang.org/u/lostella)\
**Post date:** [April 13, 2020, 10:09am UTC](https://discourse.julialang.org/t/how-nasa-could-have-prevented-a-200m-crash-with-julias-type-system/37496/2 "2020-04-13T10:09:13Z")

</div>

Maybe they can use Julia now to come up with a time machine and go back to 1999 to prevent the crash? Hopefully the Julia type system can help them take into account for leap seconds and so on 😉

---

<div class="post-metadata">

**Author:** ![helgee](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/helgee/32/2022_2.png) [@helgee](https://discourse.julialang.org/u/helgee)\
**Post date:** [April 13, 2020, 4:57pm UTC](https://discourse.julialang.org/t/how-nasa-could-have-prevented-a-200m-crash-with-julias-type-system/37496/3 "2020-04-13T16:57:53Z")

</div>

> [@lostella](#):
>
> Hopefully the Julia type system can help them take into account for leap seconds and so on 😉

Yes it can: [GitHub - JuliaAstro/AstroTime.jl: Astronomical time keeping in Julia](https://github.com/JuliaAstro/AstroTime.jl) 😉

---

<div class="post-metadata">

**Author:** ![Syx\_Pek](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/syx_pek/32/6364_2.png) [@Syx\_Pek](https://discourse.julialang.org/u/Syx_Pek)\
**Post date:** [April 13, 2020, 7:30pm UTC](https://discourse.julialang.org/t/how-nasa-could-have-prevented-a-200m-crash-with-julias-type-system/37496/4 "2020-04-13T19:30:54Z")

</div>

Certainly wouldn’t the GC in Julia cause more problems in a real time system like this?

---

<div class="post-metadata">

**Author:** ![helgee](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/helgee/32/2022_2.png) [@helgee](https://discourse.julialang.org/u/helgee)\
**Post date:** [April 13, 2020, 8:17pm UTC](https://discourse.julialang.org/t/how-nasa-could-have-prevented-a-200m-crash-with-julias-type-system/37496/5 "2020-04-13T20:17:04Z")

</div>

In this case, the issue was not in the on-board software but in the ground segment. Flight dynamics calculations are usually done offline, so no real-time requirements there.

---

<div class="post-metadata">

**Author:** ![xiaodai](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xiaodai/32/15937_2.png) [@xiaodai](https://discourse.julialang.org/u/xiaodai)\
**Post date:** [April 13, 2020, 9:42pm UTC](https://discourse.julialang.org/t/how-nasa-could-have-prevented-a-200m-crash-with-julias-type-system/37496/6 "2020-04-13T21:42:05Z")

</div>

I am almost sure the calculation were done offline first.
