Diolch yn fawr. Jack of all Traig's Master of Nom is basically two of the cross here. I am basically Professor Daniel George as a substitute, so this is really my way of a vacuum, but this is a marvellous excuse to explore some of the things that I've been interested in for a very long time, going back into the 1950s, and some of you will probably recognise, but not all of you because it's a very young audience here. These are the characters from the radio series Journey into Space, and when that was produced, which was in 1953, people were recovering from one of the worst periods of austerity we ever had, and people were very positive, thinking about going into space, going to Mars, and in this programme, they got to the moon in 1965 and to Mars a few years later, very impressively, and they did it actually in a rather good technical style, and that was because they had terrific advisers on the programme. Now, that's austerity period I think is here now, and we need to have a good look at what we're doing in space exploration, and that's what this talks about. I will ask you one question last time, to think about till the end of the talk, which is what's the Scottish connection here between these guys you could see? Try and think about what that might be. You'll find some strange references to Scotland in the story as you go through it. Scotland is a peculiar country for developing ideas and where ahead of its time, and I've almost found that fascinating. Before I start, I would like to say on behalf of most of the scientific community who are represented in Glasgow, is that today we lost one of the really great theoretical physicists and cosmologists, Steve Hawking, who died in the early hours of this morning, and he's probably been one of the most amazing scientists that's been around in the UK, if not in the world, because not only has he solved some amazing problems and made us think very hard about things, but he's been able to communicate that to ordinary people, and he's probably produced more real stimulus on some of the hardest signs of science that anyone has done. Most science that you see on television is so dumb down to the field, to the so-called man in the street, that it's not worth listening to. They don't see any joy in anything, but he was really good at getting past that, and I think it's only right that so much has suffered and said that he did a doubt-rich job to last with that illness for that long. He's an amazing fortitude, so I thought I'd just say that. OK. Now, to turn to something slightly different, I thought we'd have to start this talk, and I thought I would do, this is the age of Donald Trump and fake news and things like that, so I'm going to give you a fake quote. People I know have been using this quote for years, but there was a person before Donald Trump, and he was called Dan Quayle. Dan Quayle was last president for the first George Bush, and his job as last president is to be in charge of NASA, the Perinaltics and Space Administration, and the popular story is that he came before NASA with this huge audience of thousands of people sitting there wondering what he was going to do about the bunch of things like this, and started off by saying, the space is big. Really big. Unfortunately, the budget wasn't. A one that I'm going to try and get at tonight is that there's something bigger than space, which is the cost of trying to explore it with human beings. And we're in a period of austerity, we need to think how big we are. And just to show you how big it is, I'm not going to go very far to this, because you just ring up our neighbours to see how big space is. And here we are. This is the biggest nearby galaxy, the Andromeda galaxy. It's only 2.5 million light-years away, and it takes light about 220,000 years to cross from one side to the other. Why it's interesting is it looks exactly like our galaxy, the Milky Way. It's only recently been shown this year that it is almost exactly the same size. And the reason why we need to think about this is we all have bad neighbours. This is a bad neighbour. This neighbour is coming towards us, at a slight angle, and it will hit us in 4,000 billion years. That's why we need to develop serious space travel, and we've got some time to do it. So this is what the talk is about. I'll just go through a bit of history, some aspirations. We have the technology, a little common wall story. They have some serious stuff on the costs of space flight, by which I mean human space flight, is where I take my argument.  My attitude towards finding an austerity way of doing this, so we can explore space on the cheap, and more leisurely, and more intelligently, is to look at some of the models that have necessarily emerged since the early space programme. So I'm going to do a couple of examples. One of which is remote sensing, which we have something to do with it in Glasgow, and robots and swarms, which we also have something to do with. I'll just put that in some general pictures. This is a gigantic topic, and I can't cover everything. But the big strange thing in all this is, what about these billionaires, like Elon Musk and things like that? One reason that I'm glad I've actually put something in on this is that Stephen Hawking did a lot for the billionaires who are entering space flight or trying to promote space flight by just being a champion for it, and he's done a marvellous job on that. And I'll conclude. So, when it will start, once the Tim Seel Skolski in 1903 worked out the theory of what we needed to do to go into space racing with rockets. He wasn't well-known in our house, I was an 18 country. We're angry everyone was well-equipped to understand space flight, because Jules were in HG Wales and moved their adventures into space as they ran out of things to do on the earth. And the only serious person around was a real experimentalist Robert Goddard, who's here, and he's here to get on with it. That's what he did. The rockets of his inspired rocket societies in America, Germany, Soviet Union and Britain. The British Interparnation Society was founded in 1933 and their most insignificant moment was when I joined in 1957. Being British, we did it differently from everybody else. The British Interparnation Society was full of real experts. They designed rockets that were going to build liquid-fuelled rockets to fly into space. Then the government thought of them by the Explosives Act of 1875 which represented all this in the UK. So only theory was allowed, so we didn't do very much. But Werner von Braun in Germany managed to swing the entire Nazi vengeance program around to his way of thinking and building V2 rockets with the aid of slave labour which wasn't really recognised until after the war. He also was the person who developed the post for US military rockets and ultimately the Saturn V rocket that got them to the moon. Similar stuff was going on in the Soviet Union. The military and travelling in space that all was mixed together. This is him here talking to all these military people at the British Ignisile Agency. There are people that agree with all this. Two are stronger than the Royals. Spencer Jones and Woolly, who is his successor in early 1957. Both of them independently said space travel is a bunk or space travel is not a bilge. I have to look at these words and find out what these really mean. Now these have to be much more fragrant in close these cases these guys knew exactly what they were talking about I totally agree with them. If they had seen this first slide they would say yes that's what we mean. We aren't going to run drunk with it. Not soon. But a few weeks after the first talking went up and then in 1961 Yuri Gagarin in the case of the first person in space the only thing I can say about these guys was that we died now. The Lord Kelvin did the same thing he said radio has no future in 1897 well they didn't have the presenters I think that was the problem. Well we have the technology this is a pass on really to the moon the glory days six landings on the moon twelve astronauts all together in the period of 1968 to 1972 public lost interest about 1972 and it's been a struggle to keep that part of the dream alive. It was a cure military and economic battle between the Soviet Union and America that made this happen but the brilliant science and engineering going on here how they did this with the rubbish computers they had in those days they just don't know if it's quite incredible. So there we are someone walking on the moon and you can guess which one it is because the one with the camera is Armstrong and he's slowly graphing his friend who's not older but not everyone believed it and it died down from the skepticism along with the fact that things like this but it was resurrected by Capricorn One which was a Hollywood movie in 1957 which brought it all back again it's never gone away there were people who would go through the photographs and Matthew said okay that could do it so where's the money gone is what I'm saying Anyway, here's a cold war story for you which will show you sort of things that went on there were spy satellites from the early days and mainly because they're practically being shot down so spy satellites were done quite early this is the Baikonur rocket base in the Soviet Union in early 1961 and you can see here that there's various things to look at if you were skilled you would see there's all sorts of stuff in here here you can see quite clearly on the bottom left and the top right two huge rockets and you can't quite see that I suppose but there were people trained to take those images and turn them into droids so there's one which is pretty scruffy of two rockets on the launcher and this is what a single one looks like you can see this thing it's big it's about the size of a Saturn 5 rocket this is the Soviet moon rocket and the space race that we all remember hearing about in the 1970s was a real race because NASA knew the Soviet Union had a rocket that could go to the moon this is their moon rocket they built about seven of them so what happened this was early 1969 well there's the moon rocket that's the Soviet photograph and this was the photograph taken again by a spy satellite in autumn 1969 and you can see that that base was being blown to pieces it's been a huge explosion there and this was known and if you look at the Soviet logs in February 1969 one of the M1 rockets this China moon rocket's failed July 3 just before the American moon landing another one failed at launch and later on in 1971 and 1972 the others failed these two in 1969 stopped the chances of Russia going directly to the moon when it didn't leave at all and NASA knew that and this was not widely known it was known a bit in the scientific community but it wasn't widely known that this was a real race and there's no way of knowing that that rocket could have been that long anyway it's an extraordinary thing on July 20th Armstrong or Rhinand on the Moon well this brings these to some of the hazards how many astronauts are there being this is quite difficult because it keeps changing but I've tried to count this up I think there's been 562 most in Earth orbit 12 landed on the moon but it's 12 in space mainly through the shuttle program where we lost two shuttles during training to 13 and if you look at the number of fatalities due to rocket explosions pre-1945 were about 15 which is remarkably low actually and then 1960 to 2007 280 people have been killed worldwide in rocket explosions you don't hear about that very often but it's a serious number so 320 fatalities and this is how much it cost in real terms this is a billion US dollars here on the vertical axis normalised it to 2014 and the year from 1960 to 2020 is a lot over here actually it's 2018 the massive budget which is typical of space budgets in many ways and some of it's hidden because it's military but it's like a long shot much the biggest spender and it's 19.1 billion dollars at the moment per year and you can see the peak in the period when the Apollo missions were on that massive group peak there and it was 4% of the gross domestic product to the United States at that time huge investment and then there's all these other bombs on here it's quite hard to make sense out of this but it's been pretty flat-ish since the mid 90s basically and yet they're preparing for a lot of things how does it split? well manned spaceflight takes 8.7 billion dollars the scientific side takes 5.7 billion that works out as the total is the US defence budget which is 6.86 billion and the UK defence budget is about 56 billion so it's about 34% of our budget there's lots of infrastructure like all the things that are needed for the mission controls and things and stage ground stations and things like that so there's a huge amount of money and spent hot stuff how does the science budget work out? that's only 5.7 billion the largest amount is primary science and then the three little ones are astrophysics and telescopes heliophysics and the James Webb telescope which is going to replace the Hubble in a few years that budget is roughly similar to the entire UK science resource budget that has an overall span in NASA's budget it's quite small and it's actually not very well done NASA's big projects were Apollo it took 11 years and that was the biggest apparently biggest cost but in fact the space shuttle has been bigger it's been a 30 year program and the international space program is 21 years and the Mars mission which is a big purple bit at the bottom it's going to take 18 years and its present estimate which I think is ultra conservative is 450 billion dollars there they are I'll tell you why they're so ridiculous they talk so they are being happy they've got a PC being a Mac I've said this completely different and then there are other people who have come up with the billionaires like Elon Musk and this is SpaceX the Falcon heavy has just gone into orbit carrying instead of a lot of concrete which is what we normally put in the third stage when you're testing a launch ship he put his car in there and all sorts of things maybe you'll see more of that later and he wants to put this thing on Mars in a few years and you can pay a lot of money to do it you go with it there are other big players in space I put this in at the last minute just to show that I've not ignored everyone the really big player that's interesting is China and it's thanks to the buck than anybody else over a long period of time they've had a space program and it's mixed up with the military as well so it's been fed hard in the military but it's been quite amazing and even India has got a pretty big program there's done some quite good stuff there and if you compare any of those figures with the US they're nowhere near it so it looks at first as if the Americans have got it signed up and the Hubble telescope cost 6 billion over 20 years so-called the Wilkinson probe 0.1 was $150 million it's nothing 10 plus years Mars Curiosity it came down by an autonomous robot lowered it to the ground to me the biggest breakthrough yet in space exploration a robot on its own landed that thing and in the future you'll see the same kind of thing going back into space with samples and so on the Webb telescope which will replace Hubble 9 billion it's no more small projects but actually really worth more and I wanted to mention this Wilkinson microwave anisotropy probe it's launched in 2001 what did it do well it wrote down the age and flatness of the universe it looked to the distribution of ordinary matter dark matter dark energy, the origin of galaxies all kinds of stuff and it got the top three citations in physics and astronomy for this decade and a Nobel Prize so it was amazing stuff $150 million for that and we've got guys going at the end in depth experiments with gel over things in the International Space Station never got near this $1 billion to put them there I just don't see there's a comparison so what's the balance well human space flight has cost half the mass of Earth the scientific returns have been pretty poor mostly derived from the unmanned space programs Hubble was launched and serviced by the shuttle though so it needed humans to fix it at one point and that's the important point again in near Earth lots of satellites are launching up here but nowhere near as the numbers have gone up from different sites there's been about 10,000 satellites plus each month 30 or 40 go up is a good document and yet only 99 will launch by the space shuttle and it was a bit of a disaster when it came down to it and Congress has got here now and GPS and things we take to communications, satellite TV all this stuff huge amounts of money in this I couldn't figure out what the total amount is if it's seriously big the people making money out of it so something's good which is good, it's a big market so what's the evolution of space flight in the new millennium well near human space flight is in resurgence scientific exploration is about in orbit telescopes like the web telescopes the gravitational wave detector system in space which I think would be really brilliant probes autonomous probes robot landers and so on lots of new technology, new emerging technologies there's been strong commercialisation and there's been a kick in the seat of the pats of the people through the conventional rocket industry by these billionaires that have come on and it made new things happen and there's lots of new emerging technologies and the thing that is slightly worrying is this new rush to put humans on Mars is a bit of a problem I love putting a spoiler in here now because if you're trying to make a mystery out of this to the rest of the time but I think putting humans on Mars is costly, suicidal and unproductive so that's my point at the end of this I can any country really afford to justify the huge cost to sustain human beings in messing around in a really hostile solar system this is not like Antarctica or the top of Everest this stuff is really, really dangerous and I'll say something about the ethics so Mars, this mission to Mars it's been around since Obama was talking about things in fact we should have gone in 1985 but the lack of public funding then stopped all that so that's the spirit Mars is an interesting thing it's about one and a half times out of the distance we are from the sun so we've got to use light years and things where it's not light years it takes eight minutes for the light to get from the sun to the earth and it takes about 12 minutes for the light to get from the sun to Mars so that's the distance and remember we were talking about light years when we were thinking about solar systems itself and so on what's good about it, well you feel less heavy the gravity is about a third of the earth we love it you can't breathe too well the atmosphere is carbon dioxide, 96% so it's taxable presumably there's argon, nitrogen, not much 0.15% oxygen doesn't sound too good the mean temperature is minus 63 Celsius with a high of 35 in some places a wind speed is quite low 65 miles per hour 100 miles per hour and you don't feel it because the density is so low it's really really low density and a really low pressure it's 0.006 atmospheres one atmosphere is our pressure and it's 1000s of that so that's quite historically so actually moving around on Mars in the movies this is a picture of Mount Sharp from Curiosity Rover which was one lot put down there by the robot Mars machine teleoperated partly from the earth with proper scientific instruments on it which is looking at the chemical composition of the planet and trying to get at this hill but it's making this it's doing well and we found loads out it shows that the radiation on Mars is pretty lethal there's no biosphere ultraviolet from the sun which is about half what it is on earth comes straight out so that all the other cosmic rays and everything else that's like is an exceptionally dangerous radiation hazard environment all the dust you see there is electrified it's all electrostatics there are very strong environmental effects which I want to go into about living on Mars what I really love which is such a great idea because people are pining on doing this mission before they actually found out what was there but lots of the probes like Curiosity have already found that the soil is toxic most of the soil is allophase effing 203 it's now outside and things like olive iron and lots of smashed up volcanic materials turned to a fine dust the dust on Mars has the consistency of talcum powder I'm not making this up Curiosity has gone and looked at the stuff and it's fired lasers as it is measured it knows exactly what we're doing with but the toxic soil is perchlorate I was going to say something that sounds more positive than I've probably but the positive thing is that what perchlorate is good for well it's calcium CLO4 twice so there's a lot of oxygen in there and this of course uses a rocket fuel in solid state rockets so we can get back there's oxygen there so we can get the oxygen out we use the chlorine to clean the loot so that should be ok the other problem is that what's the concentration of perchlorate well if you look at your warning things on anything with perchlorate you'll see that it's very tiny amounts are really dangerous to humans and many living things and the amount from the soil on Mars is between a half and one percent of the soil the toxic soil it's not real soil because there's no organisms but the top half is toxic so it's lethal and because it's calcium powder how are you going to clean it out of the filters? so you send it to people there and they say oh sorry what happened to health and safety? the dust effects are bad you can completely obscure the planet but once in a time by the clouds which is set up it's not strong winds so it's a very thin atmosphere and this stuff will witness garbage and pass all this toxic stuff all the way around everything you've got so you could live 1,000 feet underground it breaks the question what do you do about crew health? journey into space they took a doctor with them so they don't really talk about all that and they actually went through some of this stuff it's quite interesting and they're worried about carbon dioxide it's not good to breathe and how long do you last do you take out on yourself? so the crew health is an issue there's other stuff prolonged low gravity, prolonged low light psychological effects of isolation from the earth lack of using the internet social media that's it well I've been arguing for going this for a second well this has all been studied and is ignored by the newspaper but there are millions of people well not really it's hundreds of people we've volunteered to help with this in 2007 to 2011 there was an experiment between Russia the ESA, the European Lop and China to simulate living on Mars for 520 days I mean it's just, you couldn't make this stuff up I'm not even going to explain this to you but they just did this stuff and said it's fine no problem I was just sitting on earth I'm probably going to leave it for a game there was milky toxic there at all they didn't have me fail they didn't have any Apollo 13 moments when they shut down the whole system and said what are you going to do now with the duct tape they didn't do that anyway they've been lurking this stuff and lots of young people volunteer for this all time this is it, absolutely amazing you don't see old people volunteer for this it's a good thing well just getting to Mars is a problem there's the solar wind which is deadly ionizing radiation to the rest of us it's going to hit that spacecraft for several months as you're making your journey from the earth to Mars and then it's still there when you get out and go through customs on the right you can see this is the sun that's being blotted out in the middle here it's a time lapse as you can read at the bottom 2001 at a coronal mass ejection if you look carefully it says boom it certainly goes off and it's really good again there it is and that's the size of the sun inside that little circle so that was big and if that's showing up like that that's a lot of serious high energy stuff that's being chucked out in space and if you're on the earth from the big coronal mass ejection it's saying you're right at you it can knock out not just your GPS systems it can knock out power stations it's serious in fact we can still worry about this but usually it misses but if you're out in space and that thing's spreading out you've got a little tiny spaceship you need to worry fortunately people like Ruth Batenford I met many years ago a lot of the lab in Oxford she had a brilliant idea how do you do justice by yourself if you work in the nuclear industry making bombs? so what's the good use of a bomb? well she said originally you could put a nuclear bomb just going off all the time continuously going off behind a spacecraft and that would form a big plasma and if you had a little magnet in the spacecraft that would interact with the plasma and you would get a magnetosphere around the spacecraft just like the magnetic field of the earth causes a magnetosphere which you can see in this picture on the right that's the earth supposedly exaggerated distances here there's the sun here's a wave of garbage coming out and these are the lines of magnetic force of the field surface around the earth which is a dipole all bent to one side by the plasma that's impinging on it here's the shock wave and that magnetosphere is what saves this planet and getting exact by all this rubbish that the sun's checking out if you're in a spacecraft can you do the same? and she said originally we just put a bomb there anyway that got a lot of publicity and she got a lot more money and that she's done it properly wonderful stuff what you can see in the bottom slide is their idea this is a European collaboration here's a big superconducting magnet and here is part of the space vessel and this is the crew courses and there is a region here which is called the safe region the diamagnetic cavity which is a little bit like this region here where you put a hole where it's safe and what they've done is they've introduced a plasma into this region and because of this magnetic field here the plasma forms this shock wave and protects the documents now the earth's magnetic field I never know what to do with you so I've forgotten how Gauss and Nerstans and things work Tesla's the earth's magnetic field is about 44,000 nano Tesla's I just think 44,000 what you need to stop the solar wind and use the solar wind to protect you by making this artificial magnetosphere around in the spacecraft is a few hundred nano Tesla's so you can do it with quite a small magnet and the idea is you only turn this on when you need it to you get the bad morning and you see somebody building up and then you turn it on and you may want to turn this on big very strong magnetic fields in case something really nasty happens like a coronal mass ejection and this is what their idea is and this is a laboratory thing that has done that of an actual experiment doing this full scale system and how do you make the plasma originally we were going to think of having nuclear drive or something but you could just inject xenon xenon ions around the spacecraft there's enough according to this model to put a productive area around it the problem is this has never been tested in space and there's all sorts of other issues but I think it's a cool idea and I think that's good thinking that's thinking in advance of how you might solve this it doesn't stop with big ejections you've never got to cover that and the worst that's an ex-class solar flare from 2014 it's a real picture they have different wavelengths to show you the effect you can see the horrible thing coming up that's serious high energy X-rays and one thing we know about X-rays they go through metals like spacecraft fairly easily there are ethical issues about all this genetic damage there's been a twin experiment done Kelly went into space three years ago on the space station leaving his twin brother who's not an astronaut on Earth and when he came back a year later they started looking at his genetics checked his DNA found all sorts of interesting things because he changed his height all sorts of things happened to his space most of that are recovered after a few months but there's been a substantial shift in his DNA he's genetically different now from what he was before that's one year so you imagine sitting on Mars where you're going to get the same problems and then it's low gravity all the factors are there some of you have said we'll have one way mission why don't we just call them suicide missions we'll give them ins and volunteers and just go out there I just cannot see what the legal basis for that is Master Stay project maybe this is what we'll do when we can't feed all the attention as much longer than this because Brits will send all their way out to Mars anybody searching the NHS so that's solved that problem well journey to the stars oh come on 4.7 light years there was a nearby plant 5 stars has an exo plant plant outside of the solar system which is rocky which probably means uninhabitable but that's the nearest neighbor we know so I think those astronomers were quite correct space travel in these big distances at the moment is bum because you cannot see the path we're not ready for this and if a large distance is involved you better do something moody skew that travel actually there are people who think you can do that one is really interesting I wasn't going to mention this but it's insane so I think if you look at general relativity carefully enough there are ways of distorting spacetime to make a bubble around a spacecraft and it could fly faster than the speed of light in some of the region so you'd have to cover huge distances very effectively and if you do the maths on this it's a useful result because what's really nice no one does this if you're a theoretician so you never do the numbers properly if you do them dimensionlessly so you don't know how big anything is and I speak from experience here if you do the numbers, put the numbers in you need energies which are like collapsing a whole galaxy converting the maths into energy to get this effect to work so I don't think that's a worry ok so what else would you do well there are two approaches in our austerity that I wanted to talk about just to briefly go through some of the models there automatic remote sensing means can we do I think we're clever about the way we sense information from a distance as long as I already do this when they're looking at science and something there are other things we can do like exploring Mars and things like that from a distance I'll give you some examples of that unmanned probes, we already know they're called drones in warfare and there are also these annoying little camera things that fly around photographing you when you're somebody in the car and those can be made autonomous quite easily now we know nothing about artificial intelligence or robotics to do that the first robotic landers like Curiosity which I say is their big achievement is to land that module of Curiosity itself by this thing wobbling over looking at the ground figuring it it didn't do it perfectly the reason they had to do it was not because this is the intelligent way to do it they did it because the alternative is to use airbags now the Brits use airbags when they put vehicle 2 up and we know what happened to that when the lander is big enough an airbag is not good enough to land with so they're having to land properly now and the billionaires have shown us how to do that so that's nice there's lots of new and emerging technology which is not time to sort of come as intelligent days of processing possible to billions of amounts of data now which is starting to appear in astronomy and in space analysis and so on the autonomous robots now exist you can see these funny dogs that are wandering around from Boston Dynamics they look quite cute but they're military that's what they were designed to be military machines they're exceptionally dangerous I think because I don't think you can train them at least I don't wheel a lot with a floor artificial intelligence in the real sense it's not advanced a lot but in practical senses it's advanced enormously and we haven't really used that properly low cost space flight is now you can reduce the cost by huge amounts by using the boosters again and it's not just changing the methods of propulsion and so on and the stuff I'm really interested in is swarms now when Febrto satellites there's hundreds of these up already these are things about the size of a brick a complete communication system you can chuck them up into orbit of some spacecraft and free ride off of the spaceship and you can use those to moving lower orbits for instance to distribute the internet to say Africa or something like that that's a kind of good practical sense of using it and these things are passing the signal from one to another and between the ground lots of advanced electronics and systems engineering are going in there a lot more about it is growing every other satellite that's going up is one of these things I'm interested in the really small ones particularly smart dust which is things that are robotic systems about the size of the grade of the satellite that's on the silly side of things at the moment but not entirely as you'll see let's just look at some quickly on remote sensing this is a map of Mars from the Mars orbit laser alternative experiment which map Mars in detail it's called a code it's low is blue and this is very low this is the helax base massive area it's so big that it's pushed the Earth up well Mars it's pushed up on the other side you would realise this is an ordinary map that's one side of the planet that's the other side of the map it's shut up and what's it got there a massive volcano here this huge marina valley along here is the most amazing chaotic region and over here is a nice quiet spot it's called Sidonia that's its coordinates on Google Mars Google Mars will take you there but it does not give you the route well that was an interesting theme because in 1976 NASA released a photograph from the Viking mission that had gone to Mars of the Sidonia region a region of about 50km and what did they find in the photograph, I didn't really see this it was a batch processor this is the most cracked photograph I've ever seen and the benefit of being a bad processor there is the famous space on Mars well I remember when this picture came out and I thought that's the rubbish that's one of the worst photographs I've ever seen because it's been overblown it's been processed and you can see the noise every black spot in here is noise the white spots too I mean it's full of noise and you want to ask yourself what's the pixel of a solution we'll come back to that later well that's the face on Mars and it's very interesting that Glasgow had a party always North Kelvin side second grade school existed during the 1970s until the mid 90s and it merged with Cleveland in Helvedale in the late 90s and it was finally demolished in 2003 and what Chris O'Cain who I've never met I understand that he was a member of staff who encouraged the students to look at those massive photographs and look at all that area and they saw pyramids there as well as the face and one of those pyramids is called the NK pyramid after North Kelvin side because that's good it's absolutely amazing and I was teaching in this processing and pattern recognition at the time which is very boring to my students so I was doing it all through space so I was digging out stuff from friends I had in NASA they were sending me the raw data and we said we won't look at those so then we heard about these people so I thought I don't believe there's pyramids there which is a scientific approach so we looked at the raw data that's actually good data from that region you can just see the face on Mars there we went over this step here there's all kinds of plastic there this is one of the better raw data images of the whole region and there's stuff in there well we processed it that was 1977 data that's our processing of it really bad because the pixel resolution was awful something like 45 meters per pixel and most of the bits that you've got were on a 64 pixel by a 64 pixel array so anyone who sees faces measures sharp angles of that resolution well so we looked at it and kept the students happy for a bit and that was processed that particular was in 1996 and the reason we did it is because I was getting resurrected then because in 1998 we knew we were going to get a high resolution which is a better resolution in 1998 this is the original region up here of these pyramids and there's this particular pyramid this is not the NK pyramid but it's an interesting one and everyone sort of blurred their ways and said yes these are straight angles and places, this is the Egyptians got here first it appeared in Doctor Who so it must be a show this is our this is the Glasgow image processing which is just as good as ours I took the raw data and at the same evening we had this stuff you can actually see boulders on here which are quite big they're sort of a 14 foot across that sort of size then you can see the deep structure here this is quite clearly a meser it's just like parts of Amazon it's hard material which has been weathered away by the Martian winds or toxic stuff and I'm not sure I've shown you the NK pyramid but it is, that's the pyramid so that forever is Glasgow's contribution to Mars this is the face on Mars I took the original data and instead of trying to get what I wanted I looked at the raw data and used the scientific stuff to extract all the garbage and that's not an easy thing to do in image processing 43 meters per pixel resolution and that's what the raw image looks like 64x64 array my people say I needed that space but humans are good at saying that this is what we did which is a very fancy software which I won't talk about here but allowed us to reconstruct a three dimensional image from this information in a sort which is what other people have been feeding on the information they might make in the image video we did this because of work I was doing on molecular electronics that I tried to image molecules of atomic force microscopy so it's a complicated business this is what we got that's one view of it this is a side view it doesn't look anything like a face if you're a mum or a baby I'm going to say that this is the better data that came in 1998 at the face that's the raw data that's my first pass of it before I corrected for the projection the peculiar that's the original rubbish up here and here is this the user and the story but that's remote sensing with limited information really bad signals you just suffer by doing it properly you extend that to putting something with only a few pixels resolution out of the nearby star system sending the data back over many years maybe we could do things by just being smart about it what people tend to do it's like computing if you've got big computing you don't think about the problem it's pushing on with big computing even if you have an analytical solution why do you do that? I don't know this is the best photograph we have the European Space Agency a raid for them they did stereo cameras high resolution this is down to 1.4 meters for pixel resolution and there is their best shot at the face on Mars even with the correct colours there's my picture from the 64 pixel thing I don't think there's a lot of difference in that actually and it shows you that if you do the right thing that you build the information out by thinking about it it's stopping it at smarter so that's the thing about remote sensing and that applies to lots of things that people do in space we went on to look at craters partly varied craters heavily eroded craters we used AI techniques and so on we were able to take a picture of a crater from the data from spacecraft reconstruct a mathematical model of it automatically and reconstruct three dimensional maps so we could then look at interesting things like this field here is a field of varied craters partly varied craters and we could extract the craters structures under here automatically and get 3D profiles of them this is really beautiful this looks like a circle these are boulders this region is about 200 meters across and these streaks are little dust-dell streaks on the surface of Mars and as boulders all over we just ran that through the software and it came out with a whole set of nested varied craters structures and that's actually quite an interesting system it's been varied under the sand and the indentations presumably allow the boulders to follow the indentations there's slight correlation in that so you can see the circle where it's supposed to be we did the same for looking at the chicks look crater in Mexico by looking at artesian wells this is my brother-in-law who's a geologist on that project the second austerity approach is still looking at things like swarms swarms and smart dust there's a lot of dust on Mars there's a dust force a lot of water force dust flying over the edge of the crater this is one of these sand root dunes and this is smart dust this thing in the middle one to two millimetres across this was worked out in the late 90s and I had these people doing this in that period and they got an entire system on there with sensors, communications, everything two millimetre sites and we were interested in okay you can do all this stuff and they were thinking of using it for surveillance techniques and things we were literally very interested in this but I want to know how the hell you could move this stuff around so it could be useful for people that are investigating exploring a region on their own and sending you the information there's even ways that tiny things like this can send a big signal to you using phases of rating too much of this talk so something that's the size of the grave and the sound, how could moats move and communicate I start thinking about Martian exploration and we came up with some ideas aimed at 2021 nanotechnology trillions of devices on a small scale The way the mass moves on Mars is it, the motion of the smoke dust is identical to the motion of the sand or the particles on Mars. Its motion of windblorn sand that's worked out by an na right corner to the back end Hoox, way back in the 1940s and 1950s. The basic process is called rotation of particles, are prints of the air and by the impacts of other particles they sort of pop and float along and then go down and then they wave and come out again. Mae'r uchelch yn ddaill yn y Ddeudol o'r llwydoedd o'r Arsenaeth Cymru, mae'n ddod yn safon, mae'n ddiddio'r sian ar y flatt, ac mae'n gilydd y ddod i gyd yn ymgyrchol, ac yn ddiddio'r cyffredig yn ymgyrchol. Mae'n gwneud o'r lle'r lle, mae'r lleon i gyfosib. Mae'n defnyddio'r lleon i'r llwydoedd i'r lle i wneud o'r bod nhw, Mae yw ymddi. Yn hyn mae'n gweithio'r amllwyddiadau, mae'r rhaglenol ym hyn yn golygu. Yn y llyddiadau ym 100 yma gyda un n Eren, ennill yn y penedigau ar gyfer cymdeithasol, lydym yn awddiadau, yna'r bwrth yma. Mae'r hydrodynamicys, mae'n unrhyw. Mae'r hydrodynamicys, sy'n meddwl yn y rowdydd... Mae hynny'n gallu willa iddo. Felly mae gennym ddigon o fuddiad o éw. Mae'n ddiddorsion i'r ddiadwyd yma chi'n gondol ychydig. Ieach y fwrdd yn deall yw yw'r cyfrif yw'r ffordd. Fy fyddwn i'r ffordd, rwyno beth yw'n ddisgrifi'r ffordd. Fyddwn i'r ffordd, ddisgrifi'r ffordd, rwyno beth yw'n deall. Rwy'n dechrau'n fyddiatod diwethaf a'r cyfrif yn gynyddiad ddisgrifi'r ffordd. Fyddwn i yn chysyllti 2009, i gael eich collim arall yr cyfrif. Ie', yn chysyllti'r ddisgrifi'r ffordd, felly roeddwn i'r gwyllion wasanaeth yn y solio a'r siŵr o'r lŵr. Wrth nawr, mae'r gwynhau'n ddysguedig sydd, a mae'n bywch arno ar fath o wydd ymwylliant, yw'r drwf yn ddechrau, a ydych chi wedi bod yn ddweud o'r fath. Byddwn yn gwneud wnaetol gofod ddod o'r ystafell o'r byw deitio ar gael ei wneud. Dyna eich bod gwneud yw eich bod yn ddysguedig. Rwy'n ei wneud o'r pafur ac yn ystod hynny ar gyfer staffau o'r Prihau. Mae'r defnyddu sy'n ystafell o'r llerion. Felly mae'n meddwl am ystafell, mae'n meddwl mewn gwirio'r gorfodau gyda'r rhaid i'w ddechrau'r ddechrau. Mae'n gallu'r idea o'r gwirio ei gallu gwirio'r busu dod o ddisgu'r teimloedd cyfnodig, oherwydd y gweithio'r meddwl a'r modigau'r modigau, os yw'r modigau'r modig, ac rydyn nhw'n byw i'n meddwl ar gyfer y cyfnodig cyfnodig. Cyddiw'r eich archifau rwy'n ei gwrdd. Ac mae'n gweithio'n gweithio arall, a mae'n gweithio ar y cyflwmp. Mae'n gweithio'n gweithio'n gweithio. Mae'n gweithio'n gyflwmp. Mae'n gweithio'n gwneud o'r ysgolau.  Rwy'n deall felly mae'n rhywbeth o'i'r mawr. Rwy'n credu wedi gyrhaf o'r system ran yn ymdeithasol. Mae'r rai yn bryd, ond mae'r cyd, ond mae'r cyllid yn dweud. Rwyf wedyn yn rhoi cerddau iawn. Mae'n ddod yn gynllun yma. Rwy'n gyrmunodd hynny ymgyrch yn ei wneud i gyrfa i felly eu gwasanaeth yn gweithio. i'w ddweud unrhywuniaeth ymgwrdd hyn. Felly mae'r prosesau ar gyfer y syniadau hyn, mae'n cymryd yn gyntaf y 2016, ac mae'r casfodd yn 2016. Yn ystod, mae'r cyfryd yn cyfrifio'r cyfryd yn cynyddiant ac mae'n cefnwys iddo, mae'n gyffredin, mae'n cyfrifio'r cyffredin yn cyfrifio'r cyffredin. Yn ymgylch, mae'n gweithio'n cerdd yn ein 1,000 centio ymlaen cyfrifio'r cyfrifio cyfrifio, Ie'r wawb tyfnwys, ein bod yn ddechrau tyfnwys, ac yw'r un i'r arfer, a'r rhaid hyn o ddweud ffraeg ddaf yn ddweud ar ddweud, a ddoch i'r ddweud i ddweud i'r ddweud i'r ddweud i'r ddweud i'r ddweud i'r ddweud i'r rhaid. A byddai 50-20 cent o syniad yn ddweud. Iewn oedd yn i amser i'r ddweud i'r syniad a ddweud i'r ddweud. Ond ydyn ni'n ysgu iawn i'n y Proxamus Centauri V, y tu'r ysgawr honno yn gwir ywager ac fe yw ddyn nhw'n rhaid i'w dwinu ychydig, mae'r pethau cymdeithasol yn gwybod gw'n gwybod gwneud ond maen nhw ymlaen. Fe oedd yn galwio fawr eraill arfer y cyfle a oedd y dynnu o'r ffordd o yn ysgawr sydd. Ta'r rhai o'r lles o le'n weld lles ychydig am yr oedraeth, ac mae'n sefydlu o'r hyn ymwysgau am gyfrannu â'r rhannu, Am ychydig eich cymryd yw hefyd, maill sy'n ei ddyn nhw'n gwneud, mae ychydig iawn ar ddi, rwy'n gwneud eich haf hwn i mi i adael. Mae'n gynghwytoedd gathered, mae'n gynghwytoedd, mae'n gwneud a phasidd, yw'r cyfrifeth o'r cyfrifeth a'n gwyllgor i fod yn hi. Mae'n ymrhaeg, mae'n gwych ar gyfer yma, mae'n cyfrifethoedd i ddysg wrthaill, mae'n cyfrifeth a'n cyfrifeth, yw pob rahyd, Anyway, that's the big thing. Let me finish it now so we have over shifting slightly here. My conclusions. Mount space exploration outside near Earth orbit is costly, suicidal and non-productive. Automatical robotics is the better way we are doing all this. Swarm intelligence which is cooperative robotics basically, network together, we know how to do giant networks now. This is all doable stuff. I was a lot of lofnodraethau gyda H swimming fair into the stelafin pros. I don't see why they do this small things. I would do some bigger things but the problem is they can't get enough thrust if nothing is lost in life, it might have been on this in 2007, may have paid on this which is to use an iron engine which is low thrust, you can leave it on for a year and then you leave an iron engine on for a year. That's problems a bit I mean engines actually exist. You could get something up to not close to the people, but certainly a decent percentage you get the same result. And you'd have a lot more fire party to play around. So there's other ways of doing this, but it's a great thing. So nanostats and panostats have been established already in the core technology. The wireless networking and swarms has been looked at in massive detail over the years of genitals devoted to this. It's a conference where there's been a thousand people and we put our ideas there, and I listened to stuff that just amazed me at what's going on. Distributed to telescopes and sensors I'm in play for, I can't see why we can have a smart network of spacecraft. We can't have the, you know, you look at some of these giant mirrors that we've got in telescopes in Chile, there's hundreds of different mirrors all moved in sync to get the signal. You can do that by putting cameras out in space knowing the position of each and locking all those signals together. We could build giant telescopes in space with swarms, and I think that's some future in that. Telescopes in space is definitely a good idea, and lots of sensors. So let's draw more thought and share the cost and benefits with other people. And one of the final things I want to say is, it's always, I think when you try to talk on the subject, someone always says aliens. And after Brexit, we'll all be aliens. Looking for alien life, my view is better by love. Because if they're smarter than us, then there's mean as us, we don't want to know them. But I thought we should end on a happy note. And this is a real photograph taken from Elon Musk's, keep wanting to say Tusk, his Musk, different man. This is his car, a Tesla Roadster, and his personal clutch. Inside the open spacecraft, this is the payload thing, it opened up. And in there is this mannequin playing music, and there's a toy car in there as well. Clever marketing, this will be available on Christmas, folks. I'm not joking. If they put the toy car there with a mannequin in it so they can sell it, doesn't it? It's brilliant. So is this the end? Or is it the beginning of something interesting? Thank you very much.


Let's go. So, hi, everybody. Before I introduce myself, just a few words, I'm going to speak about Fedora. So, Fedora is a Linux distribution based on RPM, and it has several releases. And the one I've been using during this talk is Rohide, which basically means the latest version of each package is going to Rohide, and then they settle down. So, it's basically the same as unstable in Debian. Okay? So, we are using that as a testbed. All the binary package in Fedora are compiled with GCC, and that's a strong requirement. And basically, we're trying to switch to Clang, not for the distribution, but just to test both the packages and Clang so that we can gather more information. So, that's the overall topic of the talk. So, I'm Serge, I'm working for Red Hat as a compiler engineer, mostly on LLVM. And we're going to speak about Clang and Fedora. But before we speak about Fedora, let's speak about Firefox. So, this Fesco Steam stuff is a Fedora engineering stream committee, and whenever you want to do something that does not obey the rule of Fedora, you need to open an issue, and then there is a discussion, and something happens or doesn't happen. And this particular discussion was interesting because Firefox upstream decided not to support GCC anymore as their native compiler, which means that for both OSX, Windows, and Linux, the package is compiled with Clang. There are two main advantages of doing that, which are, if you take apart the quality of Clang, of course, is you need to support one compiler and not one compiler for Windows, one compiler for OSX, and one compiler for Linux. You've got the same compiler, so whatever compiler-specific stuff you're going to support is only going to happen once. So, that's cool for them. And the other more technical thing is that Firefox is being partially rewritten in Rust, and the Rust compiler is using LLVM as an internal representation, and Firefox is still using C++. So, if both use the same internal representation, it opens a lot of opportunities for optimization at link time, which is not possible if the C++ code is compiled with GCC and the other part is compiled with LLVM. So, there are good motivations for Firefox to switch to Clang, but then they still accept GCC fixes. That is, if the Firefox code base does not compile with GCC and you've got a patch, they accept it, but they don't test it anymore. So, as a packageer, what should you do? Either support the GCC build, which is a lot of effort, or switch to the same compiler as upstream and use Clang, which is okay because Clang is also packaged in Fedora, but it does not obey the rule of Fedora. So, they ask for an exception and first they got it and then the exception got removed, and that's the topic of that thread. Why did it got removed? There was quite a lot of objection to using Clang and without going into the details, some of them were related to the quality of the debug information generated by Clang compared to the debug information generated by GCC, which is a relatively well-known topic. Another one was related to the default flag like, for exception only, whether asynchronous unwind was activated by default or not for all targets. And GCC and Clang don't have the same behavior to that respect. A more interesting one was the support of semantic interposition. So, semantic interposition is an L thing that states basically that any symbol that is exported in a shell library may have its behavior or its implementation change at runtime, for instance, through a LD preload, which means that it's a strong optimization barrier for any interprocedural optimization. And by default, GCC obeys the ELF rules and Clang doesn't. Clang did not have any flag to enforce that rule until very recently. And so that's a big difference. It's a big difference for performance. I know that in Fedora, the Python library switched to no semantic interposition for the GCC build because of the performance impact. But by default, it's not the case in GCC and Clang has the opposite behavior. So that could be a blocker. A very important topic was security flags. All Fedora packages are compiled by default with a set of optimization flags and you've got, of course, minus O2 plus basically most of GCC security features turned on. One of them is 45 source. It's more for C code. And it was not well respected by Clang. If you activate that, Clang compiles your code correctly, but the security ordering does not actually happen on all situations, which is a problem. When I'm saying Clang, that's Clang 9, not Clang 10. Someone claims that the stack protection thing were not as evolved in Clang as in GCC. They rightfully pointed out that stack clash protection was not implemented in Clang at all while it is in GCC. So basically, one of the strong opposition was if you compile your code with Clang, it's less secure with some definition of secure than if you compile it with GCC. And that led to Firefox still being supported for GCC by the Fedora guys, which is for, from a maintainer point of view, that's not a very good property, but that's how it is. So we told ourselves that's a good opportunity to improve Clang and maybe to remove some of this constraint. So the Fortify, so I had a look to that. And for Fortify, it was very interesting. The way Fortification is implemented in the GCC is basically you've got your memcopy and then if Fortify is activated, you've got an inline definition that overrides the behavior of memcopy. But the Clang behavior was if you use a built-in and memcopy is considered as a recognized built-in, then you don't care about any overloads that would be given by the user. You're using the actual built-in semantic. And so they were not using the Fortify semantic because it was recognized as a built-in. So we changed that. And now when you compile with Clang and Fortify on and you found a memcopy, if there is an inline definition that changes the behavior of memcopy, Clang is going to honor that version. And so you've got the runtime checks and so on. So that's one more step forward. That's not for Fortify specification. Well, there is no Fortify specification. There is just the GCC implementation which is tightly linked to the GCC one. But if you want to have the same observable behavior, you're getting closer. So that's one good thing. There's also warnings. At some point you could say, and many packages do compile with W error, that if GCC detects a security issue and warns about it, maybe Clang should warn about it too. And one of the issues was Sprintf. If you can compute statically the size of your buffer, then you can do some kind of checks whether the format is going to fit into the buffer or not. And GCC has some not that much advanced analysis on that topic. And Clang has a few of them to a lesser extent. And now Clang implements full understanding of the printf specification and can compute the lower bound of the buffer size requirements and warn you if the buffer is not large enough. So I don't expect that warning to be issued a lot of time, but still that's something that can be now detected. And it has its end in Clang, but probably not Clang 10, it would be in Clang 11. And that's something that GCC does not implement now as much. So we are raising each other, but that's the same emulation, so I'm totally fine with that. About semantic interpolation, that sounds like a very difficult thing to implement because it basically means that whenever you've got an inter-procedural optimization in Clang, you need to change the behavior of this optimization depending on the status of the symbol based on basically its visibility and linkage type. The good thing was it was already implemented at the LLVM level, but there was no switch to activate that in Clang. So what looked like a tremendous task actually was not that difficult and which made it possible to land it in one week or so. So now the default in Clang 11 is still no semantic interposition, but you can force the flag to minus F, semantic interpositions and it will be respected just like in GCC for a package where it matters to have symbols change at both load time or run time. Just to give you an hint about the impact, if you've got this small code with semantic interposition on, you can inline full, but you can't inline bar because bar could be changed at run time and so changing its implementation would not have the same impact. If you inline it, then the LDPR load thing will not change all the behavior of bar. Then there is stack-clash protection. Funnily enough, the stack-clash vulnerability is one year and a half old and the flag got into GCC relatively quickly and not at all in Clang. The basic idea is whenever you allocate memory on the stack, if it's larger than one page, then there is a risk that it overlaps the page words allocated by the kernel and so your stack is going to overlap with your heap, which is not the property you want and that's the beginning of the attack and so the contour measure is basically don't allocate large stack but allocate by chunk of one page and touch memory each time you do that so you're sure that you will trigger the page words allocated by the kernel and then you've got your signal and you're safe. So there is an implementation for x86 under review. It turned out to be a bit more difficult than expected and it's only for x86. It's obviously very architecture dependent but you can see on that small example that you are allocating a large amount of stack and instead of having a single sub, you have two of them with a move interleaved which actually touches the page. The good thing with x86 is that whenever you make a function call, you're saving the return address on the stack so you've got a lot of free probes in the stack so you can implement that locally at the function level and it may not be the case of all architecture which is why it's not implemented at a higher level. So with that set of patches, most of the points raised during the Firefox stuff got handled and so maybe the situation can evolve but it also rings a bell. What about the next package I want to switch to Clang upstream and what are we going to do? Or maybe we could state it otherwise. We learned a lot by using Clang as a compiler for Firefox within Fedora. Maybe if we don't compile only Firefox but all the package, we can learn much more things. So that's what we did. Basically changing the default compiler in a separate build route in another Fedora build and gathering information and that's the second part of the talk sharing some of the insight we get. So we're still at the information gathering step so no answers but good hints about where we could drive Clang and that's for a real package. So all the data collection, the setup of the build route and so on was done by Stomstela so huge thanks for him because I'm not proficient enough on that part and so he did all the dirty stuff and I only had to grab full logs which is totally in my scope and then starting to implement the thing in LVM which I could start to work on. So it's not about Clang but it's about Fedora. Fedora-Rohide requires Python 3. We could still depend on Python 2 but well the word is moving so let's move with it. Well the word started to move 10 years ago so it's a good time to start to move on our own. Many tools and I'm not speaking about utility scripts but tools that the end user actually sees depend on Python. So that's especially the case for LLDB for all the debugger scripting parts but that's also the case for Clang Format or Clang Format Dave. And so if we want to ship these scripts in Fedora we need to have these scripts run correctly in Python 3 but if you have a look at the requirement for LVM it's Python 2.7 still now. So we had to port all the scripts to being portable between Python 2 and Python 3 which was quite a huge task, not a very difficult one because we are not using a lot of string manipulation in the script so that was basically okay but still it was some kind of an effort but now all the Python code base of LLVM is compatible with both Python version and I start in a thread which received relatively good feedback that by the end of this year we could probably drop Python 2 and switch to Python 3 which would not be and Python 2 is not supported for this whole year so it totally makes sense and LLVM doesn't have a strong history of supporting aging technologies so we are upgrading the same version quite often so we can also upgrade the Python version but at least that was the requirement for Fedora and this requirement is fulfilled. So another specific tool to Fedora is Anubin so Anubin basically it's a plugin for GCC and it records all the compiler flags into nodes so that for each function in the binary we know which compiler flags were used and that's mostly used for security you know which security flags were used for each function and then you know for your whole binary if some functions were not compared with the appropriate flags so that's a GCC plugin and it relies on some specific linker supports basically it was about nodes where attached to function for elf groups and when you merge groups the nodes got removed by LLVM and it's no longer the case but it was something we needed to implement and if we want to make one step further this plugin, this Anubin plugin could also be implemented for Clang and that's being done internally at Redat by a colleague of mine with my support so as this plugin is used by default it was important to do that task then about the real normal package now that we have set up a decent environment how do you change the underlying compiler because we've got all these spec files the spec file is just a recipe about how you build your actual Fedora package how do you change from the system compiler to Clang it turns out that the easiest way to do that was to provide a new set of RPM macro basically stating that whenever you mention the person cc is going to be redirected to Clang and the same thing for make, cmake and so on it assumes that everybody is writing an abstract description of the build process which was not the case at all but fixing that is also a way to fix package description so that was a good road to follow and once we get at that we get some builds that fail we get logs and we can grab for that to understand why we've got errors so that's the basic process and that's the result so on the 4000 package we rebuilt three-quarter of them just rebuilt without any issue which is both a good surprise but it also means that 1000 of them remains some of them didn't build with GCC either I mean because of some reason which are out of my scope so we put this one apart and so we are interested in the 1141 one that actually failed and so I had to dig through the error logs and understand why and so almost 300 of them just failed because they were compiling with Clang but using some GCC specific flags and so we get an error so we also had some Clang specific flags that were added by us in the process and they were not supported by GCC which means that our instrumentation of GCC failed which is also a good information to some extent so StarCache protection is not respected but we knew that so some arm-specific things about neon and quadrup accuracy floats something about how you pass arguments which we could probably ignore in Clang there's already a bunch of flags that we just ignore so we could add that one the tracking is to improve the quality of the debug information so we can relate that to the quality of debug information in Clang but we could probably ignore that one too because it's just debug information it doesn't affect the user experience at all no Trample line is more related to GCC implementing nested function through Trample line so it's a way to control that and no enforce exception only expects it's something to lighten the cost of exceptions or enshrink the binary size so maybe we could implement that I don't know sometime we just failed to hook Clang instead of GCC and we detected that so to detect that we just go through all the binaries generated well shipped in the package and we go into the command section of the binary and if we don't find a compile with Clang then it means that we did not compile any objects if we file compile with Clang it means that at least one object of the package got compiled with Clang which is not all of them there is always unfortunately the GCC well unfortunately for our tracking thing the GCC command because we are still using the CRT stuff and GCC as a linker so there is always the GCC watermark but at least some of them were not compiled at all so we need to understand why some people find it smart to compile with W error and for our task it's not smart at all because Clang and GCC differ a lot to the extent of the warning implemented and what kind of situations they catch and so something like printf being redefined is not an error on GCC and it is well it's not a warning on GCC but it is in Clang inuring virtual value detective infinite recursions this kind of thing so it's probably we are not going to implement the same set of warnings so I don't quite know what to do about that one probably remove W error would be a decent approach but I'm not going to spend much time on that some when you activate fastmat you've got some specific implementation of the mat library and it turns out that GCC relies on some new symbols that's finished by Finit and these symbols sometimes we fail to link with them when using Clang I can't say why but so it could either be a packaging issue or a Clang issue I don't know but still it means that there is some implicit things are coded in GCC or in the package that are not well described the famous configuration error we have got a lot of them you may be aware of the difficulty of writing portable auto-conf tests and if you're not having a look at all the tests that fail because Clang is not capable of compiling a C code that's the only output we get from the configure we could of course have a look to the config.log but so many package failed just to configure because using Clang during the configuration step just fails my hint about that is that because we use some specific compiler flags they are used during the configuration step and so if we've got any of these W error things or unsupported argument things we're going to detect that at configuration step and so we just fail to configure does it mean that we need to rewrite the configure step which means contacting each upstream package to update that or do something else I can tell but that's something which will not be very pleasant to fix and maybe not of much interest with respect to just Clang something that is important for Clang but only in Fedora sometimes Clang fails to find it some part of the runtime either because it's not well packaged or because there are some assumptions that are not met I can't... I am doing the packaging I do hope that it's not a packaging issue but I fear it is and we need to check that I can't tell about the GCC and the Scorsche and I did not took time to investigate what this implement but we can discuss about this a bit later sometimes there's disagreement on the standard so that's something that is very valuable either for Clang if they wrongly disagree or for the upstream package if it means that they could improve their code base so sometimes it's linked to GCC extension so the one like you don't support nested function sometimes it's comparison between pointers should be equal or different but not ordered comparison and I don't know if what the standard actually says about that but obviously GCC and Clang disagree so maybe we could improve the situation and sometimes there is just use of undeclared identifier and I will be surprised to investigate and check why Clang doesn't find identifier while GCC does so that's more of an upstream issue so the language extension stuff here you have a nested function something you can easily write with a lambda in C++ but GCC allows to do that in C for an extension and some package rely on that and it's probably going to be difficult to make them change their mind because if they choose that extension it's because it makes their development flow easier or I don't know and when you get you try to compile that code there is a warning like OK Clang is not supporting that Clang is not going to support that so it's clearly stating in the error message that we can't do anything about that we could maintain a patch at the federal level but I don't want to do that OpenMP and it's also related it's probably related to either a packaging issue or dependency issues sometimes Clang doesn't find so the runtime support for OpenMP or the configuration step fails and fails to detect OpenMP when compiled with Clang we need to investigate because that's not a good thing if Clang users can't use OpenMP out of the box in Fedora that's probably not a Clang issue more probably either a configuration issue or a packaging issue and some package just still use GCC so there are art codes make or the art codes GCC or G++ either in the package or in the actual upstream sources which makes sense because if you're not sensible to portability you just use GCC and it works and there's no reason to worry about that until you realize that some users may want to compile with Clang with good argument or Clang or whatever it could be Intel compiler because of performance I don't know and then it could be an improvement both for the packaging and for upstream to have a more generic build process so that's the end of my talk the ideas are a good life to share I'd like to share with that talk was there's a lot of learn there's a lot of thing to learn while having such a diverse set of program to compile with Clang and that's far from the test suite of LLVM so a good opportunity to improve probably making all this information available in a way that anybody could access them opening all the bugs on Bexia or on GitHub depending on how it evolves could be a good thing it's probably less important for the LLVM community to do the upstream work I mean trying to update every package packaged in Fedora to support Clang is more of a social task than of an engineering task so it requires special skills but some people may be open to that and some may not but that's still an opportunity for upstream to improve too I see a lot of good things for Clang at least for the past months when I've been working on that and so it also fills my daily job on interesting tasks so on a personal point that's a good thing and I wanted to last with that final error so if you're compiling in C++ and you name one of your member function dprintf and then you compile with 45 source but you order your includes in a way that sometimes you will get the macro definition from the STDIO headers and sometimes you don't then you end up with part of your class having a dprintf member and the actual implementation using another name and so you've got an error just because of basically macros and the way they interact with 45 source and that was a funny one only one in the world of Fedora code base but an unexpected one so now if you have any questions I'm happy to share more information Thanks for your talk I was curious about you mentioned earlier a GCC plugin about recording the exact compiler invocation in the notes section of the ELF object that sounds generically useful theoretically that could be a dash f flag in the compiler it doesn't need to be a plugin, right? So the question was recording all the optimization flag and security flags is something that is generally useful and so while using a plugin and not an actual compiler flag maybe I'm not the one developing that plugin the plugin is open so that's not a property reason but that could be my guess would be it's easier to write a plugin it's maybe the first step before you go into the code base that's how academics do they don't write into the code ELF code base they first write plugins and eventually it gets in so a plugin is a good first step so that could be an engineering answer would be why not starting with a plugin it's easier you can maintain it you don't have to get through the review process of the actual compiler and should it evolve into an actual compiler flag it does make sense to me at least yeah, whatever order Thank you for your interest in talking and many interest in details Let me wonder do you consider this journey a success for you and also like as you still got a lot accomplished what are the most valuable outcomes which you got for your day-to-day work out of this project for testing but for testing Fedora what kind of testing could you elaborate you'll get out of this project I don't quite understand the question can you repeat please you did this project for testing can you give more details what you tried to do so the question is we did that for testing what's next and what are the conclusion or the outcomes and so my personal take on that is Clang LVM did improve a lot thanks to this testing only on the Firefox part and so from all the information we gathered on the larger scale test there's a lot of situation where we could improve Clang based on the GCC experience basically and that's a good thing I mean it's not only about trying to match GCC so that's the initial motivation but in the end what you get is more feature for the Clang users and I'm going to go on that way because not for all the flags I'm going to sort out the things that I'm interested in and the things that seems valuable for Clang as a whole could be accepted because like nested function I could find it interesting on my own but it won't get accepted upstream so I won't work on that and it also provides opportunities to be able to work on that apart from just the LVM team in Red Hat so basically it provides more opportunity to fix bugs or add new features and driven by actual test case and not only my imagination Victor? Project to rebuild Debian using Clang Are you collaborating with this project? I'm collaborating with the Debian project on that so the question was there's not only Fedora the BSD systems some of them are compiling with Clang there is a side project of Debian of compiling Debian with Clang which has much more history than we have are we in our bubble or collaborating so it happens that I personally know the guy in charge of that for Debian and so we do collaborate both on the packaging side I have a patch that I need to apply to LVM I'm discussing with him are you applying that patch to Debian 2 why for this kind of thing and also for the general approach especially for Firefox because this guy appears to also be in the Firefox team so for instance all the Fortify stuff and the Stack Clash Protection stuff while being reviewed by LVM we are also tested on the Firefox version recompiled because they plan to use it they are really interested in that feature so even if they don't make it to the Fedora build they will make it to the Firefox build so there is some kind of cooperation one more question are you just testing that it builds no it pains me that you have so much so less trust into the package job whenever you do a package you've got a test section and basically you're running the test how many packages actually have tests I can only speak about the package I maintain in Fedora which is very small amounts but all of them do have a test section so it's also true that for some architecture the test section of LLVM has an if, arm, then okay but well we are actually running the test and ignoring the results but not for x86 but there is a test section and we are encouraged to use it and I think some I've not mentioned that but some of them we had sick faults in the test like the tests were run sick faults and from my experience working on obfuscating compiler we don't like debugging this situation because you don't know the tests you don't know the actual program and that's a pain but that's one thing that could be very interesting because if kind of is miscompiling something yes


Hey traders T Bradley 90 here for those who do not know Alex took on the challenge recently of seeing how much he can grow a $30,000 account in 30 trading days and the results are in and he made $84,000 in less than 30 trading days, which turned his $30,000 account into a hundred and thirteen thousand dollars Alex recently put together a free mentorship course with his mentor bow explaining exactly how he did this the link is available at My investing club dot co slash Alex There's limited seating every single week. So be sure to reserve your spot as a very special gift to our YouTube viewers I want to announce something very special This is my personal phone number my personal number that I am putting out to you guys if you have any questions about joining M.I.C. Or on the fence about joining our wonderful club You can contact me now directly and personally and I will get back to you Hey guys us in here back for another trade recap, but This time it's going to be on SVRA. So I had a couple trades on SVRA on day one and on day two and I had some good trades and Some trades I wish that worked out better Before I get into I want to say not licensed. I'm not registered not a financial advisor And I know this should be taken as investment advice, even if it sounds like it Okay, so yeah, so SVRA this was a big mover over the last couple days You know kind of an exciting shocking mover and We got a couple of of good long and good short plays in it. Um, I have a I have a video like a live video trading video where I just miss a really good move But I feel like there's really good commentary and I'll be dropping that shortly that should be coming out right after this video But I'll release that later for now I kind of want to do a little recap of the trades itself So, um, let's let normally let's start on day one. Oh, no, we get let's start on day two. No, let's start on day two This was my trades on SVRA on day two I'm doing this the night after because it was Thanksgiving or sorry New Year's Eve So I just saved the charts that I had but this the oh, sorry, that's not it This is my all-day chart in SVRA, right? So The thing is SVRA like had that huge move from day one We had this huge move on day one and then we kind of gap down Not really a gap down from the close but a gap down from, you know, the after-hours float up the previous day And so basically the the one key level here was four dollars and forty cents that that was like That was the level that the stock went on SSR and he had tanked out And I I almost thought it was a certainty that we were going to trigger SSR for today. So when we started to When we started to like bounce up and fail around five here. I got short Righted around in there You know, just a quick easy risk on five pre-market because we're getting close to the open And I feel like we were gonna have a drop into SSR trigger time and Then I'd have a nice short on it. And so that was the idea from this short It was just a gap down it was I feel like longs were under water and that right at the open, you know If we don't spike if we do spike, it's an easy cut out, right? Because I'm sure from here if we do spike, I mean, I'm gonna my wrist is at five dollars anyway But if we do spike It's an easy cut But if we don't spike ever all all the longs are gonna get disappointed that there isn't a spike going on And so we might go down and trigger SSR Which is normally where I like to cover in these kind of situations because that's normally when Stocks start to slow down because it loses a lot of the short selling pressure So this was just a quick open trade and I'm like I said, I've been like I said in prior videos I don't normally do a whole lot of pre-market trading But you know if there's enough volume and there's a good enough reason to I do get in and this This this SSR trigger hunt was it's something that I often like to do So I got that trade and I was quickly out I didn't overstay or anything like I I tried to let it go to four But it wanted to hold which is normal. That's kind of what I expected. So I covered it right out of the gate But then we got a really nice opportunity for a reclaim, right? And so I told you 440 was the level. It's the level we bounced off here It's also a level from a dip from the prior day 450, you know, you can couple those together Um We got a we got this nice big strong green candle And that's when I got long biased on the stock because we had just triggered SSR You know this stock had high volume even for day two I think we already had like a few million shares traded in the first 10 or 15 minutes And I was like that's a lot of volume for a day to play we just reclaimed the 440 level That was the SSR trigger. This is a solid entry to buy, right? And so I start buying the dips, you know risking a fail basically risking a fail kind of I get out of it Like fail under 440 on volume So I just start easing in and then I add over the 460 level Because now I have a new risk, right? I can now risk 450 or this 445 low right here You know, I always like to add when I find a good spot to move my wrist through and this little mini consolidation down here Let's zoom in this little, you know, I get long in here on the dips That's where I first started buying I tried to buy on the dips risking just a fail candle That would have failed I would have would have bailed But then we you know, we spike up I add a 460 because now I'm comfortable risking a 445 It's a very clean level that I can risk off of and we get a push up and unfortunately for me I only get half off here Like I wanted to get around half off on five and then I was hoping that we push to 550 and have a stronger push But we just we just stuffed really hard And I yeah, it's funny. I had a I had like a little bit more to sell at 504 and I just barely missed I mean whatever but I only got half off on this trade over here So I've really kind of disappointed in that but I mean, that's the way it goes sometimes right? I mean this stock, you know, the stock has a larger than normal float. So It's not completely on, you know, unexpected that it might not just go to infinity, right? It's float slightly larger than normal. It's five dollar whole number. That's why you take off half, right? That's why you take off half at these important levels just in case they do decide to stop But anyway, it decides the stuff And so I get out the rest. I just take the rest off for break even actually looks like a little bit of a profit I forget but it's I mean, it's break even to me Hey traders T Bradley 90 here toss Bradley from my investing club chat Just wanted to reach out to you personally and show you how to contact Myself personally if you have any questions about joining MIC about MIC in general or are on the fence and need a little bit of guidance before you join For the first time ever I have put out my personal number for you to reach me directly Among my email at Tosh at my investing club calm and our Twitter and IG handles reach out today and get any information You need on what makes MIC so great and why you should join us today


Intellia shows CRISPR gene editing in humans has arrived. Intellia has released clinical data from NTLA-2001. Transthyratin amyloid dosis is the buildup of misfolded transthyratin, a protein generated by the liver. This protein is normally partially responsible for the transport of thyroid hormones, but misfolded versions form protein clumps and can lead to neuropathy. NTLA-2001 is a gene therapy that uses the well-known CRISPR-Cas9 gene editing system to knock out the TTR gene, preventing the liver from making transthyratin. People who received a lower dose of 0.1 mg per kg had their transthyratin halved, while people who received a higher dose of 0.3 mg per kg lost a full 5-6th of their transthyratin. This could have implications for aging because another version of transthyratin amyloid dosis exists, senile systemic amyloid dosis which predominantly affects very old people. Subscribe to our X-Ten YouTube channel for more videos.


Okay, liberal Deutsch, whoops, liberal Deutsch just jumped. Oh, there it is.   If I was in England, I would vote against the monarchy.  Just a whole idea of aristocracy. It's so offensive to my values. Anyway, the Duke of Edinburgh once said, everybody was saying we must have more leisure. Now they are complaining they are unemployed. What? So is life a quagmire unless you're the Duke? No, life's not a quagmire. I mean, when you're a subsistence farmer, or when you are working 100 hours a day in manual labor just to survive, then what you need is more leisure. More importantly than that, but you don't know that you need this. You need meaningful work. You need work that provides you with real value, with real challenges, work that can really enhance your self-esteem. Work you can be proud of. Work that's a reflection of your values and your passion. But you don't know that. What you know is you're working yourself to death. It's hard. You're getting nowhere. You'd love to sit on the beach somewhere, at least a little bit. But in a world where you love your work, where work is a passion, where work is fun, I mean, not all the time, not constantly, not every day, not in every situation, but generally you enjoy your work, which is what you should all be doing. You should all find the work that you love. And sometimes you have to do something you're good at and develop the passion for it, and sometimes you have to pursue your passion and get good at it. But you don't want to, you know, don't pursue your passion if you're better at that one activity.  But you've got to love your work. You spend way too much time, way too much energy, way too much effort at work, not to enjoy it. Then leisure becomes important, but not... Leisure is important because you have to relax, you have to clear your mind, you have to... But it's not the goal. The goal is the work. So, for Iron Man, having a purpose in life is one of the cardinal values. And leisure is not a purpose. Leisure is what you do to relax, to get away, to... It's not a reason for living. It's not a purpose in life. So, career is your purpose for most of us.  You can't have a hobby that's your purpose if you can't find a career that is such. But for most people, the career is their purpose.  And leisure should be the break you take in between because you can't literally spend all your life just pursuing one thing.  It's important to be able to just relax, to clear your mind, to think about something else, to experience emotionally the beauty of a sunset or the amazingness of a new TV show, to laugh. All those are really, really, really important in life. But they are just the... what you're doing when you're not pursuing your purpose, when you're not pursuing your career.  And I think this is why it's so hard to retire. It's so hard for people to retire and even people who do retire, they usually find something to focus their minds on, some challenge, some hobby that they can really orient themselves towards.


Hi, I'm Maxime and I'm a PhD student at Ecole Polytechnique and in RIA. And today, I'm really thrilled to introduce you to our joint work with Alain Couveur and Thomas de Brissal-Azard, entitled On Codes and Learning with Errors Over Function Fiat. In this work, we focus on search-to-decision reductions for structured variants of the decoding problem. search reductions are useful for cryptography because many cryptographic primitives or different applications rely on the hardness of the decision version instead of the usual syndrome decoding problem. But first, let me give you the intuition behind search-to-decision reductions. If I give you a picture of many people and I ask you, is there water on this picture? How would you solve this problem? Well, you will probably look for water on this picture for, let's say, one minute. And if you are able to find it, you would say, yeah, there is water on this picture. On the other hand, if you can't find it in this minute, then you would say, well, with high probability, there is no water on the picture. In other words, in order to tackle the decision problem, is there water on the picture? You try to solve the computational version finding water. And this is a very natural strategy, because more often computational problems are easier to analyze and to understand than their decision counterpart. However, the latter may be strictly easier and therefore one needs to be very careful when instantiating cryptosystems based on the hardness of the decision problem. For example, it is well known that decision-deficient man is easy in some instantiations, in some groups, while the computational version is still believed to be hard. For instance, for elliptic curves and dodway sparrings. Therefore, such decision reductions are here to bridge search and decision problems in order to understand more precisely the hardness of decision problems. In postpontum cryptography, and especially for codes and lattices, it has been proven that both versions are equivalent in the unstructured case. More precisely, for decoding problems, Fisher and Stern proved in 1996 that if I give you binary vector and I ask you whether it is completely random or it is a noisy codeword of some random code, mg plus e, if you're able to tell me that, then you can recover the message. In lattice-based cryptography, especially for LWE, it has been proved by Regaff in his all-fine famous paper that both LWE problems are equivalent. Nevertheless, modern cryptosystems rely also on structural variants such as ring LWE or module LWE, for which there exist reductions using tools from algebraic number theory. On the code-by-setting, though, it is a long-standing open problem to find such reductions for our structure codes, for instance for quasi-cyclic codes. In this work, we build upon an old analogy between number fields and function fields to provide a general framework to give such reductions. This yields the first reductions for our structure codes and also proves assumptions made to design efficient pseudo-random correlations generators or PCGs in multi-party computation. If you are interested in learning more about this topic, come attend the talk on Tuesday afternoon during the coding theory session in Santa Barbara. I will be excited to discuss it further with you in person. You can also check out the paper on e-print. Thank you for watching.