The U.S. Naval War College is a Navy's home of thought. Established in 1884, NWC has become the center of Naval Sea Power both strategically and intellectually. The following issues in national security lecture is specifically designed to offer scholarly lectures to all participants. We hope you enjoy this upcoming discussion and future lectures. Good afternoon. I'm Professor John Jackson and it's my pleasure to serve as the equator for the issues in national security lecture series and as your emcee for today's event. I extend a wish for a happy new year as we kick off the second half of our lecture series. Brewerable Chatfield is unable to join us this week but she sends her greetings and warm wishes as well. For anyone just joining us I want to reiterate that the series was originally conceived as a way to share a portion of the Naval War College's academic experience with the spouses and significant others of our student body. Over the past four years it has been restructured to include participation by the entire War College extended family to include members of the Naval War College Foundation, international sponsors, billion employees and colleagues throughout Naval Station Newport. We will be offering nine additional lectures between now and May of 2021 spaced about two weeks apart. An announcement detailing the dates, topics and speakers of each year has been posted by our public affairs office. Each event will consist of several parts the scholarly speaker's presentation followed by a question and answer period and frequently we will follow the election with the family discussion group meeting. We will not be doing so today because we're still finalizing our roster of guest speakers for the remainder of the series. Okay enough background and admin let's proceed to the main event. Today's lecture on national security and space will survey how space is factored into U.S. national security from the days of Sputnik to the emerging era of great war competition, great power competition excuse me. The presentation will describe potential threats and policy responses facing American space power today. We'll discuss future possibilities, lunges and misperceptions around the new U.S. space force. Our distinguished guest speaker is Dr. David Burbach. He is an associate professor of the national security affairs department here at the Naval War College. He holds a PhD in political science from Massachusetts Institute of Technology and a Bachelor of Arts in Government from Pomona College. He currently teaches U.S. foreign policy, international relations and space security. His scholarly interest includes civil military relations, defense planning and the relationship, excuse me my notes are not right, between international security and technology particularly with regard to space and nuclear issues. Before joining the Naval War College faculty in 2007, Professor Burbach taught at the Army School of Advanced Military Studies and worked for several policy analysis and information technology organizations and in astronomy and space education. As a reminder during the formal presentation please submit any questions you may have using the zoom chat function. Dr. Burbach I can't resist urge so let us boldly go where no one has gone before. Over to you sir. I believe you're muted Dave. I am absolutely muted thank you let me try that again thank you very much for Professor Jackson for the introduction and thank to all of you for your interest in the subject. I appreciate you taking time out of your afternoon to join us today for this talk on space and national security and what I'd like to do today as the introduction stated is give you first a bit of historical sense of where we've been in space where we've come from you know a galaxy near to home you know a few decades in the past and how space has been critical a critical national security player for decades. Talk about some of the things that are changing with respect to space new challenges new possible strategic directions and a little about space force and also on the civilian side our plans to return to the moon and how what the national security connections are there. But let me begin by noting by first of all let me begin by sharing the slideshow that I have going so that you can also join in it and as you know we often think of space as something new we talk about the space age or you know it seems so advanced yet we're coming up on just about the 100th anniversary of rocketry. On the left hand side of your screen there you actually see Clark University Professor Robert Goddard just up the road in Worcester Massachusetts the real developer of some of the first rockets as we would know them today beyond kind of the the very old-fashioned you know black powder that was used for centuries. By the time of World War II the Germans had developed the v2 missile and of course today we have a variety of extremely advanced intercontinental missiles so we've actually had rockets longer than we've had helicopters you know for military use if you count the v2 and we make use of a tremendous variety so one thing I wanted to show this to start off by saying I'm not going to say much about rockets in this presentation I know often the most exciting part of space is the how do you get there many of you may follow the exploits of SpaceX and the reusable rockets they've developed I'm going to focus on space applications for military and civilian use more on the satellites and what they do and how that's relevant to us down here on earth so I won't be saying much about the the space shuttle or about the or about SpaceX but really focusing on what does space do for us and how is that relevant to today's national security policy now even in space use we've been at it a long time we're coming up space satellites are almost old enough to retire the first Sputnik satellite we're coming up on the 65th anniversary of Sputnik next year and so for more than six decades we've been operating in space we and other countries have been launching satellites launching humans for almost 60 years for military applications commercial applications scientific exploration it's been you know space has been tremendously important for for quite some time and when you know when you think about what what is the space age all about you know what you know I wouldn't be surprised if one of the first things that comes to mind for you is exactly the 1960 space race the race to the moon the the Apollo landings you know John Glenn Yuri Gagarin back in the 1950s and 60s space was seen as the very forefront of political competition between the United States and the Soviet Union if you see the cartoon that I have in the upper right corner of my slide it's a photocopy of a newspaper from the 1950s so it may not apologize if it's not legible on your screens but it shows Soviet Premier Khrushchev holding the hand of a woman labeled lesser nations you know we'd be a little more diplomatic in how we phrase that now but Khrushchev wooing the lesser nations by pointing to Sputnik who else can give you a moon while sad uncle Sam looks on with a box of chocolates you know how can you possibly compete and that's exactly how space was seen that there were nations all over the world who had to choose do we which horse do we want to back and do you want to back the horse that's going to the moon or the horse that's going nowhere and so we found we thought it really important to show show the show the world that we could get there first and we we and the Soviets both made great propaganda use you know or political use to use a better a nicer term I guess you know you see a Soviet postcard featuring their first man in space Yuri Gagarin or after our first astronaut orbited the earth Marine John Glenn um we actually sent his capsule around the earth of fourth time a fourth orbit it was called doing a 30 city world tour you see people lined up there in Mumbai India to see it um you know we sent it all over the world to shoot so that people everywhere could see what the American space program was up to now the the crowning achievement of that era was when Americans actually landed on the moon um 650 million people watched in live tv uh which at that point was one out of every six people in the world and remember tv was pretty new and in fact the us recognizing the importance of communicating that I mean this was not happen sense we actually worked with countries to help them improve their tv networks or install tv networks so that everybody could see that american flag planted on the moon and you see there in Australia a department store crowded at six in the morning local time you know people who didn't didn't have a television at home who wanted to see it so this this was a tremendous accomplishment you know brought pride you know diplomatic accomplishments um but that's only one part of the space program uh is in those early days space was much as it was for prestige and and the glory of seeing astronauts land on the moon there was also a space program that was much quieter and just as importantly space was used for spying and before saying a bit about that let me just try and and put you back in you know send you back in time because we're used to a world of visibility today this is what you see in front of you is a satellite image of the chinese ministry of defense complex taken within the last year that i downloaded over this weekend with microsoft being any of you i i hope you keep listening if any of you wanted to pull up satellite images of chinese navy bases you could do it in a moment on a moment's notice it's easy if you were willing to spend a few thousand dollars you could have a company take an image tomorrow of a chinese navy base and give it to you that's not what the world was like when the space age was born we faced a rival that was incredibly secretive um to the point that literally we we had to rely in some cases on maps that we had captured from the germans that they had made when they invaded the soviet union in world war two old maps from the zarist era um the soviet union made it very difficult you know they would even obfuscate where cities whole cities were located so we faced a nuclear rival and had almost no way of knowing what they were developing how many nuclear missiles nuclear bombers they had deployed and especially no easy way to see telltale signs of were they getting ready for a surprise attack on the united states now what we came up you know what we saw as an opportunity to deal with that was what if you go into space what if you send cameras into space and so the number one you know the eisenhower administration identified in the late 1950s even before sputnik we had started satellite imaging programs that our number one priority for national security had to be getting uh sat reconnaissance satellites in orbit that could see what did the soviets have where is it located are they getting ready to launch an attack on us and so within two years after sputnik we had launched satellites that could return film images down to the earth and you see there an example from the early 1980s a photograph of a soviet ballistic missile submarine um president johnson you know 10 10 years later just before the moon landings uh president johnson was quoted apparently he said he didn't want to be quoted but he he didn't say off the record the new york times quoted him at one uh you know informal gathering as saying you know what the whole space program would be worth it just for those satellite photos just so that i as president know i don't guess i know how many missiles the enemy has and so in those early days space was really all about uh it was all about reconnaissance spying early warning you know and johnson here says if we had to spend 10 times as much as the moon race cost it would be worth it for that quiet covert reconnaissance side now we developed other military space applications way back in those early days as well i've got examples of satellites from a couple of decades here but we had at least the the basic systems for all of these military functions going well back um one of the most critical uses of space in addition to the spy satellites to see you know what the other side was up to on the upper right there we developed missile warning satellites that could see the infrared uh you know the the bright flame plume using infrared telescopes um so that if the soviet's launched missiles at us we would have you know we wouldn't have a lot of warning they get here in only about half an hour um but we would have that half an hour we would have the maximum possible warning um so that we could take we could take action uh in that awful situation so we developed warning satellites we developed navigational satellites i mean the uh one of the the navy developed a very early system you know much more rudimentary and cumbersome than gps uh as early as 1964 in the transit satellites we put up weather satellites uh civilian and military we put up communication satellites you can see a modern looking communication satellite there in the lower right uh if you look carefully just below the satellite there's um the the tech unfortunately everyone's in white it's white white clad people in a white room but if you can see the size of the people down there i mean those antennas are several feet across each i mean this is these these satellites these days are really quite substantial pieces of hardware with amazing capabilities um you know so within you know within 10 years of Sputnik we already were making heavy military use of space we also had given thought to well how do you keep the adversary from using space um and we developed some rudimentary anti-satellite systems the the one the u.s actually deployed um we didn't have the the sensor and computer technology to hit satellites head on uh like we do now so we used a nuclear weapon you know and would set up set off nuclear blast in space you can see a test of such a weapon viewed from hawaii there in the early 1960s um you know we learned that those produce a lot of radiation in space and if you set off one nuclear weapon you you'll get the satellite you're aiming at but the leftover radiation circling the earth will destroy lots of satellites in fact that nuclear test you see there destroyed the first AT&T test communications tv relay satellite um that you know we oops you know we we didn't mean to do that but we learned that uh you don't you know space is actually pretty easy to mess up it's it's easy to environmentally damage space the soviets in the 1970s tested a non-nuclear weapon where you know a sat sat it would you know the the weapon would gradually match orbits with a target and then explode but if any of you saw the movie gravity a few years ago you already have a sense of what that can do creates lots of little pieces of debris that moving you know at hyper velocity in orbit you know something the size you know of a a nut or a bolt uh can destroy a satellite so we we we both learned early on it's possible to build anti satellite weapons but it's actually pretty difficult to use them without messing up space for for yourself too so you know we um we learned that anti satellite weapons were difficult i'm not going to say much about weapons from space but i really some of you may may wonder about that possibility back in the cold war we actually thought about the possibility of putting nuclear bombs in orbit so you could de-orbit them on command and have them come back to earth and both the u.s. and the soviets realized so what what good is that and we both kind of said not much really other than maybe like you know maybe it comes back when you don't want it to or you know it get the nuclear bomb gets it by space debris you know it just seemed like a bad idea neither side really wanted to do that we've also talked about the idea of you could have non-nuclear just a big hunk of steel or tungsten or something come back from space at hypersonic speed and you know you bring one of those down on an enemy tank or an enemy ship and even without a nuclear blast you do a lot of damage um you know we again we decided too expensive too technically difficult uh relative to the advantages so neither side even today really was seriously interested in bringing down weapons from space so kind of the the classic cold war use of space was in some ways pretty restrained when it came to war fighting um in public both we and the soviets were very active in peaceful competition for you know human exploration or sending probes to mars venus you know and other planets um using space to show off national capability and prestige secretly both sides relied very heavily on strategic surveillance and early warning from space um and so we realized if we attack the other side satellites it'll damage our own satellites and they might get scared that we're about to launch a surprise first strike and they might launch first a security dilemma uh if uh you know so you may those of you who have been through nsa already probably will have seen that in your security strategies readings uh you know for those of you who are nwc students um you know both sides pretty afraid so both both sides actually managed to be relatively restrained and we kind of left you know treated space something as a sanctuary a term people like to use you know we we put up these capabilities and didn't plan to do much war fighting in space and i'm simplifying there there have been you know there you may be asking what about reagan strategic defense initiative i'd be happy to talk about that in q and a but you know a few diversions aside um we didn't do a lot of space war fighting um now what's different today in you know than those cold war days is space is now in everything tactically and you know at the civilian level um we make tremendous use of space capabilities for uh you know as you can see us a uh marine there on a satellite using a satellite phone um you know the rather convoluted dod graphic in the the lower quadrant shows uh you know how we plan to use lots of satellites for communications and battle data networks um but we all make use of satellites all the time i mean i've you know you i've got my cell phone i'm sure you all uh have them too using gps many people have direct broadcast tv um we use it for you know it's it is just basic you know all throughout our daily lives um in ways that you might not even realize i mean we all understand we use gps now so that our car can tell us where to go so that nobody knows how to use a paper roadmap anymore um but more subtly gps also provides highly accurate clock signals extremely precise timing and it turns out that computer networks and the cell phone network need that to kind of keep track you know synchronize all the data streams the electric power grid also uses gps timing to keep everything synchronized banks use the gps data for highly accurate time stamps on transactions so you can figure out you know if person a and person b both tried to sell the same stock you know who got the order in first and of course knowing weather forecasts uh you know phone calls i you know maybe there's even data going through a satellite you know to somebody involved in in this zoom conference and on the on the military side too space is no longer just about supporting strategic nuclear capabilities but you know for the last 20 some years we've gotten used to using space for precision targeting of conventional weapons for knowing exactly where your ship or your hum v or you know your f16 is um for listening in you know not only on soviet nuclear command networks but terrorist cell phones controlling uh unmanned aerial vehicles you know uh last year when the arraigned just about just about one year ago when the aranians launched missiles at the us space in iraq um we detected that with our early warning satellites and that's how we were able to give uh the american soldiers there warning to get out and get into bunkers uh in the few minutes they had before those missiles hit so we really depend on space for all sorts of everyday tactical military operations and in our civilian economy well so what's different now um you know what's changing is in this era of great competition is you know we're we're going against possibly i mean hopefully we never have to but should we in order to be prepared for potential conflict with more sophisticated peer adversaries um russia and china are both spacefaring powers of their own um they have the same sorts of capabilities that we do russia and china each have their own equivalent of gps in fact your phone probably receives the russian glonass signals i i don't think many cell phones here use the newer chinese bydu system but you know they're currently four different navigational systems you know they have their own reconnaissance satellites their own military communications networks so we don't we would be facing peers that have some of the same force enhancing capabilities from space that we do now what's especially different though is in the post cold war era whether we were fighting uh iraq or syria or terrorist networks we were fighting adversaries that had no ability to shoot at or otherwise really disrupt our space capability space truly was a sanctuary um so we could use you know space advantages with impunity you know we could use gps we could you know use reconnaissance satellites and the people we were in conflict with couldn't do anything about it well russia and china can they have counter space capabilities they've been investing in capabilities they may even have an have an asymmetric advantage in that our militaries uh the u.s and allies are probably even more dependent upon space technology and integration of all of these space information services than their militaries are likewise our civilian economy is more dependent upon technical information services um we can be you know we can be more easily disrupted by the loss of civilian space capabilities than the russian or chinese economy the other factor is the geography matters you can see in my uh you know my my very high tech google earth graphic there uh if we were in a conflict in the south china sea we're operating over many thousands of kilometers um away from washington or away from pearl harbor where our command centers are across sheer oceanic terrain without satellites we can't communicate whereas you know Beijing can rely on fiber optic lines to release it it reach its coastal navy bases uh and then has a much shorter distance to where we we think there may possibly be conflict so the fact that we're operating over very very long pure oceanic uh terrain um means that we really depend on space to be able to keep operating so you know that that provides some real incentives for potential adversaries to think about what can i do uh about those advantages that the us and its allies would have um i won't say too much uh about specific technologies here other than that the the sort of anti-satellite weapon where you go up and smash the other guy's satellite by crashing into it technology has gotten better and especially there's a real overlap now between ballistic missile defense technology and anti-satellite weapons some of you may know about 10 years ago the us used a an sm i'm going to get my blocks wrong but sm3 i think uh missile off of an ages cruiser uh that was really intended for ballistic missile defense but we took out one of our own satellites that was about to re-enter in low earth orbit uh the chinese the russians and now also india has a capability like that um now those sorts of attacks create dangerous debris we we hope they don't do it but they the capability is there it could even be that adversaries are experimenting with a technology that wouldn't cause so much degree where the the the photo you see on the lower lower right um is you know that that's actually from an example of a potentially a robot spacecraft meeting to refuel and service a satellite but if you have an arm that can stick out and refuel a satellite you could just as easily stick out an arm with a sledge hammer and you know bash the other guy's solar panels or you know shears and snip wires or i mean as silly as this may sound essentially a can of spray paint and spray it over you know the uh the camera opening on a spy satellite that wouldn't cause debris but it would make the mission impossible both sides have jamming capability we their mid cyber can't really there's nothing that's really discussed in an unclassified way with cyber against satellites but we imagine it's possible but it's definitely possible to jam the command and control links to satellites uh as a reconnaissance satellite uh you could in principle blind it by shooting a laser at it when it's passing overhead and we believe the chinese have actually experimented with that against some u.s satellites uh the u.s acknowledges that we have communications you know unclassified probably you know that that you know that that photo there is a public affairs photo that's not off of zipper net you know we acknowledge that we have satellite jamming capabilities uh and presumably the the other side does too um and i'll just very quickly know you may not even have to go to space uh satellites need ground facilities to communicate uh one of the main space force communication stations is actually uh just about a hundred miles north of here in new hansher um or china actually has leased space for a satellite communication station in sweden um you know uh depending on where like i i i think in a conflict it's unlikely that china or russia would be able to attack the new boston new hamster tracking station i hope uh but that's certainly a possibility too so we we worry on a number of fronts that capable peer adversaries might be able um might be able to do something uh that would affect our capabilities you know whether it be by physically attacking satellites by using electronic warfare or cyber warfare to prevent the satellites from functioning um one one you know i'm gonna i'll back up for just a moment on my cyber point one thing that's especially could be troublesome here i know the advantage of hard to attribute um if you see an anti-satellite missile coming up at your satellite you have some idea who did it because you can see where it was launched if your satellite is uh all all of a sudden your satellite isn't transmitting anymore um is that because a cosmic ray disabled its computer or is that because of an adversary cyber attack if your electro optical sensor fails was it blinded or you know did it actually you know did a piece of debris hit it you know it's it can be it can be very difficult to to even be certain were we attacked well you know in some ways it's it's like cyber or like counterintelligence capabilities where there's probably a lot of sort of cat and mouse you know secretive who did what what was that intentional um was it the adversary we think or was somebody else trying to to provoke something you know a lot a lot of opportunity for some some you know really difficult to figure out scenarios there so what do we what do we do about all this uh and there are a couple of different directions that you see people suggesting that we respond well you know that that that i'll have some different advantages and disadvantages um and you know let me you know to to say a bit about these um one option would be resilience to make the the satellites that we have more difficult to attack to build in redundancy uh you know have more satellites um and in fact those those are you know two two competing ideas right now and it's not necessarily obvious which is better because one option would be essentially to make the satellites that we have which are already very expensive to build them even more robustly maybe even add defensive systems you know sort of like you know on a ship the those of you who are in the navy when it'll see whiz there's there's a short range defense system that will shoot at incoming planes or cruise missiles maybe we could even put defensive equipment on satellites like that it's you know it's possible the other option is to go in the direction of instead of having 20 or 30 highly capable big expensive satellites recall the photo i showed you of that communication satellite that you know was as big as a school bus um instead of having a you know a handful of those what if you have a thousand satellites you know that are each that big um and you know that rely on having many satellites networked together with dispersed capability if the adversary has to target a thousand small satellites that's a much harder problem than if they need to target 10 24 5 very large satellites and that's you know we see the commercial sector moving that way towards large constant constellations of many satellites that are relatively cheap and relatively expendable um and there's a lot of interest you know on the military side in doing that or maybe we look at alternatives and whether alternative means you know we do better at using fiber optic cables instead of space links in some places it could even it also means alternatives like knowing how to do celestial navigation in case they take gps away or in our exercises in our war games in our doctrine development thinking hard about what do we do if we lose space capabilities having people who aren't space experts know what do we lose and how do we think we're going to operate without that capability being ready and practiced for that eventuality we might also use deterrence um and you know make it clear to potential adversaries that space is off limits space is special um for a number of reasons you know that we're opposed to debris because that'll mess it up space mess space up for everybody in the world um that we consider space so critical to nuclear warning and nuclear command and control that you know stay away from that it'll you know if you attack us in space it's going to make us really worried that there's a nuclear strike coming so we could tell adversaries if you go after our space targets we're going to go really hard after your space targets or that we'll go after targets on earth if you attack us in space uh we'll consider that justification to attack you know senior command headquarters uh in your country that we otherwise would leave alone um you know the detail you know putting aside whatever details we'll basically rely on threats of punishment um and you know hope that that works and you know it might the the worry there is that since we do worry that there's this asymmetric advantage to the united states in space that if essentially we tell china or we tell russia we'll do a trade you know you go after our satellites we'll wipe out our view all of yours the worry would be they might be okay with that trade uh they might figure well that leaves us that that leaves us worse off but it leaves the united states relatively much worse off um and so the question then is what do you do and for attacking targets on earth is destroying a satellite a piece of property no lives lost does that justify killing people on earth and we've seen this this concern with respect to unmanned uh unmanned drones uh last year the iranians shot down or maybe it was 2019 shot down an american drone over the persian gulf and what we we ended up not responding president trump clint came close to responding decided not to and a factor that loomed large in the people who thought we shouldn't respond was do we really want to take lives over a piece of property with no human lives lost or even human lives risked in what the iranians did um and they're you know the research done by people here at the war college has found that there's a big reluctance to take lives in exchange for taking down an unmanned vehicle or a cyber attack that doesn't have human casualties space too we probably would wonder is it worth killing people over a satellite um you know another idea would be going for a very dominant approach see sees the high ground uh and if you if you have wondered when am i going to say ultimate high ground i'm not going to say it except when i have a sarcastic look on my face because i don't think that's probably the right way to think about space um but i might be wrong and there are people who say that really what the u.s needs to do is move quickly to develop space control capabilities to put weapons in space and really see you know that it's so you know that the advantage of being the the of having space supremacy it would be so large that we need to grab it now technically it's not clear how feasible that is it seems like it would at least be very expensive to put up a big network of satellite anti-satellite weapons and other space weapons uh and china and russia are pretty clear that if we try to do that they're certainly going to respond they might deploy space weapons of their own um they uh you know they they might develop they might deploy anti-satellite weapons of their own and try and stop us from doing that so they're all on it goes back to some you know there've been debates for decades on on this question but as we're becoming more concerned about these space threats you know we're seeing some people say hey we we need to seize the moment um we might also go down a diplomatic track and try to secure limits on anti-satellite weapons or you know informal agreements to leave space targets alone um you know the outer space treaty that was passed that was approved in the 1960s everyone agreed not to put nuclear weapons in space but non-nuclear weapons are allowed um we might try and limit those now the question then is will china and russia want to agree to that um especially you know maybe we could work out some sort of a trade you know maybe we agree to limit some of our ballistic missile defense capabilities that they're especially worried about their potential diplomatic avenues and and i won't be surprised if the biden administration uh you know lean at least tries to explore some of those so you know i i i am i i in in good you know in good professorial fashion i'm not going to give you the answer i'm going to suggest that you think about you know what sorts of directions make sense out of this menu um but some of these are contradictory uh with each other i mean it will be difficult to try and choose all of them uh they have different pros and cons and they relate to grand strategies differently so you know we we're we're still strong you know this is one of the things space force knows that it's needs to think about is what are the right strategic directions um well having mentioned space force uh you know as i come down to the the last uh i guess 10 minutes or so here um let me say a little bit about space force and then as i promised also circling back to to where i began the civilian space program and the desire to return to the moon um you may have noticed uh you know one one of the biggest one of the big accomplishments in defense for the trump administration and one of the biggest organizational changes for the u.s military in decades uh we've added a new service for the first time since the late 1940s uh the u.s space force now exists general john raymond uh is the chief of space operations i should have put it on the slide but i will say it he is also a proud alum of the naval war college uh he was last year he was actually able to come and speak at our future war fighting symposium that wasn't possible this year but we we look forward to having him back again someday and in addition to creating an entirely new service we also elevated space command from a subordinate command of our strategic command the the command that controls nuclear forces uh we now made it a geographic command in the same way that we have four stark headquarters that uh you know for africa for europe for the pacific uh we now say that everything above 100 kilometers in altitude about 60 miles of altitude is space and general raymond who you see in front of you is in charge uh and so that that's also a pretty big change more down in the weeds that that defense analyst study we also created a new agency for space r&d um so what is space force all about and uh to put it simply space force is not about this space force is not about space marines fighting aliens space force is not about laser battles above the earth or any other planet um space force in any in any near future is going to be a little less exciting than that and even backing off from the most extreme science fiction visions there are still some very common myths and misperceptions um although there's certainly the possibility that we could choose a strategy that goes down the road of starting to weaponize space that's not in the plan right now space despite all the talk about lethality is is kind of the you know the what the department of defense delivers space force is not going to have offensive weapons uh in the immediate future space force is not going to be in charge of protecting the earth from asteroids nasa actually has the lead if we discover there's a giant asteroid headed for us and we're all gonna die i'm sure we'll involve the military at that point um and contrary you know as much fun as it watch was to watch netflix's show with steve correll um space force does not have astronauts i mean there may be some space force personnel who gets seconded to nasa as astronauts but space force it won't have astronauts it won't have a spaceship it won't have a space station it's absolutely not going to the moon um it's about knowing what's going on in space space domain awareness is the the military term we use to operate and defend defend being kind of the the big the big issue here operate and defend us satellites and possibly conduct counter space operations i mean they operate that big jamming dish that i saw they may have other capabilities like that or if we were to develop other space weapons you know that that would be what space force does you know so just a few thoughts on space force in the near term it's really a bigger political and bureaucratic shift kind of a signal and just a lot of bureaucracy moving around inside the defense department um it's it's mostly taking pieces we already had putting them together in different ways and literally putting different uniforms on them um now in the long term services like to have a theory of victory you know they they like to be able to say we can win the war we deliver lethality so there probably is going to be some incentive for space force to want to think about how do how do we deliver victories from space and i don't know what that's going to look like yet but we just know and you know we know bureaucratically that's that's a likely outcome um we do know that general raymond thinks that space needs to be more open space has typically been you know you know the typically we have gone just short of classifying newtons laws of motion when it comes to space um raymond thinks you can't make good use of space and you can't protect space if people don't understand space so he actually does want to see a lot more openness so that planners across all all the military services have a better understanding of space we also hope that this reorganization will make it cheaper faster better to develop new satellites for space um you know that remains to be demonstrated well you know it's possible that these new organizations will deliver that um there have been other experiments in the past that haven't worked so we will have to see there now the the last big thing for me to note um is the us is currently planning to go back to the moon uh nasa has a program called Artemis uh the intent originally was to return astronauts to the moon by the year 2024 um it seems partly due to coveted and all the budgetary implications that seems unlikely um but the president incoming president biden has already said you know that his campaign has said they support the program continuing it'll probably be a little slower but i think it's still fairly likely that in the late 2020s we'll try to go back to the moon and what you see in front of you here we have gone as far you know with this is not simply a paper study we actually have have issued pretty big contracts to a number of companies to develop hardware right now the three firms that you see in front of you all have large contracts to develop uh you know to do more r&d and develop prototype landers to go to the moon nasa is building a giant rocket called the spate sls in fact they are actually going for the first time ever they're going to test the engines they're going to put it in a test stand fire the whole thing off uh i believe that's supposed to happen on saturday of this coming weekend so there actually is hardware being built um you know and the the goal is within a few more years to go back to them to go back to the moon well how does this relate to national security and there are actually a few implications here um it's not like the 1960s but we still do care about prestige and leadership um the u.s you know we we still tend to think this is an element of american soft power as it's sometimes called you know showing people that the u.s is a technology leader uh that the u.s is able to do big things um it's not going to be like apollo you know we've we've been to the moon already you know it's it's not going to be quite that amazing but it will still be impressive and and we hope that we get back to the moon before china's moon landings which right now the chinese are talking about uh the mid 2030s i mean i'd be surprised if that becomes much earlier um though i'd be surprised it becomes much later china's actually had a has a pretty good track record of sticking to the goals and announces for its human spaceflight program the bigger issue for national security is that artemis is very international um unlike apollo which was you know we we wanted the world to watch but it was all done by the united states with artemis it's more like the international space station uh in that allies like japan europe and canada are contributing major pieces japan for example uh toyota has a contract to build a pressurized moon rover that the astronauts can drive around to explore canada is contributing equipment the european union is contributing and i i don't know for sure but i my understanding is the intent would be that non-us astronauts would join um so it's quite possible you know a japanese astronaut will land and walk on the moon as part of this program and we see that we see the program in that sense as a way to strengthen alliances to help build you know political you know at a popular level and a government to government level to to strengthen relationships and to get people to to you know get countries around the world to see space like the us does and agree in fact we literally are working on some diplomatic pieces of this where countries that want to join us and going to the moon need to agree to some basic principles of future space law uh and so we're trying to build sort of a diplomatic coalition with a common vision of how to use space what are the rules of the road as part of this and finally i'll note you know we we also do tend to think that these sorts of programs you know help the defense industrial base i mean at a at a narrow level the sls rocket uses solid rocket motors and we need companies to get know how to build those to build new military missiles as well so that's helpful and encouraging youth youth uh in america to be interested in space and to care about space so i uh you know on on this you know to end to end on a on a hopeful note uh this is a view back to uh i'm not sure if you can see my mouse but the the blue dot you see in the towards the lower right is the small planet earth seen from saturn from the casini space probe a few years ago uh so with with that grand vision i will stop here hand it back to uh professor jackson and look forward to questions thank you much david that was uh an excellent presentation we we do have a few questions and uh we'll share them with you at this point i guess i'm interested in a little clarification on the commercial crew program and the commercial space transportation program and the degree to which that has changed the environment nasa always hired civilians to build their spacecraft what's different now sure what's different now is to to to to step back a little i i said i said i wasn't going to talk too much about the space shuttle but i i do need to talk about that for a moment here um we for decades in the us we relied on the space shuttle to get humans and nasa related cargo into space um that turned out to be expensive and frankly more fragile and unsafe than we hoped and just it became old it dates back to the 1970s nasa had a few different programs to try to replace the space shuttle with something new in the 1990s and early 2000s that mostly didn't get very far the technologies that didn't pan out or programs that kind of ran in circles or stops and starts so one initiative that the obama administration started and then the trump administration continued was okay let's just say we'll give a bunch of money to private companies if they can provide the service of delivering delivering an astronaut to the space station it's up to them to figure out what the rocket's going to look like you know they'll own the hardware nasa people will ride in it the same way that you would ride in an airliner uh you know without uh you know or you know better analogy might be like rent you know chartering an aircraft or something you know because the the nasa people are still doing the flying so a couple of different companies bid and the company that has gotten the most attention SpaceX developed their own uh crew dragon is the name of it a space capsule that can hold several astronauts to go to and from the space station they launch it on the Falcon 9 rocket that SpaceX designed and that mostly is used for commercial space launches so the astronauts inside of that capsule so far have all been nasa and have been nasa employees and nasa is paying SpaceX to take them to the space station a little bit like we've been giving money to the russian so that uh our people can ride along in the russian capsules but in this case we're paying an american company um you know so nasa figures are you know our advantage is focusing on the longer-term r&d on the exploration the put people in a capsule go to orbit and come back is an established enough technology i mean that's been done since the 1960s now um they've decided to give that to the private sector and SpaceX uh has been pretty amazing at how cheaply they've been able to accomplish that um i mean it raises some tough questions about why is government so expensive why are traditional contractors like Boeing or Lockheed so slow and so expensive and i don't know if the right you know uh the maybe the answer is as simple as if you can pay the smartest people in the world a whole lot more money than the government can and let them do whatever the heck they want uh they'll all come to work for you and they'll just do amazing stuff that you can't make happen in you know the bureaucratic environment we live in india you know i look forward to a book that i mean there there have been some popular stories i look forward to a book that really explains in detail what have they been able to how they've been able to do it because it's it's quite amazing there's a very interesting book called the space billionaires which i'm sure you're familiar with it that does a really good job in my mind of going through SpaceX and Blue Origin and and all of these major players and kind of saying how they've grown up so i'd recommend that to the audience i will i'll actually be assigning it for an elective i'm teaching on space this for or the rocket there there are two books the space barons and the rocket billionaires they're actually pretty i chose the rocket billionaire i i think may have just been cheaper but you know they're they're you know yeah those are the two good popular stories of how that happened and eat good easy reads absolutely uh one of the questioners uh it goes back to your discussion of are you willing to kill someone because they destroyed some of your technology and you use the example of the drone shootdown uh the questioner wonders is there a class of material or a class of systems that in your mind might justify a kill decision um i don't i don't want to say that's above my pay grade but um that's that's going to be the tough political and ethical question uh to consider and uh i will say we you know there are a lot of similarities in that question to what we what we face with cyber what we face with drones and some of the best international law of and law of armed conflict people in the world are here at the naval war college or the naval justice school um who really you know have really you know thought carefully about what does the law of armed conflict say about that um i i think they're probably you know if if we were to see an adversary start taking out our missile early warning satellites um i mean that that would be an extremely you know because the there's the only advantage to that is if you were really thinking about really getting close to a large-scale missile attack on the united states i i think that would probably you know that that would not be a you know let's carefully you know we'll send a diplomatic no or you know that that would that would be a this is an indicator that we're headed for a much bigger escalation of the war pretty quickly um one good thing is that though those missile warning satellites are actually in a pretty high orbit so they're they're less they're harder to hit less likely to be hit by debris from something accidentally um you know i i would think you know we in the russians and i think the chinese now have missile early warning satellites i i suspect we all agree those those ought to be left alone um you know my my sense from the research that i've seen is it's actually really hard to get civilian policymakers to feel good about taking a life in exchange for an attack that where there wasn't even any you know where there wasn't any risk to personnel um now if if somebody tries to bomb you and they miss slightly and that's the only reason people didn't die that's different um but it's very hard to get policymakers to feel good about um you know let's you know let's take lives in exchange for this piece of equipment being destroyed in a way that nobody's life was at risk and i think that's that's a big issue that we're you know because as we depend more and more on pieces of equipment that fit that description whether they it be cyber you could use the same argument with undersea fiber optic cables uh i mean if if if they're you know space is space gets a lot of attention if there's something that get that doesn't get the attention it deserves the vulnerability to the destruction of fiber optic cable networks uh is also something we probably ought to be thinking about more um right now my sense is is there there's a lot of reluctance um you know i my thought is there are some infrastructure that's so vital to our military operations if you put it in a box that says if you target this narrowly we won't shoot back because you didn't hurt anybody um that's going to be a box that's going to be of interest to adversaries and so we you know i it's you know it's it's kind of not an easy call for me but it's it is certainly and i'm sure we think about that too you know when we think about how would an adversary respond so you know i don't i don't have a firm i would kill someone over this answer because i'm i'm a and i'm able to be a little professorily and say kind of this is how to think about it but it's going to be a dilemma we've we've got to deal with on a uh perhaps a bit of a political basis uh do you believe the space force will survive the new administration is space force a good idea in an of itself regardless of the politics involved um let uh short answer to the first one is yes uh space for i mean it's in law you would have to uh re it would be a significant congressional action to undo space force and a big bureaucratic action i mean with enough has happened that you know there'd be a lot of pieces to fit back into the air force and the other services so the i think joe biden would never have created space force on his own i i don't think um but i don't think his administration is going to be interested you know there's not enough demand on even from the democrats and i think the republicans would would see that as sort of repudiating a real trump legacy and even and partly that's because to take the larger question about the creation of space force i didn't think creating space force as a separate service made sense but there were there was a general sense that the air force probably wasn't focusing on space enough in some ways and that certainly that space operations probably deserved its own uh four star level command instead of being part of uh stratcom so there were a number of ideas like maybe you create a space agency that's sort of like uh special forces command where it's not a service but it's got all you know in addition to commanding forces uh socom has some of its own ability to do r&d and procurement you know i i think kind of among the the defense expert community the general sense was that might make sense is when you create a service i mean you can see this you know they're spending a lot of time figuring out what's the uniform going to look like there's been a big political fight over is space force going to have air force style ranks or navy style ranks you know is it going to be space general or space admiral um and you know setting up headquarter or is space force going to have its own space war college you know answer no not in the near future um i think the bureaucratic overhead was not necessary but now that it's a done deal it's it's probably not worth trying to undo it other than that biden probably won't expand space force and probably won't talk about it as much as trump did one final question on the commercial side uh space x is launching the star link constellations and i've read as many as 12 000 satellites involved in this constellation and i understand that many astronomers are concerned that we're going to blanket the sky with the so many satellites won't be able to see the stars do you believe that um oh oh you were you were going right after my uh my my pet rocks um i i'm you know i come into space from an interest in astronomy and photography as a kid uh so uh yeah i'm worried about that and there's been enough pressure that space x has actually been researching ways to make the satellites less reflective so that they're not as bright um and that's good but they're they're still going to be i mean if you if you're in the middle of downtown newport and you look up you're not going to see one of the space x satellites they're too dim for that um whether it's space x or whether it's you know but you know 20 30 years from now you might look up at the sky an hour after sunset and as one one person one astronomer phrased it you look up and the sky will feel like it's crawling all over the place because there might be hundreds of just at the edge of visibility satellites all moving slowly as you look up and i mean i think psychologically that's going to be pretty weird i mean maybe not to kids who grow up with it um you know this this is it that may not be a huge military issue but i do worry about that what might be more of a military issue that that i'll mention is there do d actually has some real concerns about radio frequency interference not i don't think starlink is the number one issue but we have been granting licenses to some of these satellite operators um like there's there's one operator uh the ground portion of what it's doing basically fAA and dod both said this is going to wreck gps for every you know people on the ground you know planes are literally the fAA said planes will crash because of this so there's actually a fight going on you know the the it's odd to see the defense department and the federal communications commission arguing that strenuously but you are seeing dod you know which in the cold war if dod said we need this frequency the military got that frequency you are now seeing the u.s military say hey we have some real concerns about the the rf spectrum that's being allocated for this use and dod doesn't always win those fights anymore so that that's something we're probably gonna have to think about is some of the the spectrum conflict implicate you know radio spectrum conflicts that these constellations pose final question a questioner is asking with regard to uh uh adversaries being able to attack space assets and whatnot do you see a priest's interest in protection of the homeland and do you see a buyer or a need to change our operating plans to accommodate those changes um yeah that's that that's it's a it's a big and great question um i mean power projection is easier against adversaries who can't project power back at you and whether it be the ability to go after space assets or you know the the eye opener i like to toss out if the u.s were to target you know china's main you know one of their main navy bases on highland island in a conflict um it's certainly inconsistent under the arm you know laws of arm conflict if the chinese put a couple of conventional cruise missiles into san diego uh or you know if we destroy if we happen to hit their naval defense you know naval education facility on highland island uh you know maybe a chinese submarine sends a couple of cruise missiles under the bridge into the naval war college uh you know we i hope not um you know but uh as we deal with with powers that have the ability to respond because the the big you know i'm going kind of big picture here um in the cold war our adversaries could really only shoot back at the u.s homeland with nuclear missiles you know we're now facing adversaries who they can go after space capabilities that are important to our civilian economy they might even be able to conduct conventional strikes uh against homeland targets certainly you could imagine the chinese wanting to strike you know guam or hawaii uh so i think i don't think we have fully thought through at the political level what does it mean that like the homeland may not be a sanctuary anymore uh and whether that be we lose gps and because nobody knows how to read a map anymore nobody you know nobody knows how to how to get to the store our cell phones don't work or you know even you know conventionally we uh you know we take hits on american territory from a pier that we're in conflict with so um i you know i personally probably lean on the side of whether we like it or not we probably have to lower our ambitions in a world where we're not our power projection capability is not so unilaterally dominant over others others take the view of well we just have to make our power projection capability that much stronger again i i i think it's hard to win that race um you know but if if somebody made me grand strategy king i would probably you know say that we're looking you know more like reducing as opposed to increasing ambitions globally very good any last comments you'd like to pass along before we um you know i i think i will i will leave it there i um you know i i saw a couple you know i appreciate uh all the questions i saw a couple others in chat that we weren't able to get to so uh you know thank you very much for the interest um you know space uh space is only going to be more important so you know learn about it there's exciting stuff happening and uh you know i appreciate you taking your time to listen this afternoon and uh hope you all have the the best remainder of your time here in newport live long and prosper dave indeed thank you uh as we wrap up here i just remind everybody that our next lecture will be on the 26th of january and we're going to hear about how the u.s military plans to safeguard cultural treasures in the future work that's going to be done by what they call the new monuments men and monuments women so we think that'll be a particular interest so we hope to see you back on the 26th once again we will not have a family discussion group meeting this week but we will in two weeks so thank you very much for joining us and have a good day


Let's talk about it. So I definitely recognize some faces in the audience, but for those of you that I don't know, my name is Brittany. I am an instructor and tech lead at Turing School. And if I don't have a chance to meet you before the end of the conference, you can find me on GitHub at Brittany Storros or Twitter or pretty much anywhere on the internet. So today I want to talk about the nightmare that is error handling and error messages. And what we can learn from the pretty minor mistakes that we make and the terrible error messages that we receive in return, okay? So this talk is mostly going to be me complaining at you, but I'm going to assume as developers that we're all cool with that, okay? So since I've been teaching, I've had a lot of students that are coming from very different backgrounds with very different skill sets. So as they're going through the program, certain students are really excelling in certain areas of programming and struggling in others and vice versa. But over the past couple of months, I've really noticed a handful of common and pervasive technical hurdles that really hamper the learning process for students. So a lot of times new developers have a hard time wrapping their head around things like abstraction and modularity.  The sheer size and number of files in a particular project is really overwhelming. The amount of tools and frameworks and libraries that we're working with make decisions really difficult to make. How do I know if I'm picking the right tool set for the application that I'm building? Obviously, we've always had a problem with writing good documentation. So when people try to go read the docs, sometimes they're just not there for you, okay? So there's a lot of different technical hurdles for new developers in programming. But today I want to focus on error handling. Earlier this week, I was speaking on a panel at Denver Startup Week about navigating the path from being a junior developer to a senior developer. And one of the big themes that came out of that conversation was that the journey to becoming a senior developer is filled with just accumulating failures. You're just making mistakes constantly, and then you're committing them to memory, right? So you're going to keep making a ton of mistakes, but you're going to remember what they were and how frustrated you were and how long you tried to debug them for, okay? And then when you see them again in the future, you're going to be able to fix them a lot faster. You're going to recognize them. And when you see other people struggling with them, you're going to be able to help them as well, okay? So what actually happens when we fail, when we make mistakes in our code and we run into bugs? We usually get these really obscure, confusing error messages. Sometimes they're really unhelpful, often indecipherable. In this particular case, failure is not an option. But we are also told all the other options that are actually possible within this program. And then a lot of them are just very visually offensive and intimidating. This one is literally catastrophic, okay? So these are the types of error messages that we're giving to people when they make a mistake or when they do something trivially wrong in their programming or the way they're using programming. And I have to tell us that this is all our fault. We did this as developers, okay? So we really can't blame this on anybody else. This is our doing. And I think it's our responsibility to fix it as well, okay? So take a minute to just accept that fact. Come to terms with the fact that we're pretty terrible, okay? So I have one admission to make. I'm gonna preface the rest of this talk with an apology and a plea, not to hate me, because I'm actually a JavaScript developer, not a Ruby developer, okay? So I don't know about all the rubies and the gems and the rails that all of you are using. I'm not familiar with all of those. But that makes me a perfect person to give this talk on error handling, okay? So since I've been teaching, I've been working with the front-end program at Turing. And I've seen all of the errors that my students are running into when they're building the front-end of these applications. And as a senior engineer, I had really lost my perspective on how difficult it is to parse certain error messages and call stacks that we're giving to people when they make mistakes in their code bases. Certain messages that were really simple for me to understand and figure out how to fix were completely mysterious to my students. And that's not their fault. That's, again, that's our fault that this is the way the system is working right now, okay? So for example, we use React at Turing School. That's what we're teaching people. And there's one error message where you will just get this very short, terse, uncaught error that says it can't find a particular module. But when you're looking in your code base, you're looking in your text editor and you say, I see that module right there. I know I wrote it. I know I imported it. I can find it. Why can't my program find it? It's actually because there was a syntax error somewhere within that module. And it prevented it from loading, okay? But how is a new developer supposed to understand that? How are they supposed to recognize that? This message does not reflect what actually went wrong. About a year or so ago, I ran into this one, which was really scary. I don't know what I did wrong, okay? I believe it was something with a fetch request to an API endpoint for JSON data. And I must have been doing something with the response body and then trying to reuse it somehow. The only way that I can parse this error message, I still have no idea what I did wrong. But it was pretty creepy when I first got it, okay? And then one of the more recent ones that we ran into, one of my students ran into this actually, and this is the one that sparked me to really pay attention to error handling and make me want to do something about it. We were deploying applications to Heroku. It was their first full stack application that they had built and the first one that they were going to deploy and put on the Internet live somewhere. So it was really exciting. And one of my students, we had gone over Heroku and how to do the deployment process. One of my students was having a problem deploying their application. And I was like, well, we taught you how to look at the error logs in Heroku. How do you look at the error logs? And I was being kind of sassy about it and I was like, go figure it out on your own. Figure out what went wrong by reading the error logs. So I sent my student to the error logs and then in his terminal, literally all that the error message said was we need a better error message. So I actually remember feeling personally embarrassed by this. I had nothing to do with the libraries that we were using, the tech stack. I did not write that error message. But I was embarrassed that we have been tolerating this as an industry, as a culture. And the fact that I had sent one of my students to go look at these logs that I would have assumed would have been reliable and then they weren't. They were absolutely completely useless. So that's what really sparked me to want to think about the error handling culture in JavaScript as a whole and why it was so broken. And I was really aggressively excited about the idea of trying to fix all the places that it was broken in JavaScript. So as I was starting this talk, I kind of went into it with a hypothesis that this can't be the same in all these other languages. No one else will tolerate this. It has to be a JavaScript-specific cultural thing. So you're working with another language, another framework, another library, and no one would put up with error messages that are this bad, right? So that's the hypothesis I was working with initially. And I figured I would test it out by trying to build an application with Ruby on Rails. And I had used Rails in the past a couple years back when I was working at the New York Times, maybe in 2013. I had a hard time with it because I was a much younger developer than they had a lot of applications that were in different versions of Rails. So some of them were in Rails, I think two, and some were in Rails three. And I believe that's when there was a big jump between the different versions. Someone can correct me if I'm wrong. But it was very difficult for me to understand it then. And I was like, okay, now I have a little bit more experience under my belt. Let me see if I can parse some of the errors that I run into when I try to build a Rails app. And the very first thing that I ran into was this hellscape. I don't know if anyone has seen this. Error installing MySQL 2, error failed to build gem, native extension, has anyone seen that? Yeah. See? Okay. Now, I spent a couple hours going down this rabbit hole, luckily the Stack Overflow post that I went to to figure out how to solve it had no less than 50 solutions for me to try. So it took me a while. But eventually I made it through that part. And I started building my little tutorial application. And I ran into this one repeatedly. No method error in PostsController. Undefined method posts for nil, nil class. Who has seen this error? What does that mean? Okay. Right? So this reminds me specifically of an infamous error that we had in JavaScript for years. And we still have it, but it's a lot better now. It was undefined is not a function. You would see it in your console all the time. And there is nothing you could Google about that because the part that you needed, the part that would tell you what was wrong, was undefined. That's what it was called all of a sudden in this error message. So how do you Google something like that? How do you search for something like that? Luckily the browser implementers, the Chrome developers recognized this as a huge pain point for new JavaScript developers trying to parse what that meant and they actually fixed that. So now you'll get the name of the function that you were actually trying to call that was undefined, which is great. So this error reminded me a lot of that. And as a junior developer coming into this, one thing that I see a lot with new developers is that figuring out how to Google things is actually really hard. And if I'm a junior developer and I look at this error message, the part that I'm going to really latch onto is this keyword posts right here because that's what I wrote. That is specific to my code. So it must mean that something is wrong with posts. When I Google that, I'm probably going to copy and paste that whole error message in. Nothing is going to show up because not everyone is making an application that has posts associated with it, right? And it doesn't necessarily actually mean that that's where the error is in my program. Posts might be perfectly fine. It might be the thing right before posts that's broken, this current user that I have here. So it's really hard to tell what's going wrong with an error message like this. The last one that I ran into was no implicit conversion of string into integer. If anyone is familiar with JavaScript, our nice dynamically typed language, we can convert data types into whatever we want. They will just change out from under us on the fly and it's great. We don't get any errors about it. We'll maybe get some weird bugs in our code, but that's fine. We don't care. Okay? So I remember specifically when I was running into this problem, it was very difficult for me to understand where I was trying to convert a string into an integer. I wasn't doing that. It didn't seem like that was an explicit thing that I was attempting to do. What actually wound up happening was I was trying to grab an item from an array with bracket notation that was using a string instead of an integer for the index. And it was trying to convert that data type so that it could grab that element. And that was obviously not going to work out for me, okay? So I don't know if I proved my hypothesis wrong or right. I'm going to hold off on deciding that, but I did recognize after going through this tiny application in the error messages that I ran into that error handling is broken everywhere. It's really broken in a lot of places. And it's broken in a predictable way, okay? So error handling is predictably terrible. And I emphasize the word predictably because I feel like I've recognized a handful of common themes and limitations that we have that make error handling bad, that make error handling broken, okay? So one of the reasons why error handling is so bad is that errors are written for developers and not the users who actually run into them. This one for example. So when I talk about users, yes, I'm talking about users of the application in the traditional sense, people that are your average web browsers, they're not looking into DevTools to see what went wrong. They're just going to sit there confused if your form doesn't submit and they don't know what to do, okay? But I'm also talking about users that are developers and they're working with a new library or new framework or new language. So these developers that are using your tool set, using whatever library or framework that you open sourced for other people to use, they're coming into your application using that in theirs and now those are your users and those are the people that you have to be writing error messages for because they need to know exactly what's going wrong. And we lose this perspective. When you are a maintainer of an open source application or you are the writer of a spec for a language, you have such advanced knowledge of that topic that other people don't have. Someone coming in to use your work is coming in as a junior.  So as we get more advanced with the technologies that we're building, the code bases are getting a lot more complex but so are the error messages because you're assuming that everyone is on the same page as you and they're not. Your audience is always going to have junior developers coming into there so you need to focus on your error messages at that level rather than saying, this makes sense to me as a maintainer, I would know what went wrong with this, I would be able to help someone if they ran into this but that puts more work on you and it doesn't mean anything to the new people coming in to use your work, okay? Another reason is that programs can only understand so much about intent so I know we are a little bit scared of AI taking over and getting really smart and worried about stuff like that but I think programs are still very unintelligent, okay? Programs only know so much about what a developer is actually trying to do and that's all that programs can speak to when they throw a new error message. So this error that I ran into, sorry, this might be a little bit tiny but this is a syntax error. So syntax error, unexpected token, less than sign in JSON at position zero. Has anyone seen this before?  So this is a scenario where you're doing, maybe you're doing a fetch request and you're expecting JSON so you're trying to do like JSON parse or you're doing something assuming that your response that came back from that fetch request is JSON and it's not. Usually in most cases it winds up coming back as HTML, that's kind of the way that we tend to make that mistake so that's why this little less than character is the most frequent if you Google this error message because that's what HTML documents start with. They start with that doc tag so that's going to be the first thing that you see here but you'll see this error message everywhere with like unexpected token E or U or any kind of whatever came back that wasn't JSON. That's all that program knows is that you told it to parse JSON and it can't. It doesn't realize that you had a content type mismatch. It just knows that I'm trying to handle this as JSON and I can't do that. Okay, so it really didn't understand our intent there. It didn't know if we meant to return HTML and we just forgot that that's what we were doing and we tried to parse it. It doesn't know if we are accidentally returning HTML instead of JSON. It doesn't understand that intent behind what we were trying to do there. Okay, the last reason and I think the most overwhelming reason why error handling is so bad is that we're lazy. Okay, we already admitted that we're terrible. So hopefully this isn't a huge blow to anybody's ego but we're really bad about as an industry about making sure that we prioritize error handling when we're building our tools. Error handling has significantly become a nice to have rather than something that we prioritize right off the bat and I think that's really unfortunate and really sad because it just shows how little we're willing to do in order to make a welcoming environment for new developers because this is such a big barrier getting these really cryptic error messages. So I did a really quick search on GitHub for the keywords better error, okay, and I wound up with almost a million issues related to better error messages and better error handling. A lot of them were closed, which is nice, maybe a good sign unless they're all just labeled won't fix, okay, but the fact that all these issues were filed I think is already a sign that that was a secondary concern because people wanted to ship their code, get everything open sourced and then they're like, oh, by the way, let's file issues to make better error handling later. Issues are something that you file so that you can take care of it later. That's how I interpret that. I highlighted this, this is probably a little tiny too, but I was going to use these numbers as part of my hypothesis, but then I didn't realize how, I wasn't sure how to interpret them, but when you search for better error, JavaScript has 135,000 issues with some sort of label around better error handling compared to Ruby's 44,000, I believe, it's almost three times the amount, so at first I thought, yeah, JavaScript is terrible, we just don't write any of our error messages and we don't prioritize this, clearly our ecosystem is a lot sloppier than Ruby's, but then I decided to think of it as we care more and we're more thoughtful about it and we're filing issues because we want to make all these things better, so that's how I'm going to interpret it. You can all interpret it however you'd like as Ruby developers, okay? So we mentioned that the problems with error handling are predictable and as developers, we have a tendency to find and build solutions around predictable errors. Predictable errors or problems are the best types of problems to run into as developers because that means they're solvable, that means there's a pattern to them and that means there's ways that we can fix these things, okay? So fixing error handling, I have a couple of ideas. The first one is self-correcting errors and awareness of intent. So self-correcting errors, we're already doing a little bit of this. This is just output of using RuboCop to do autocorrect, so you can use a flag on RuboCop that just says dash dash autocorrect and it will automatically fix all of your linting errors. We have the same thing in JavaScript with ES lint, okay? So that's really useful for these little code sanitation things. Maybe they're doing this static code analysis and they're saying, okay, you probably didn't intend to create this whole block of unreachable code or to put this line terminator here. Let's try to fix these things for you and that's what it'll do. I don't know about all of you, but I'm kind of at my limit for how much I will allow a program to automatically mutate my code for me. So I think this is as far as I feel comfortable going with programs like that, but I think this concept of awareness of intent, making our programs better able to predict what it is that you're trying to do and offer up recommendations based on that would be super helpful. The other, earlier this week I was talking with a developer at Google who works on V8, their JavaScript engine and he was saying one of their goals is when you have a, say you have a variable that's undefined and you have a ton of other, your code is broken, that's totally fine. This thing is undefined, but we notice that you're using a variable that has a very similar name all throughout the rest of your code base.  So that's something that they're working towards being able to do. Do this additional static code analysis to say, okay, we see this variable all over your code base and now it just looks slightly different over here and this is the only place it looks different, maybe that's the source of your problem. So a little bit more around the code analysis that we can do I think would allow our programs to have a little bit more awareness about what we're trying to intend to do as developers. Piggybacking off of that is community support and resources. So when I ran into that MySQL issue, there were, like I said, there were like 50 solutions on that, that Stack Overflow question. We have all of these answers to these bugs on places like Stack Overflow. People on Twitter will be answering questions like this. We have all of that community resource and research that we could be using directly in our error messages. So one of my favorite examples of really good error handling, which I'm not even sure if it counts, is in Chrome's developer tools. In the audits panel, I'm not sure if that has made it down to stable yet. I know it's in Canary, but in the audits panel you can run all these checks on your application around best practices and performance, accessibility, and whenever you have an error in one of those areas, whenever you have a failure in one of those areas, not only will it tell you how you failed, but it gives you a link to learn more about that error. So what is this error? Why is it important? And how do I solve it? So it will link you directly to the docs, write in the error message, and say, follow this guide, follow these instructions, and you'll probably be able to fix this. Okay? I think as developers we have a tendency to want to make things very terse and very concise with our programming, but error messages are not the place to do that. I think we could afford to be a bit more verbose with the error messages that we're creating and give these additional resources and recommendations of places that users might be able to find answers or solutions a little bit more easily rather than having them go Google it. So as you get more experienced when you're developing, yeah, Googling issues becomes a much easier task. You kind of figure out what it is that you need to Google, what parts to leave out, and what parts to put in, and maybe what keywords to add, but that is a skill. That is a skill that you developed over time, and it's very easy to forget that. It's very easy to forget that. It is hard to know what to Google when you run into a particular error message. And I think a lot of people lose that perspective. So when we have these vague errors, it's really hard for people to figure out where to go from there, how to understand that, read that, and where to search, okay? The last thing is writing error messages for our users and not just ourselves. So this one is really important because like I was mentioning earlier, I think my clicker died. No matter how many years of experience you have, we're all juniors when we are learning a new language or tool. You have some skills under your belt that will translate concepts and patterns that will be familiar. But we're all juniors when we're going into these new code bases and learning these new languages. So the audience that you're writing for really needs to be focused on that lower bar. Yesterday I was at a TC39 meeting where implementers and developers of JavaScript are actually working on the specification, the ECMAScript spec. And every new proposal that came up, people were constantly discussing, what is this gonna look like and do to newcomers, to new developers, to JavaScript? Is this syntax too confusing? Is it too hard for them to understand? Does it not fit with our traditional understanding of how JavaScript works and behaves? And that was very frequently a reason why proposals would get shut down. Because every person in that room was taking into consideration that there are constantly new developers learning JavaScript for the first time. And we need to make it easy for them to figure out how to do that, okay? So I think that bar of prioritizing your junior audience is super important. I know we had a theme about trust throughout this whole conference. So I wanna tie that in a little bit before I'm done. And just remind everyone that building trust is a lot in part of how you're gonna support your users. So having really successful and informative error messages is so important to have users that will trust you. I want to be able to build an application in any language with any framework and any library and trust that when I mess up, not only are you gonna tell me about it in a way that I understand, but you're also gonna help me figure out how to fix it, okay? So that's one of the biggest priorities I have when I go into new text acts and new languages. I wanna know that you've done your due diligence in trying to make it easy for people to learn and welcome people to using your application and your software, whatever it is that you're building, okay? That's the end of my complaint. So, thank you for watching. I'll see you next time. Bye.


My name is Kevin Berning and I'm from Casarot, Colorado. I went to undergrad at North Park University in Chicago, Illinois, and did my grad school at Texas State University in Austin, Texas. Being back in Colorado for sure, being close to family, which is always nice, exploring Vale, being back on the mountain, and definitely learning from best physicians in the world.


Hello everybody, Andrea here. So I have had my own dental hygiene mobile practice for about two years now. I've been in the dental profession for 15 years. So I definitely have experience on what to do, how to get started when you are a dental hygienist who can now start your own business, which is very exciting. I do teach a course. It's called Mobile RDH Academy. I'll leave the link for you guys down below if you want more information and if you want more. But in the video today, I want to talk to you guys about five things that you really should not wait to get in your business, like get them right away. Don't wait to spend the money later, spend the money now. But I'm also gonna talk about five things that you really might want in your business right now, but you truly don't need until you make the money. Because when you go to start your own business, as with any business out there, you need to budget. So let me talk to you guys about that a little bit at the end as well. So five things what you do need in your business right away, in my opinion, and you can ask others about this too. But definitely open up a business bank account, okay? You might think that seems very simple, but it truly makes a big difference and I'll tell you why. If you just use your regular bank account or if you open up a different bank account that's not necessarily for business or labeled business, you can run into a lot of problems later. If you get audited, if you get sued, if just things don't match up, it will be very hard to prove your purchases later. You might have to end up owing a lot of money back. Whereas if you open a business bank account, it not only keeps you organized, you can bring all of your income into that account only and your business expenses will come out of that account only. That makes it so much easier to come tax time for your accountant, but it also makes it easier for you because as a business owner, you should be comparing per month, per year, your expenses and income, how you can improve and how you can maybe spend less and that's the best way to do it. I do have a full module about that actually in my course if you wanna hear more, but I'm not going to bore you about that yet. The second thing that you really need to get is kind of related to the business bank account aspect is getting a business credit card, sorry, a business credit card. That's very important and it's the same thing. I don't want you guys to just get a separate business card that you're using or sorry, a separate credit card that you're using for your business. I want you to get a business actual card, like one that's a business credit card. Yes, you might have to pay a little more fees but those fees is a business expense. So keep that in mind, okay? I want you guys to get a business credit card because again, it makes it easier come tax time, it makes it easier for your accountant, it makes it easier for you to track things. So anytime you buy something for your business, use that business credit card. Believe me, it makes it so much easier. Number three, and I did leave notes on my other monitor here so I didn't forget anything. Number three is at the very least, I want you guys to get a bookkeeping software. So I'm not talking about a dental software right away. When I first started my business, I didn't have the money to get a dental software. I did all of my charting, bookkeeping, everything on paper, on the computer, on Excel spreadsheets, things like that. But at the very least, I want you guys to get a bookkeeping software. The one that I use is QuickBooks. QuickBooks, it's worth every penny. I think I pay about $10 a month and QuickBooks, I don't have my cell phone with me but every time I use my business bank account, every time I use my business credit card, it goes onto my QuickBooks app. So if I'm in the car waiting for a patient, if I'm in bed doing nothing, if I'm just hanging out and I'm on my cell phone, I can quickly go into my QuickBooks app and look at my income for that day, look at my expenses, put everything through, and then come tax time. All you have to do is go online. I believe it's under the reports menu and print off per month or per year, your income and expenses. You can make categories for different expenses to make it easier for your accountant. It literally took me half an hour to do my taxes this year. Whereas in previous years, without my QuickBooks bookkeeping software, oh my gosh, it took me probably a month to get the paperwork together, to get the forms together. Oh my goodness, it's impossible. Get a bookkeeping software, you will thank me later.  Don't wait until you get more patients.  You will get patients. So don't think about that, okay? Get a bookkeeping software. The next one would be get an accountant. So I'm sorry that kind of ties into the business credit card, the business bank account, the bookkeeping software, but get an accountant.  You will end up spending more money if you're cheap and don't wanna pay a good accountant because you don't know what to claim. You don't know how to claim it. Your first year, your first couple years in business, certain expenses, you won't get full credit on that right away, such as a sterilizer. I paid about $10,000 for my sterilizer. My accountant explained to me that they take portions of that per year so I get credit on it. They don't do it all year one because they realize a sterilizer is going to last more than one year. But this has saved me a fortune. When I first got an accountant that was the first year in my life, they owed me money. So the government owed me money back. I had always had to pay probably $2,000, $3,000 in taxes at the end of the year. Now they pay me, so it's fantastic because my accountant knows what they're doing. Plus they can set it up so that you pay taxes every three months or every four months from your business so you don't owe a big chunk of change at the end of the year. Get an accountant. You might be wondering how much do I pay for mine? I pay about $500 per year. It's worth every penny. When I just had like a personal accountant, when I first started my business, I just kind of kept the same accountant. I was paying $99 and they made a big mess of things. When my other accountant took over, they had to redo a ton of stuff. So get a good accountant, okay? So number five, what I actually have down here is I do have a dental software. So remember how I said just a couple moments ago, you do not need a dental software right away? Well, you don't. You can do everything on paper like I did but I paid $3,000, that's it. For my current dental software, I wish I had found it sooner. There are other dental softwares out there where you pay $10,000 and you don't even own it. I pay $3,000. It has everything I need, not too much, not too little. Has the odontogram, has the peri-o charting, has the billing payments. You can send things electronically. I talk about it more in my course but get a dental software if you can. Because what happened to me was I got a dental software maybe eight months after I started my business because I did want to save money but I ended up having to go back, put patients into the software like just to kind of keep things organized to get everything to balance out. And that was, it just took too much time. Whereas if I had the software right away, it would have saved me hours in paperwork before. I can't even tell you. It's just if you can afford it, please get a dental software. So those are five things. This video is long enough. So I'm actually gonna stop the video here. This is part one. Part two is going to be five things you might want in your business right away but you don't necessarily need. So stay tuned for part two you guys and thank you so much for watching. If you want to hear more, if you are a dental hygienist who is starting your own business, I do have a full course for that where I talk about everything in greater detail and I help you step by step. I help you with bank accounts. I help you with a business plan. I help you with budgeting. I help you with how to get certain supplies off of Amazon for a lot cheaper. Where to shop for your dental supplies for the best deals. How to get the best deals. I go through everything. So if you're interested, I'll leave the info for my course below and I'll talk to you guys very soon and stay tuned for part two.


Catch up and get ahead with the edge for the week of June 13th. A city council budget proposal would cut $1.3 million from agencies who provide safety net services, including for domestic violence, and use that money to expand workforce development. Mayor Ivy Taylor supports the reallocation. I would say that I think the way we currently have the investment categories make sense because I don't think we should keep making investments year after year just to see a continued increase. Here's what could be cut.  And money to pay for 24-hour crisis intervention services at the Battered Women and Children's Shelter. District 8 Councilman Nirenberg says the cuts are a big mistake. Antonio Barrick County area is number one or number two in domestic violence and child abuse and neglect and childhood deaths. And I think that the fact that we're now taking a million dollars out of that pot of money that's going to agencies that are already taxed for resources and manpower and facility space. We have, you know, for instance, the Battered Women Shelter takes in an average of 70 cases a day. And that fluctuates, obviously. I just heard that today they had on. Go to Nelcast SA to watch video of the budget session and see where your council person stands. Inside the moment of one of America's greatest tragedies, local transgender comedian Joan Riviera had one piece of advice. Fear overcome the day. Love, joy, peace. Be yourself. Be true to yourself. Find your mission and give it back to people like me who need a hug, who need love. San Antonio community members, including civic leaders, LGBT leaders and their allies, organized a vigil in Crockett Park just hours after the worst mass shooting in U.S. history. Go to Nelcast SA for a story about the event, a slideshow and video with some local leaders about the event. If you couldn't make it, there's a second vigil planned for Crockett Park on Thursday, June 16th. We recently had a conversation with Desmond Alexander from the Texas Hunger Initiative about ways her organization is trying to end hunger through community organizing and community development. Right now, the group's focus is helping more children get access to free summer meals. Right now, according to Feeding Texas, the participation, particularly along kids identified as food insecure in Bear County in summer meals is about 9%. What does that mean? Of the kids that have been identified as food insecure, and of that there's about 120,000 that, according to Feeding America, have been identified as food insecure within Bear County, only about 9% of those kids are participating in any kind of summer meal program. To find summer food site, you can use Nelcast SA's map or text F-O-O-D-T-X to 877-877. If you want to launch and staff a new site, contact the Texas Hunger Initiative at TexasHunger.org and they'll connect you. Kelly Allen, a passionate and tireless advocate for immigrants and social justice, died on June 5th, 2016 after suffering a stroke. As pastor of San Antonio's University Presbyterian Church, Allen helped form the Interfaith Welcome Coalition as a humanitarian response to the women and children fleeing deadly violence in Central America and seeking asylum in the United States. We've put together an anthology of video and links so you can hear her talk about the movement she helped nurture. Good morning. My name is Kelly Allen. I'm the pastor at University Presbyterian Church here in San Antonio and chair of the Immigration Task Force for Mission Presbytery. On Monday, a large group of religious leaders from the south and southwest sent a letter to the president, the vice president, speaker of the House and Senate majority and minority leaders. The letter was signed by religious leaders from California, Arizona, New Mexico and many from Texas. Go to NowCastASA.com for more on all of these stories. And as always, thanks for watching The Edge.