Hello. Welcome to this discussion with mayoral candidate Anne Watson for the City of Montpilier. Anne, thanks for being here. Hey, thanks for having me. This is great. So I'm Steve Pappas, editor of the Times Argus, and I'm here with Anne Watson, and we're going to talk about some of the issues facing the City of Montpilier. You were running uncontested as mayor. Yes. So let's begin by having you talk a little bit about yourself and how you came to Montpilier, and then we want to know why you want to run for mayor. Well, alright. Yeah. So I'm from Vermont. I grew up in Essex, and my family all still lives there. And yeah, I got a job here in Montpilier 13 years ago teaching at Montpilier High School. I have a degree in physics and minor in math, and my master is in education from UVM. So I got a job at Montpilier right after that, and I've been teaching here ever since, and I moved here back in 2012. So it's been a little while, and oh no wait, I'm sorry, 2008 is when I moved here, and I started on the council in 2012. So I've been on the council for five, oh gosh, six years now I suppose, and I've been the president of the council for the last three years, which means that I end up doing the job of the mayor during council meetings when he's otherwise unavailable. So that's sort of the broad view. I mean, I got into working on the council because I had been paying attention to the district heat project, and then when a seat became open, a colleague of mine called me and said, hey would you consider putting your name in for the appointment? And I put my name in and I got that appointment. And I've cared about energy for my view, that's a lens that I bring, and looking at how our policy decisions impact the environment is a huge priority for me. So as I look at running for mayor now, I am running for mayor, very likely to be elected. That's one of the driving forces for me as well, is to continue to look at how we are relating to our environment in terms of net zero energy, looking at our relationship with the river and our stormwater systems. So we flood almost every year. This is something that I think we can and should address, and a lot of people who are maybe not next to the river experience some issues with stormwater management getting into basements and the like. So we have a stormwater master plan and I'm looking forward to digging into that and getting some of those projects checked off the list. As well as one of the other things that I'm really interested in, and I know a lot of people in Montpelier are interested in, is just looking out for the vulnerable people in our community, whether that's economically or just otherwise people who are underserved and how are we doing in those realms and what can we be doing to create protections and make sure our systems are working well for them. So when you first came onto the council, it's nice that the colleague asked you, but you actually have to want to govern. So there has to be something there that called you, had you had inclinations in the past to want to serve in this capacity because it really is a challenging kind of experience because all of a sudden you're thrust into debates and you're thrust into having to be at the bottom of learning curves. Yes, for sure. So when I started I had been on the energy committee as well as it's lowly beginnings, but also the city's street lighting committee and just wanting to help give input in an area that I felt like I had something to contribute. So that was sort of dipping my toe in and then when someone called me to say, hey, how about you step up into this role? I felt ready to do that. But to be fair, I did have a lot of learning to do and for the last five years I feel like I'm still learning. There's more growth that I know I have to do about that, but I'm feeling really, at this point, I'm feeling really ready for this role, especially just in talking in front of cameras and with constituents, people coming to council meetings, that is a really, at first especially it can be a really different kind of experience and I've found that I've loved it, I've loved being able to contribute to decisions that we've made in the city and see projects happen and getting things done. Oh my gosh, that's so satisfying to see that, oh my gosh, that project is happening or this policy is actually making people's lives better. It's a wonderful thing to be a part of. So under Mayor Holler, a lot actually has been accomplished in the years that you've been on the council. He's been on longer than you've been on the council, but there have, for the last five years that you've been on, there's been a lot of transition. How does your vision complement what's already been taking place? Sure, so there are a number of projects that are still underway and I am excited to continue seeing those two completions. So one obvious one is the Taylor Street multimodal transit center that, I mean, we're on track right now to be starting construction in May, which is very exciting. I mean, this is a project that has been going on for decades or more, or at least 10 years I should say. And yeah, the fact that we are this close at this point is just, it's really wonderful. It's very exciting and in addition the bike path extension that's out past Granite Street is likely to come together in the next couple of years where we have an item on this town meeting days ballot that will be a bond that will allow us to complete that work. So assuming that goes through, gosh, you know, we've got all the property and all the easements that we need, so it's just a matter of getting out there and doing it. So I'm excited to see those happen. In part, I feel like I have really lucked out in that there have been these really wonderful longstanding projects that seem to be coming together right as I'm about to step forward. And I want to make sure that when it does finally happen, if I am the mayor at that point, that we gather all the mayors who have been a part of this process so that they get to be a part of it as well. Do you have a specific project that you would like to bring to the table as mayor? So one of the things that I am really interested in is access to the rivers. So we have, I mean, we're a city of many rivers and I think that the dialogue in town has really been that that's something that we could be taking more advantage of. And that's also something that I think if we can get a few things in place, it has the potential to also be an economic driver for us. I mean, if we have a space, I mean, we have a confluence of rivers with the North Branch meeting, the Winooski. I mean, looking at Mozula as a model, their confluence of rivers is a huge economic driver for them and I think that that's a potential project that I would really like to look into. So that we're sort of at the beginning edge of that one and I'm sure, you know, even if all the lights are green for that, it will still take years, but that's okay and let's start having that conversation. Yeah. And the city's had some interesting conversations on zoning and you kind of now have your ducks in a row as far as that concerned and planning as well. Economic development still kind, it's still one of those things that the city still is kind of juggling.  Got a limited space. Got a limited space, but you definitely are looking to expand Grand List and make some adjustments. For sure. What do you envision needs to happen in the city of Montpelier to improve economic development at this point? Sure. So I think you have a couple of different things. You know, thinking about the economic development strategic plan that the city did not that long ago, we, one of the recommendations from that document was more housing, which is, that to me is pretty close to the top of the list, if not the top of the list. We absolutely need more housing in general and more specifically affordable housing. So I'm really excited that I think our zoning has opened up some space for, or I hope it will make it easier for development projects to come to Montpelier and get done. So we'll see how that works. And if it doesn't work, that's worth noting. I mean, I want to be, this is a little bit of an aside, but one of the other things that I'm really interested in doing is intentionally collecting more data about the city and making that available to people on the website. So right now, if we were to, you know, ask ourselves like, well, how are we doing in terms of housing starts? I mean, that's something that I could ask city staff and they would tell me, but I think it would be really useful if that kind of data was available, so that anyone in Montpelier could access the website and get a picture of how the city's doing. What are the community indicators that we want to use to measure our health? When one of them or probably several factors would have to do with economic development and if we're not tracking that, then we don't know. So you're talking like a dashboard? I guess I'm talking like a dashboard, yeah. So that's sort of, that's almost step zero that we would need to do just in terms of things to address economic development is keep track of some factors. But the other thing too, so things that we would be keeping track of, one would be housing and jobs. One of the other things from the Economic Development Strategic Plan was a specific suggestion about building a hotel and right now we have that prospect in downtown and I'm actually very excited about the possibility of having another hotel downtown. You know, one of the things I'm also very excited about or had been excited about, continue to be I suppose, is the net zero design competition that happened and which really rethought the land use, especially downtown. And particularly with that as a really lovely vision of what Montpelier could look like, that's also going to be economic development for us. I mean if we're rethinking where cars go, if we need a parking garage and how we can be using our parking lot space differently for more businesses, especially since we have a limited amount of space in Montpelier, the more that we can be densifying our downtown, I think that's going to be good for us. And I know development can be really hard sometimes, the prospect of the landscape changing is tough and I want to preserve a space that's sacred. I'm thinking of the same pasture. I think where we've landed with that isn't a good place where we're going to get some development, hopefully along Berry Street. I think people are into that and then I'd love to see us preserve the upper part. So yeah, we do still have room for growth and I'm looking forward to making that happen. Yeah, so that section of Berry Street and then the area behind Granite Street too. Yes. I mean that's very exciting that that's kind of on the books. Right, sure. Like the Stonecutters Way extension. Yeah, I'm looking forward to seeing what can happen back there. So constituents for years now have and Mayor Holler heard it and members of the council have heard Montpelier's affordability is an issue. How do you, when constituents come to you, what do you say to that? I say absolutely. And usually people have some kind of story to go along with. But they bring it up because they're looking for some kind of relief too. Right, for sure. So one of the things that we did learn from the Economic Development Plan was that this is a part of our, where we fit in the economic structure of Central Vermont, right, that we are expensive but we're high quality as well. And while I do, I hear people and this is one of the reasons why I want to see how we can be growing our grand list and come up with a long term vision for where we want Montpelier's tax rate to be, if we were going to be funding all of the city services at the appropriate levels so that in the long run we didn't have to, we weren't underfunding something. I'm thinking of the roads. I mean we've spent the last four or five years or so adding increasing amounts of money to our road and sidewalk infrastructure. And I think that's really important because if we're going to maintain those assets at an appropriate level, then we need our tax rate to honestly be higher, well I should say we need to be putting more money into those assets than we are right now. So divide that out by the grand list and that's your tax rate. So we need to figure out I don't think we actually even really know right now what that steady state budget is for the whole city. Particularly because one of the other assets that we have not been funding appropriately has been our buildings. We just recently got a facilities manager at a quarter time position which I'm thrilled that that exists at all because prior to that projects were sort of haphazard or they were left to department heads whose expertise is not HVAC. So that was problematic. And anyway so once we know how much money should we be putting into all of our assets to our water and sewer infrastructure how many miles of piping do we need to be replacing every year then we can figure that out. But in the meanwhile let's get a hotel that's also going to bring in a substantial amount of mules rooms and alcohol, local options tax. That's going to be a big chunk of change. Let's build more housing. Let's figure out where to put cars so that we can free up parking lots and again build up our grand list. Is it time to renegotiate pilot money? So that's a tough one because I mean as far as the state goes I mean they have one of the most generous algorithms of any state. So just for people to know how that works any state capital or I should say the state entity ends up paying the city that it is in some payment in lieu of taxes and our algorithm is on the generous side relative to other states. So we're certainly grateful for that. One of the things that I am really interested in doing is having more frequent and collaborative conversations with the state. There's never any lack of things to talk about between the city and the state and I know John was able to do that perhaps fluidly because his job kept him at the state house often. But I mean I'm at the high school I'm very close to the state house but not actually there so I could picture having some kind of regular check-ins with BGS or with VTRANS or whoever the right entities are but I'd like to open that conversation which I think just having open lines of communications just better for everybody. So you've alluded to some of the challenges and there's parkings always a challenge in Montpelier. I know just trying to park today.  What are some of the other challenges that constituents bring to you on a regular basis? Well so it might seem like a small issue but when I'm out talking to people they often bring up challenges of walking or feeling safe relative to cars on the road. But I think there's some other bigger issues that Montpelier is facing and one of the big issues is the opioid crisis. This is not unique to Montpelier but it's something that in our community it is affecting people's lives and I'm interested in continuing to work with Chief Fakos as to how we can be treating this really as a public health issue and getting people the support and the services they need. These are tough times. They're stressful times but one of the things that I'm sort of... I've left your question a little bit but you can come back to it. But one of the things that I really want to do as mayor is just help remind people it's all about relationships and building community and how we can live well with each other even in stressful times. Coming back to your question though about other things that people raise people do talk about the river for sure. People talk about affordable housing trying to think of anything else. Nothing else is coming to mind right now but if something comes up later I will jump back in with that. So challenges for you though what do you see as the biggest challenges facing the city right now? I'm sure opioids is top of that list. Yes, for sure and thinking about how we can effectively tackle that. One of the tough things is that we're not keeping a lot of data right now or it's not... I guess I should say we do have some data. It's often in the annual report I think we could be doing a better job of holding that up and telling the stories that are there. So one of the difficulties is that we don't have a great mirror for ourselves right now in terms of data. When we say how are we doing well we can talk about anecdotes and how people are feeling and that's fine but I want to wrap that around some numbers. Maybe this is like the science background that I come from. Data speaks volumes right? So again that seems like step zero to me. But besides that we have a constant struggle of finances and making good choices with our money. This is really the role of the council is to figure out how to best spend our money. I'm looking forward to thinking about ways to support homeowners and developing more housing. So one of the things that I'm particularly interested in and I haven't gotten a great solution to this yet but one of the things that I've been thinking quite a bit about in terms of our net zero energy goal one of the things that I would love to figure out a solution for is thinking about the renting population in Montpelier. Montpelier, 40% of our dwelling units are rentals. You have a very low rental rate. We have effectively a zero vacancy rate. So there's not necessarily, we have a lot of really great landlords here who I think do want to do the right thing and take care of their properties or their energy efficiency and even in addition maybe have some renewable sources but that's just not the case for everyone. So thinking about how disenfranchised renters are in terms of their energy profile and that they may be the most economically vulnerable people in our community and they may get stuck paying the highest prices for their energy as they're paying for propane often in rental units and that's the highest, the most expensive form of fossil fuels or I suppose kerosene is a little more but that's another story. But anyway, just thinking about how we can think about energy justice for people in the renting community because those, so 30% of our mortgage homeowners and renters in Montpelier are paying more than 30% of their income towards housing and energy costs are a part of that. So as times are tough, we want to make sure that we can be helping support people's transition to either renewable energy or energy efficiency because that's going to help save them more money even in the long run. So that's one of the things that I think a lot about. Yeah, don't have a solution yet. But also just in terms of other things facing the city. I mean, we have a TIF proposal that's coming down the pipe and I'm really interested to see what works out for that. I mean, if it were up to me, I would make it as large as, the district as large as possible and they work very well in other communities for sure. Yeah, it has. So that's something that's on the horizon that we're going to need to have conversations about soon. I mean, it may be, I'm trying to remember the timeline for TIF and I don't think we're going to be pretty sure it will not be done by the time March rolls around. So it'll be the new council that has to deal with that. Yeah, and also coming up on the horizon is the new city plan, our old plan. We did re-adopt with the intent that we would do a deeper dive into that over the next year. So that's also going to be a part of our upcoming process. But yeah, you know, just in terms of challenges, opioids, housing, affordability along with housing. And then, I mean, I do hear quite a bit about parking. And too, you know, I think, I'm thinking about our downtown businesses and that they are interested in getting people off the highway stopping here and how do we keep people coming to visit. So that's something that I want to make sure that we address as well. I mean, gosh, the women's march was huge. That was amazing. And it seems like the amount of process and demonstrations we have is increasing, which, you know, it's going to be a challenge for our police force because we're still grateful, you know, that a lot of protests do go through the process of filling out paperwork, but that doesn't always necessarily happen. So anyway, those are a few things on the list. Anyway, I'm sure I could go on. Yeah, well, that's great. So we only have about a minute left. Oh, okay. Which also, you know, it's great that you have so many things to talk about. Yes. That's one thing you love about Montpelier. Oh, gosh. I love the sense of community here. I love that people know each other. And I think that comes from having a walkable community and people who are very participatory in their community. We really don't have, well, there are a few communities we can use some people on, but we often have lots of people applying for the same position at the city council. I just think that speaks so well of our community that we want to be engaged in, yeah, participating here. Yeah. Well, thank you very much for taking the time. Yeah, for sure. Yeah. And so this has been a conversation with Ann Watson, who is running for mayor of the city of Montpelier, uncontested, but you can still vote for her on March 6th and sooner. So we would encourage you to do so because democracy is a very important part, if not the most important thing that we do as citizens. So thank you to Worker Media for this opportunity to sit down with Ann and thank you for taking the time. Yes, Lynn. Thank you for inviting me.


On Monday, Black Widow revealed its final trailer, I think coming up to this trailer, you and I have both been sort of lukewarm on this movie. It feels, at least from my standpoint, it feels like the movie is happening too late in the game. A few years ago, a Black Widow movie would have made sense. Now, again, spoilers for Avengers Endgame. In that movie, we saw what happened to Black Widow, and now it feels like we're doubling back to a few years ago for this little snippet of her timeline, so they have to work a little harder to get us interested. So I've been lukewarm on this movie personally. Up until now, none of the trailers have really wowed me in any way. Before we talk about the final trailer, Alon, what's been your feeling towards this movie kind of up until now? Yeah, I mean, I felt exactly the same way. I wasn't super impressed by the other trailers. I thought the comedic elements they put in them didn't really do it for me. But it sounds like just like you, I was much more impressed with this trailer, and I love the villain here. That's the first note I have. Watching this trailer, Taskmaster looks so cool, even though we only see a couple glimpses of him. And by the way, how much do you know about Taskmaster? All I really know about him is what I learned from the Spider-Man video game. He'd basically learn your moves and use them back on you. So, and I don't know. That's pretty much all I know. Photographic reflexes. He has the ability to essentially mimic any skill he witnesses. Not only that, once he knows your skills, and he masters your movements, he can then predict your next attack, which makes him a very formidable foe. And that's actually, I'm assuming that's why we see him watching footage of Black Widow in the trailer, which by the way is footage that we saw in Iron Man 2. So he's watching this Black Widow fight so he can learn all of her movements. You also see he's carrying that shield, which at least in the comics is a replica of Captain America's shield. And that's one of the movements he's mastered. So all the crazy shield stuff that Captain America can do, now Taskmaster can do. So other stuff. That's a pretty cool, I think that's pretty awesome for a villain. Yeah, great concept for a villain. Looks very cool. I hope they actually develop him. Just like, I mean, that's the problem with virtually every Marvel movie is even if the villain looks cool, usually they're not very well developed. And they're not super interesting characters. But we'll see what they do with Taskmaster. Other stuff in this trailer that struck me is the score actually seemed like not a theme exactly, but had a little more character to it than a lot of the other Marvel movies, where I feel like scores in general have kind of become generic. But this one somehow felt like it had some character to it. And I think helped this trailer, you complained in the previous trailer, they leaned pretty heavily on the comedic elements. I thought this trailer got away from that a little bit had not exactly a somber tone, but a little bit more of a serious tone. And I thought the score helped with that. I thought the action looked cool in moments. So all the helicopter stuff towards the end of the trailer, when she's hanging off the helicopter, when the big Russian dude from played by the guy from Stranger Things throws something at Taskmaster looked really cool, basically anywhere that it looked like practical effects to me looked awesome in that whole helicopter sequence. But there's one moment where you see Black Widow falling and sort of jumping from one piece of debris to another looked super CGI to me. And that's where it looked kind of lame. I know what did you think about the action in this trailer alone?  It's like one on one or smaller battles. I'm not as into these giant firestorms. I I loved when Taskmaster did that back flip. I'm expecting to see some pretty sweet moves from him. Yeah, he is. That's I mean, to me, that's the standout of the trailer. Taskmaster is just awesome. More on the action. I want to say there's one shot in the trailer where you see this car flipping upside down in midair. And I am so sick of that shot being used in movies. Dark Knight did it with that big truck a few years ago, and it was awesome. And then I feel like so many movies have been trying to do the same move. Terminator Sal, not salvation, Terminator Dark Fate did it. I think the new Fast and Furious movie has a shot with a truck flipping over and here they did it. I think enough, let's just ban that shot for movies. Most of the rest of the action in the trailer when it wasn't the helicopter sequence to me looked like generic Marvel action. A lot of quick cuts. Part of that could just be because it's the trailer. There's going to be quick cuts. Maybe it won't look that way in the movie. I just wanted to say Harley Quinn, Birds of Prey, wasn't a big fan of that movie. But remember how great the action was. I think you and I both talked about how that movie actually had really solid action. You know how they pulled that off? They got Chad Stolesky, Chad Stolesky, the director of John Wick. They literally called him up, had him come in and help out with the action scenes. I feel like he's got to do every action scene. That's what I was going to say. Black Widow, call up Chad Stolesky, or I forget his name, but call up the guy who did the raid too, because they seem to be the only ones right now who know how to shoot an action sequence. Or George Miller from Mad Max. Yeah. I mean, it seems like one of the keys is very few cuts. Exactly. Let us understand what's happening in the fight. I want to be able to track the geography of it. Where is everybody?  I want to see what's happening in it. I don't want it to cut every two seconds. You're crazy. I know. I remember in Born Identity, those car chases were so hard to follow. I literally would start just like zoning out. I think I fell asleep once. Yeah, I was going to say, when you asked, remember those car chases? No, I don't, because as soon as I started, my brain just couldn't handle it.  I didn't know what was going on. Yeah, so I'm still not fully on board with this movie, but I have gone from I don't know if I really need to see it too. Okay, I'll see the movie. I'm just not super psyched for it. Hopefully the action turns out better than what we saw in this trailer. I'll also say in the opening of the trailer, there's 15 to 20 seconds of Black Widow talking to her sister, and her sister's telling the story that she uses as a cover-up when people ask where Black Widow is. She makes up that, oh, you know, she's thinking about moving to the West Coast, blah, blah, blah. That actually did get me slightly intrigued about the relationship between the two of them. And if they can really dig into that relationship, make it something we care about, that could be a window into making me care about this movie. Because right now, like I said, it's a little tough for me to get super invested in the Black Widow character now that I know her fate. But we don't know what happens with her sister. We don't know what happens with her family. And if they can make us care about those relationships, that'll make us care about the action and that'll make this movie overall more substantial. So I'm a little less skeptical than I was before. I've got my fingers crossed, and we're just a few weeks away from release. Again, nowadays we have to put this caveat on every movie. This movie right now is set for release May 1st, barring any delays from concerns over coronavirus. Alon, any final thoughts on Black Widow? No, except Taskmaster looks pretty damn cool. All right, let's wrap it up there.


Hello everyone and thanks a lot for for attending this talk. I'm really really happy to be here and being able to Tell you more about this topic. I think it's it's fascinating It's a fascinating time now for for everyone involved in European technologies and open source in general globally But all the changes and all the initiatives that we've seen in Europe. I think it's worth sharing that with with all of you Okay, so just a very brief introduction. So Well, my name is Albert Amarty and the VP of the open source community relations at open nebulous There you have my email if you want to follow up this talk with with a message or another another question I live in in Eastern Spain quite a sunny place That's a small village in Alicante So thanks to cloud computing, I'm able to to join you virtually today So I'm sure you are all more than familiar with the with the term. That's good. It's both having a quick review of taking a few just a couple of minutes to review what we understand is edge computing or what some people understand Edge computing because they might be you might come across different definitions and different implications as well in terms of technologies and infrastructures so I'm sure you are more than familiar with all different Reports and pieces of news that have come up in the in the last few years about the impact that edge computing is going to have in technology in cloud computing is specifically like this Change of paradigm. That's something I prefer to What we're seeing I think since 2020 probably is like these kind of buzzword that was has been around for a while was actually becoming a Real a real thing and we've seen a number of technologies emerging and number of really high impact projects Taking place or least being planned to take place shortly So edge computing has a number of challenges in terms of also that kind of definition of what what edge computing is and what it implies Here you have a concept that's being used increasingly now in in euro, which is this idea of a cloud edge continuum or Sometimes I like to call it the data center cloud edge IOT continue. I know it's a long it's a long term but actually what we're talking here is about aggregating different kinds of infrastructures and The trickier thing here is that the the edge means different things for different people So at some point for some people might mean that the actual we know as the far edge so something that's on board a Train or a plane and actually moving around For some other people the edge from their perspective from the data center that traditional private cloud could be simply Some some resources on a utility network or a mini local Data center in some in some specific locations where they need to deploy some workloads So you come across different different definitions Obviously as well the the on-premise edge is gaining more relevance nowadays as well. They're applying small amounts of resources infrastructure resources on premise By a service provider or by the owner of those premises directly to to manage their the workloads and the kind of dynamic that demands in in virtualization, for instance So as you see there are a number of concepts here And one of the challenges in in in europe specifically has to do with Taking advantage of all these deployments all these infrastructures and building something around this building something that can actually Leverage all these different kinds of infrastructures and Move your workloads seamlessly from one place to another avoiding Fender locking and other risks as was mentioned in a second As you all know There are a number of really interesting initiatives taking place in different regions of the world and globally so the explanation edge for instance With a number of related Events and initiatives as well There's the edge native working group at the eclipse foundation and then a number of events have been taking place Are taking place regularly in different parts of the world about edge computing And what we see in those places and those fora fora is this kind of increasingly Practical implementation of what we understand as edge computing In a sense becoming real world use cases and applications In terms of the the benefits that edge computing brings to the table I'm sure you you come from some of these sectors You know the the impact that edge computing is having or it's expected to have in the in the short term We're talking about deploying low or ultra low latency applications and improving user experience Things like service availability reducing risk and data transfers reducing energy as well Also, we'll talk about the concept of vendor dependency and how edge computing is seeing specifically in europe as a way to maybe try to foster and The emergence of a local a more relevant kind of Local ecosystem of infrastructure providers and brings some balance to the to the cloud market And the use cases and the applications we see Some of them are more Clear than others but then you know sectors like gaming or broadcasting 5g engine of things Smart cities for instance or virtual decks of infrastructure. We're seeing edge computing being perceived and adopted as a As a really impactful technology there So what's the European perspective on all these changes that we are seeing in the market It's it's a it's a bit peculiar So and it comes also from the the nature of the of the european union the way the continent is organized politically as well And the impact that the covet pandemics has had on the the countries in the in the union um, and also as expressed by the The 2020 and the reviewed new industrialist strategy for europe these kind of long-lasting kind of dependencies Issues that have been around for a while, but has been now exacerbated by the by the pandemic These are some of the of the issues that the european commission for instance has identified as Really important to to be addressed in the near future in the next few years um, one of them is the uh, this kind of low Rate in in adopting cloud technologies by european companies. There you have some figures for that 36 percent of european companies Using cloud services in 2020, but mainly for for simple simple services. This is seen as something that's jeopardizing the european efforts to To undertake a green and digital transformation in the continent and also to adopt this new the new artificial intelligence and data economy Another main issue in europe as well is the Well small I would say the tiny market share for for european actors for european cloud service providers as compared with the um with uh with non european Hyperscalers for instance So as you see a very small percentage of revenues for the european market for the for the cloud providers from europe This is creating increasingly higher entry barriers for other companies or the providers that want to to Try to share that market or share that the the growth in the in the public cloud market for instance And forcing them or making them a bit unable to compete with the with the with hyperscalers in in fact um An interesting aspect as well as the the investment gap that has been identified by the european authorities around well 11,000 million euros annually. That's the gap that the the europe should food Every year they want to compete in similar terms with with the us and chi in terms of investment in cloud technologies And also one of the things of us that's slowing down that adoption of cloud of the cloud is the The concerns among many companies and individuals but also governments in europe to use technologies that are non european basically Public cloud and the main public cloud providers for instance and that has to do with the Consensible cybersecurity protection of data things like data sovereignty for instance And also a number of laws that apply to as you know For instance us based providers so The commission the the european authorities are You are taking an increasingly explicit approach and and i can say a kind of aggressive approach Against this this situation that's something that in several declarations of different levels And for a number of years they have identified as something that has to be fixed I'm starting with the president Ursula von der Leyen before taking office She clearly said that there was a need to if not Compete against the hyperscalers of least to achieve europe's technological sovereignty in some other areas that was There may be available for for this kind of more balanced competition That's also what these industrial strategy has identified a number of opportunities for you Europe to regain autonomy or technological control about the the The cloud technologies and other key technologies that are now emerging Edge computing has been explicitly identified as one of those technologies that can bring some some Some balance to the to the market and strengthen europe's capabilities And technologies to be able to to again bring some balance to what's seen as Deeply in balance situation With things like this kind of expectations of data being processed 80% of data being processed at the edge as opposed to the current situation where 80% of data is processed in the cloud That is seen as an opportunity for you to kind of catch up in terms of Of what's going on with the with the technological dependencies and the main actors in the market because it's you know No main actors now dominant in in edge computing. So that's kind of an open door for for Starting kind of this this competition not from the scratch obviously, but From a more leveled situation Data here is that Europe can actually try to leverage a number of the strengths in the continent things like industrial iot 5g networks and then Some investments and initiatives by telco companies The idea is to Work towards a solution that brings a multicloud alternative towards now seeing as As an environment where Hyperscalers are in fact using kind of proprietary solutions and establishing these proprietary solutions as de facto standards So the alternative for that and this is an interesting the first dimension to open source that multicloud solution that the europe ambitions as a as a tool to Level the the ground here Is seen or is suspected to be open source While these discussions are taking place at the european level, of course Hyperscalers are also Positioning themselves One of the things I'm doing is trying to obviously expand that domination that they have in the cloud market Also to the edge. Obviously, I mean that was Quite clear that that move was going to take place How it's taking place in europe is is is quite interesting as well because the one of the main efforts by by Hyperscalers and on european hyperscalers in europe for instance goes through A number of agreements with with telecommunication companies for instance Things like aws wavelength and and others So in this in this model kind of hybrid model what they do is they typically they Incorporate their physical infrastructure into the networks and the facilities of the of the telecom company and telecom operators specifically 5g operators. That's That's kind of a trend now this way they Be the the the 5g operator can very quickly offer edge resources to the customers and their Their devices but those Those resources that those physical resources are indian managed and monetized Normally through the platforms of those hyperscalers So it has some pros and cons but it's an interesting model and a challenging model from From that perspective that kind of the the european perspective about the potential of edge computing Following with that concept that idea that actually Whoever controls the this edge infrastructure the edge nodes will have an advantage to To control the market The european commission has recently identified in march this year Publishing this the digital compass what it's called digital compass so the objectives for the digital transformation of europe by 2030 One of the main targets in that policy is This expectation of this objective of having 10 000 climate neutral highly secure edge nodes deployed across the continent by 2030 Needless to say i mean this is not just going to be public investment This is going to be a combination of public funding but also A commitment from from private investors for instance and telecommunication companies to Deploy this new infrastructure across the continent and some some of them like the deutsche telecom in germany for instance They are making a really heavy efforts to have these these nodes deployed across the territory And managed centrally and available for the customers to use Again, this is a document and a policy that highlights this Non-ideal situation, which europe is dependent and increasingly dependent on non-european technologies So i mentioned the beginning that's also been exacerbated by the by the pandemic by the uh the covid 19 pandemic The digital compass identifies again the edge as one of those technologies that's going to be crucial for this transformation and for the future of the continent in at different levels not just in terms of bringing some some material benefits to the to the users and the companies things like latency for instance, but also in terms of reducing energy consumption and and Working towards the the achievements or the objectives also of the so-called green deal and europe for the green transformation um Just to give just an example of this go to quantify this this commitment by the european union Here you have this this figure the recovery and resilience facility because it's the main funding For helping the continent go out of the crisis after the the pandemic 20 of that That budget is expected to to support this this transformation this digital transformation so These kind of movements. Well, these ideas and these concepts have been around for a while It is now that we see that these policies are actually being well not enforced But at least having some kind of real implications in terms of the projects that have been funded and the the budget has been allocated for Some of these initiatives It goes back in in october 2020 already that the uh the different the 27 EU member states Decided to to start working together among them and also with the european authorities to to bring that to the To make to make it a reality to to to build that next generation cloud and its Infrastructure for you for europe and again an emphasis here on open source As standards in this case to to build that and also it always done emphasis on on interoperability That's also an important element in that kind of general multicloud and as computing approach that europe is taking um Well, as i mentioned, um, the number of commitments here you can see some of the figures The commitment from from member states as well to to co-fund Some of the projects and initiatives that are going to require public funding during this next decade of also published in in autumn 2020 was the european commission's open source strategy and that's uh, that's an interesting document as well um There obviously well comes with it's not the first document of the european union mentioned in open source or Or kind of defining some kind of more or less abstract Objectives about the adoption of open source. It's not the first one. So I said but um, it's it's more explicit in the way open source is perceived by european authorities as a tool also for europe to to Get to that kind of ideal or more more more balanced situation which europe is digital digital The europe digital autonomy is kind of becoming a reality um Among those elements of the the commission identifies as one of the benefits of open source is obviously That approach to to cloud computing to being able to leverage open source To build this new approach to cloud computing and also, um, it's computing as a consequence um a few months ago and the the open source Lisbon event for instance the the internal market commissioner Again verbalized this at least um in paper or in this case Verbally this commitment from the commission to and this perception of the commission that open source is going to be actually very very important for for europe to To gain that kind of digital sovereignty or I would say kind of find for their digital sovereignty um, they have some of the declarations and You'll be able to to have a look at the at the the link if you want to to listen to the whole declaration but What is europe actually doing beyond declarations and then that's uh, that's an interesting thing to to review quickly now in just five minutes so um What is europe doing and why it is a good time for open source companies? To join these efforts. Well, the first thing is the horizon europe program. This is the plurianual research and innovation programs of the of the european Union and they are starting this year and they're going to run until 2027 So there will be a number of calls for For companies and basically in the form of of consortiums between private companies and research organizations to implement some of these some of these projects a number of projects Specifically in terms of cloud and edge computing. There are going to be a number of calls There are some calls that are open now like the meta operating system for the for the future european platform for the edge The names are normally quite quite interesting themselves But the the projects are going to be running for for several years We're talking about projects that normally run for three years with different levels of funding some of these projects might have a budget of Maybe 12 15 projects and we're talking about funding for different different consortium and different projects If you look at the details of some of these these projects and if you are if you're a european company You're from a from an associated country that can join this this program I'll invite you to have a look at the programs and look at the for all the other partners and Be careful they identify those calls and which actually open source is Something that's going to be valued by the reviewers. That's going to be give you some some competitive advantage there That's not the only initiative that's taking place now And which open source companies are expected to play an important role and are welcome to join There's another Largest scale high impact project going on now in europe of or a The form of a proposal that's being being prepared by the commission or with the assistance of the european commission And coordinated by 11 Member states led by germany in france. It's called the important project of common european interest on next generation cloud infrastructure and services again Very easy to remember names um, this is an interesting one because this is going to Explicitly support as mentioned in the objectives of this project. They're going to support the development of european open source technologies and They're expected to fund and support developments that are based on open source frameworks So again, we see an increasingly strong and explicit support from not only european Authorities but also from from member states to work together and use open source and open standards As a common base for for these new technologies and and projects that are going to be developed at the european level So that's that's good news This is in line with a number of private initiatives and efforts from different companies in europe to purge for Well funding but also support and and the ecosystem and platforms to collaborate together in in these areas Like the alliance for for data edge and cloud Another one is the gaya x initiative. You've probably heard of of this before and I invite you to have a look at the gaya x association and join the association and Discover more about the the architecture of the gaya x project this combination of services infrastructure and data that's going to be Coordinated from the from the gaya x project And well From open source companies it's going to be a huge opportunity to contribute to build cloud and edge ecosystems in europe companies that are based in europe that's going to be Much easier to participate in some of these research and innovation programs For companies in in specifically open source companies to bring high impact use cases and applications to key industrial sectors And and being able to leverage the the research and development and innovation Capacities in europe and put together those innovation Capacities and and collaboration By the sign that the open source companies bring to the table and also to open up new business Cases and spaces for for collaboration among competitors, which is an important element that I think as open source companies We can bring to to this whole ecosystem this whole initiative And just finally just again to to invite you to If you are interested in the european market and and what's going on in net computing and cloud in in europe to join a number of initiatives Like the open forum europe the next iot some of them are supported directly by the commission some others Then they run by by the by industry And join these communities and start learning about the the european context and different projects Some of them are a bit context technically speaking and even the the organization that I think it's both if if you are wondering whether it's A good time to to get into europe for instance A star year your business in europe from an open source perspective and cooperating with other companies I think now it's the it's the right time to do that okay, so Hope you enjoyed that kind of brief quick introduction to you with a lot of information. So I hope you have the the Well on the on this slide you'll have some of the links to explore some of these topics in more detail Then as I said if you have any any other question Just feel free to to to let me know through the chat or later on by email Thank you. Bye


So I have some interesting news about Canada's Wonderland's future hotel. Yes, I'm gonna use the word future After an extremely long battle with the people that live around Wonderland literally want to go egg their houses It's not me if it happens I'm kidding There's one little subdivision that lives near Wonderland that has caused the biggest problem for them building the hotel But I have got my hands on some juicy information It is moving forward after some adjustments to shut these people up So it will no longer be an eight-story hotel It'll be a six-story hotel as the neighborhood was claiming all the people on the top floors can see into our backyards la-dee-da blah blah blah Karen's complaining left right and center. I'm debating if I'm gonna make a video about The overall thing that has happened like truthfully This makes me so angry because from what I understand of the people that live in this community You have to assign an agreement That Wonderland was there first when you move in or buy a property there or purchase a house that Wonderland was there first There's X amount of noise blah blah blah. You can't call noise complaints. You can't do this But that's my understanding of people that live in that area I know that because Craig lives in that area and his family had to sign something like that So that I can confirm they do have to sign something about Wonderland being their first and those noise complaints and knows blah blah blah So it upsets me a little bit that Wonderland had to size down their hotel But nonetheless, it'll have 140 rooms. There'll be six stories. It'll have a pool It'll have 161 parking spots instead of 238 And this is what it'll look like. So it's gonna be just a high-at-place that I understand now It's not gonna be like the Mix that they were having before it's got like a really nice crisp look And based off of the stockholders call not the last one, but Q3 It'll have a Q2 2021 opening date with construction starting Soon, I believe it should be starting by the end of this season. You should see construction starting for the hotel But yeah, a lot of people were losing hope asking me all the time. What's going on with the hotel I truthfully didn't know I knew the hotel was still gonna be built due to the Q3 conference call They said 2021 Q2 I got a little nervous when they didn't mention it on this stockholders call at all But then out of nowhere This tidbit of information was sent to me about the hotel. It just got approved. It is fully approved now by the way You can look it up At the Vaughn's Main office you can get the files for it has been fully approved It is now an official site plan that can start construction literally tomorrow if they wanted Which is super exciting and yeah, it's the it's gonna open probably 2021 Q2. Who knows? There no one can file any more complaints against the hotel because it's been approved the community around it can literally shut their mouths But yeah, nonetheless, super exciting. Just want to give you guys an update. This is what it's gonna look like It's gonna open around 2021 and the reason it's been delayed is because the people that live around it We're complaining that the seventh and eighth floor could see into their backyard I would reveal the house number specifically. There's four people who filed complaints against the hotel You know who you are if you're watching this video Which you're probably not But nonetheless awesome Thanks for watching guys. Hopefully you have an amazing weekend. Don't forget to hit that like button subscribe if you haven't and comment down below Are you excited about the hotel coming to Canada's Wonderland? Oh boy. Have a good weekend guys. Bye


Okay. Can everyone hear me okay? Okay. So welcome back. I'm going to address a couple of items in the administrative. With the end of the first week, we sent an email noticing you that we have uploaded the videos for the first week. So you can now find them online. They have all the screen recordings for the things that we were doing. So you can go back to them, look if you were confused about we did something quick and again, feel free to ask us any questions if anything in the lecture notes is not clear. We also send you a survey so you can give us feedback about what was not clear, what items you will want to a more thorough explanations, or just any other item if you're finding the exercises too hard, too easy, go into that URL and we'll really appreciate getting that feedback because that will make the course better for the remaining lectures and for future iterations of the course. With that out of the way, and we're going to try to upload the videos in a more timely manner. We don't want to wait until the end of the week for that. So keep tuned for that. That out of the way. Now, I'm going to, these lectures call command line environment and we're going to cover a few different topics. So the main topics we're going to cover. So you can keep track, it's probably here, keep track of what I'm talking. The first is going to be job control. The second one is going to be terminal multiplexers. Then I'm going to explain what dot files are and how to configure your cell, and lastly how to efficiently work with remote machines. So if things are not fully clear, keep the structure there. They all kind of interacting some way of how you use your terminal, but they're somewhat separate topics. So keep that in mind. So let's go with job control. So far we have been using the cell in a very kind of a monocomment way. Like you execute a command and then the command executes and then you get some output and that's all about what you can do. And if you want to use, you want to run several things, it's not clear how will you do it. Or if you want to stop the execution of a program, it's again like, how do I know how to stop a program? Let's, it's okay this with a command called sleep. Sleep is a command that takes an argument and that argument is going to be an integer number and it will sleep. It will just kind of be there on the background for that many seconds. So if we do something like sleep 20, this process is going to be sleeping for 20 seconds. But we don't want to wait 20 seconds for the command to complete. So what we can do is type control C. By typing control C, we can see that the here, the terminal kind of let us know in this, be one of the syntax that we cover in the editor's last beam lecture, that we type control C and it's stopped the execution of the process. What is actually going on here is that this, this is using a Unix communication mechanism called signals. When we type control C, what the terminal did for us, what the cell did for us, is send a signal called SIGINT that stands for kind of signal interrupt that tells the program to stop itself. And there are many, many, many signals of this kind. And if you do man signal and just go down a little bit, here you have a list of them. They all have like number identifiers. They have kind of a short name and you can find a description. So for example, the one I have described is here, number two SIGINT. This is the signal that a terminal will send to a program when it wants to interrupt its execution. A few more to kind of be familiar with is SIGQUIT. This is again, if you want, if you are from a terminal and you want to quit the execution of a program, which for most programs will do the same thing. But we're going to showcase now a program which will be different. This is the signal that will be sent. It can be confusing sometimes kind of looking at these signals. For example, the SIG term is for most cases equivalent to SIGINT and SIGQUIT, but this is when it's not sent through a terminal. A few more that we are going to cover is SIGUP. It's when there's like a hang up in the terminal. So for example, when you are in your terminal, if you close your terminal, there are still things running in the terminal. That's the signal that the program is going to send to all the processes to the lead that they should close. There was a hang up in the command line communication and they should close up. Singles can do more things that they are stopping, like interrupting programs and asking them to finish. You can for example use the SIGSTOP to pause the execution of a program, and then you can use the SIGCOMD to continue the execution of that program at a point later in time. Since all of these might be slightly too abstract, let's see a few examples. First, let's showcase Python program. I'm going to very quickly go through the program. This is a Python program, and unlike most Python programs, it's importing this signal library, and it's defining this handler here, and this handler is writing, oh, I got a SIGINT, but I'm not going to stop here. After that, we tell Python in a way that we want this program when it gets a SIGINT to stop, and the rest of the program is a very silly program that is just going to be printing numbers. So let's see this in action. We do Python SIGINT and it's counting. We try doing control C, this sends a SIGINT, but the program didn't actually stop. This is because we have a way in the program of dealing with this exception, and we didn't want to exit. If we send a sequit which is done through control-backlass here, we can see that since the program doesn't have a way of dealing with sequit, it does the default operation, which is terminate the program. You could use this for example, if someone control C is your program, and your program is supposed to do something like, you maybe want to save the intermediate state of your program to a file, so you can recover it from later. This is how you will write like a handler like this. Can you repeat the question, sir? What did you type right now when it stopped? So first, so what I type is, I type control C to try to stop it, but it didn't because SIGINT is captured by the program, and then I type control-backlass, which sends a sequit, which is like a different signal, and the signal is not captured by the program, and it's also worth mentioning that there's a couple of signals that cannot be captured by software. There's a couple of signals, these are SIGKIL and that cannot be captured. That one will terminate the execution of the process no matter what, and it can be sometimes harmful. You don't want to be using by default because this can leave for example orphan children processes. Like if a process has other like small children processes that is started and you SIGKIL it all of those will keep running in there, but they won't have a parent, and you can might have really good behavior going on. Go ahead. What signal is given to the programming for you that's a log off? If you log off, that will be, for example, if you're in a SSH connection, and you close the connection, that is the hang-up signals like C, H, up, which I'm going to cover in examples or at least what will be sent up, and you could write for example, if you want the process to keep working, even if you close that, you can write a wrapper on that to ignore that thing. Let's display what we could do with the stop and continue. So for example, we can start a really long process, as leap a thousand, I'm going to take forever. We can control C, control set, sorry. If we do control set, we can see that the terminal is saying, oh, it's suspended. What this actually meant is that this process was sent a six stop signal, and now it's still there. You can continue execution, but right now it's completely stopped and it's in the background. We can launch a different program. If when we try to run this program, please notice that I have included an ampersand at the end. This tells us that I want this program to start running in the background. This is related to all these concepts of running programs in the cell, but background it and what is going to happen is the program is going to start, but it's not going to take over my prompt. Like if I just run this command without this, I could not do anything. Like I will not have access to the prompt until the command either finished or I ended it abruptly. But if I do this, it's saying, oh, like there's a new process, which is this is the process and if I number and we can ignore this for now. If I type the command jobs, I get the output that I have a suspended job that is the sleep, thousand job, and then I have another running job, which is this know-how sleep 2000. Say I want to continue the first job, like the first job is suspended but it's not executing anymore. I can continue that doing BG percentage one. That percentage is referring to the fact that I want to refer to this specific process. Now if I do that and I look at the jobs, now this job is running again. Now both of them are running. If I wanted to stop this job, I can use the kill command. The kill command, my thing is for killing jobs, which is just like stopping them intuitively, but actually it's really useful.  So here, for example, instead of killing it completely, we just send a stop signal. Here I'm going to send a stop signal, which is going to pause the process again, and now I still have to include an identifier because without the identifier, the cell wouldn't know where to stop the first one or the second one. Now let's say this has been suspended because there was a signal sent. If I do jobs again, we can see that the second one is running and the first one has been stopped. Going back to one of the questions was, what happens when you close the cell, for example, and why sometimes people will say that you should use this no-hsup command before you run jobs in a remote session. This is because if we try to send a hang-up command to the first job, it's gonna, in the similar fashion as the other signals, it's gonna hang it up and that's gonna terminate the job and the first job isn't there anymore, whereas we have still the second job running. However, we try to send the signal to the second job, what will happen if we close our terminal right now, is it's still running.  And if we send the kill signal to the second job, that one can be ignored and that will kill the job no matter what and we don't have any jobs anymore. Kind of completes the section on job control, any questions so far, any anything that wasn't kind of fully clear. So BG, just like there are two commands, whenever you have a command that has been backgrounded and doesn't, it's not, it's stopped, you can use BG, so for background, to continue that process running on the background, that's equivalent of just kind of sending it a continuous signal so it keeps running and then there's another one which is called FG, if you want to kind of recover it to the foreground and you want to reattach your standard output. Okay, good. Jobs are useful and in general, I think the kind of knowing about signals can be really beneficial when dealing with some part of Unix, but most of the time, what you actually want to do is something along the lines of having your editor in one side and then the program in another and maybe monitoring what the resource consumption is in our tab. We could achieve this using probably what I have seen a lot of time, which is just opening more windows, we can keep opening terminal windows, but the fact is they're kind of more convenient solution to this and this is what a terminal multiplexer does. A terminal multiplexer, like T-Mux, will let you create different work spaces that you can work in and quickly kind of, this has like a huge variety of functionality. It will let you kind of rearrange the environment and it will let you have different sessions. There's another moral, older command which is called screen that might be more readily available, but I think the concept is kind of extrapolate to both. We recommend T-Mux that you go and learn it and in fact, we have exercises on it. I'm gonna kind of showcase the functionality right now. So whenever I told, oh, let me make a quick note, there are kind of three core concepts in T-Mux that I'm gonna go through and the main idea is that there are, what it's called sessions. Sessions have windows and windows have panes. And it's gonna be kind of useful to keep this hierarchy in mind. You can pretty much equate windows to what tabs are in other editors and other like, for example, your web browser. I'm gonna go through features, mainly what can you do at the different levels. So first, when we do T-Mux, that starts a session and here and now seems like nothing changed, but what's happening right now is where within a cell that's different from the one we started before. So our original cell started a process that is T-Mux and that T-Mux started a different process which is the cell we're currently in. And the nice thing about this is that that T-Mux process is separate from the original cell process. So here we can do things, we can do ls-layer, for example, to list what is going on in here. And then we can start running our program and it will start running in there and we can do control-ad, for example, to detach, let me, I can enable, start casting, yeah, let me. To detach from the session and if we do T-Mux A, that's gonna reattach us to the session. So the process, we abandon a process kind of counting number, this like really silly Python program that was just counting numbers, we like left it running there and if we T-Mux A, like the process is still running there and we could close this entire terminal and open a new one and we could still reattach because this T-Mux session is still running. Again, we can, ah, before I go any further, pretty much unlike BIM where they have this notion of modes, T-Mux will work in a more maxi way which is pretty much every command in T-Mux, so every, yeah, pretty much every command in T-Mux, you could enter it through the command line that we could use, but I recommend you to get familiar with the key binds. It can be somehow an intuitive at first, but once you get used to them, let's see this is gonna, ah. When you get familiar with them, you will be much faster just using the key bindings than using the commands. One note about the key bindings, all the key bindings have a form that is like you type a prefix and then some key. So for example, to detach, we do control A and then D. This means you press control D first, you release that and then press D to detach. On default T-Mux, the prefix is control B, but you will find that most people will have this from up to control A because it's much more ergonomic type on the keyboard. You can find more about how to do these things in one of the exercises where we link you to the basics and how to do some kind of quality of life of modifications to T-Mux. Going back to the concept of sessions, we can create like a new session, just doing something like T-Mux new and we can give a session's name, so we can do like T-Mux new foobar and this is a completely different session that we have started. We can work here, we can detach from it, T-Mux LS will tell us that we have two different sessions. The first one is named zero because I didn't give it a name and the second one is called foobar. And I can attach the foobar session and I can end it. It's really nice because having this, you can kind of work in completely different projects. For example, having two different T-Mux sessions and have different like editor sessions, different processes running. When you go through, when you are within a session, we start with the concept of windows. Here we have a single window, but we can use control A, C for create to open a new window. And here, nothing is executing, what is doing T-Mux has opened a new cell for us and we can start running another one of these programs here. And to quickly jump between the tabs, we can do control A and previous, like P for previous, and that will go as to the previous window, control A next to go to the next window. You can also use the numbers. So if we start opening a lot of these tabs, we could use control A one to specifically jump to the window that is number one. And lastly, it's pretty useful to know sometimes that you can rename them. For example, here I'm executing this Python process, but that might not be really informative and I maybe want to have something like execution or something like that. And that will rename the name of that window so you can have this very neatly organized. This still doesn't solve the need when you want to have two things at the same time in your terminal. Like in the same display, this is what pains are for. Right now here we have a window with a single pane, all the windows that we have opened so far have a single pane, but if we do control A double quotes, this will split the current display into two different panes. So you see like the one we open below is a different cell from the one we have above and we can run any process that we want here. We can keep splitting this. We do control A percentage that will split vertically and you can kind of rearrange these tabs using a lot of different commands. One that I find is very useful when you are starting and it's kind of frustrating rearranging them. Oh, before I explain that, to move through these panes, which is something you want to be doing all the time, you just do control A and the arrow keys and I will let you quickly kind of navigate through the different windows and execute again, like I'm doing a lot of LS minus A, but I don't have, I can do H stop that we explain in the debugging and profiling lecture. And we can just navigate through them. Again, like to rearrange this another slew of commands, you will go through some in the exercises. Control A space is pretty neat because it will kind of equi-space the current ones and let you through different layouts. Some of them are too small for my current terminal config, but that covers, I think like most of the, oh, there's also here, for example, the, this beam execution that we have started is too small for what the current T-Max pane is. So one of the things that really is much more convenient to do in T-Max contrast to having multiple terminal windows is that you can zoom into this. You can ask by doing control A C set for zoom, it will expand the entire pane to take over all the space and then control A set again will go back to it. Any questions for terminal multiplexers or like T-Max concretely? Yeah, there isn't, like it wouldn't be any different from having two terminal windows opening your computer. Like both of them are gonna be running. Of course, like when it gets to the CPU, this is gonna be multiplex again. Like there's like a time-serial mechanism going there, but there's no different. Like T-Max is just making this much more convenient to use by giving you this kind of visual layout that you can quickly manipulate through. And one of the main advantages will come when we reach the remote machines because you can leave one of these, we can detach from one of these T-Max sessions, close the connection. And even if we close the connection and the terminal is gonna send a hang up signal, that's not gonna close all the T-Max session that has been started. Any other questions? And let me disable the kickaster. So now we're gonna move into the topic of dot files and in general how to kind of configure your cell to do the things you want to do and mainly how to do them quicker and in a more convenient way. I'm gonna motivate this using aliases first. So what an aliases is that by now you might be starting to do something like, a lot of the time I just want to LS a directory and I want to display all the contents in the list format and in a human readable thing. And it's fine, like it's not the long of a command but as you start building longer and longer commands it can become kind of bothersome having to retype them again and again. This is one of the reasons why aliases are useful. Aliases is a command that will be a built in in your cell and what it will do is it will remap a short sequence of characters to a longer sequence. So if I do for example here alias ll equals LS minus LAH what this, if I execute this command this is gonna call the alias command with this argument and the alias is gonna update the environment in my cell to be aware of this map. So if I now do ll it's executing that command without me having to type the entire command. They can be really handy for very many reasons. One thing to note before I go any further is that here alias is not anything special compared to other commands. It's just taking a single argument. So and there is no space around these equals and that's because alias takes a single argument and if you try doing something like this that's giving it more than one argument and there's no one at work because that's not the format it expects. So other use cases that work for aliases as I was saying for some things it might be much more convenient like one of my favorite is git status it's extremely long I don't like typing the long of a command every so often because you end up typing all over time so gs will replace for doing the git status. You can also use them to alias things that you'd mis-type often so you can do sl equal ls that will work. Other useful mappings are you might want to alias a command to itself but with a default flag. So here what is going on is I'm creating an alias which is an alias for the move command which is mv and I'm aliasing to the same command but adding the minus i flag. And this minus i flag if you go through the man page and look at it it stands for interactive and it will what it will do is it will prompt me before I do an override. So once I have executed this I can do something like oh I want to move aliases into case by default move won't ask and if case already exist it will be oh that's fine I'm gonna override whatever that's there but here is now expanded move has been expanded into this move minus i and is using that to ask me oh are you sure you want to override this. And I can say no I don't want to lose that file. Lastly you can use alias move to ask for what this alias stands for. So like we'll tell you so you can quickly make sure that what the command that you are actually executing is. One inconvenient part about for example having aliases is how will you go about persisting them into your current environment. Like if I were to close this terminal now all these aliases will go away and you don't want to be kind of re-typing these commands and more generally if you start configuring yourself more and more you want some way of bootstrapping all these configuration. You will find that most in cell com programs will use some sort of text text base configuration file and this is what we usually call dot files because they start with a dot for historical reasons. So for bus in our case which is a cell we can look at the bus RC. And for demonstration purposes here I have been using csh which is a different cell and I'm going to be configuring bus and starting bus. So if I create an entry here and I say oh a cell maps to less and I have modified that and now I start bus. Bus is kind of completely un-configured but now if I do a cell that's unexpected. You're not in your home directory. Oh good, good, good. So it matters where your config file is and your config file needs to be in your home folder. So the configuration file for bus will live in the tilde which will expand to your home directory and then bus RC. And here we can create the alias and now if we start a bus session and we do a cell now it has been loaded and this is telling that like it's loaded at the beginning when this bus program is started and all this configuration is loaded. And you can not only use analysis you can add a lot of parts of configuration. So for example here I have a prompt which is fairly useless. Like it has just given me the name of the cell which is bus and like the person which is five oh a half. I don't want this to be displayed. As with many things in your cell this is just an environment variable. So the PS1 is just what the prompt string for your prompt and we can actually modify this to just be a greater than symbol. And now that had been modified and we have that but if we exit and call bus again that was lost. However if we add this entry and say oh we want PS1 to be this and we call bus again this has been persisted and we can keep modifying this configuration. So maybe we want to include where the working directory that we are seeing and that's telling us the same information that we had in the others. And there are many, many options like cells are highly, highly configurable and it's not only cells that are configured through these files there are many other programs as we saw for example in the editor's lecture BIM is also configured this way. We gave you this BMRC file and told you to put it in your under home dot BMRC and this is the same concept but just for BIM it's just giving it a set of instructions that is to load when it's started so you can keep a configuration that you want. And even non kind of like a lot of programs will support this. For instance my terminal emulator which is another concept which is the program that is running the cell in a way and displaying this into the screen in my computer can also be configured this way. So if I modify this I can change this size of the font like right now for example I have increased the font size a lot so for demonstration purposes but if I change this entry and make it for example 28 and write this value you're seeing that the size of the font has changed because I edited this text file that specifies how my terminal emulator should work. Any questions so far with dot files? Okay it can be a bit daunting kind of knowing that there is like this endless world of configurations and how do you go about learning about what can be configured? The good news is that A we have linked you like to really good resources in the lecture notes but the main idea is that a lot of people really like just configuring these tools and have uploaded the configurations files to GitHub another different kind of repositories online so for example here we're on GitHub we search for dot files and can see that there are like thousands of repositories of people sharing their configuration files. We have also like the class instructors have linked our dot files so if you really want to know how any part of our setup is working you can go through it and try to figure out you can also feel free to ask us if we go for example to this repository here we can see that there's many many files that you can configure for example there is one for BAS first example one for Git that will probably be covered in the version control lecture tomorrow. If we go for example to the BAS profile which is a different form of what we saw in the BAS RC it can be really useful because you can learn through doing just looking at the manual page but the manual pages in a lot of the time are just kind of like a descriptive explanation of all the different options and sometimes it's more helpful going through examples of what people have done and trying to understand why they did it and how it's helping their workflow and we can say here that this person has done casing sensitive gloving that we covered gloving as this kind of file name expansion trick in the cell scripting on tools and here you say no I don't want this to be kind of married whether you've seen uppercase and lowercase and just setting this option in the cell for these things to work this way. Similarly there is for example Alesis here we can see a lot of Alesis that this person is doing example D for CD because that's like for Dropbox sorry for because that's just much shorter G for Git same will go for example with B-Mercy it can be actually very very informative going through this and try to extract useful information. We do not recommend just kind of getting one huge blob of this and copying this into your config files because maybe things are prettier but you might not really understand what is going on. Lastly one thing I want to mention about dot files is that people not only try to push this files into GitHub just so other people can read it that's one reason they also make really sure they can kind of reproduce their setup and to do that they use a slew of different tools oops went a little too far there here. So genius.to is for example one of them and the trick that they are doing is they are kind of putting all their dot files in a folder and they are kind of faking to the system using a tool called SimLynx that they are actually where they are not. I'm gonna draw really quick what I mean by that. So a common folder structure might look like you have your home folder and in this home folder you might have your bus or C that contains your bus configuration you might have your B-Mercy and it would be really great if you could keep this under version control but the thing is you might not want to have a Git repository which will be covered tomorrow in your home folder. So what people usually do is they create a dot files repository and then they have entries here for their bus or C and then B-Mercy and this is where the actually like the files are where they are doing is they're just telling the OS to forward kind of like whenever anyone wants to read this file or write to this file just forward this to this other file. This is a concept called SimLynx and it's useful in this scenario but in general it's a really useful tool in Unix that we kind of haven't covered so far in the lectures but you might be that you should be familiar with and you know the syntax will be ln minus s for specifying a symbolic link and then you will put the kind of the path to the file that you want to create and then the SimLynx that you want to create and all these kinds of fancy tools that we're seeing here listed they all amount to doing some sort of this trick so that you can have all your dot files need and tidy into a folder and then they can be version control and then they can be SimLynx so the rest of the programs can find them in their default locations. Any questions regarding dot files? So what you will have is pretty much every program for example bus will always look for home bus or C that's like where the program is gonna look for. What you do when you do a SimLynx is you place like your home dot bus or C is just a file that is kind of a special file in Unix that says oh whenever you want to read this file go into this other file and there's no content like there's no like your aliases are not part of this file that file is just kind of like a pointer saying that you should go that other way and by doing that you can have your other file in that other folder. If version controlling is not useful think about what if you want to have them in your Dropbox folder so like they're synced to the cloud for example that's kind of another use case where like SimLynx could be really useful. So you don't need the whole SimLynx to go somewhere else? As long as you have a way for the kind of the default path to resolve wherever you have it and last thing I want to cover in the lecture oh sorry any other questions about dot files? Last thing I want to cover in the lecture is working with remote machines which is a thing that you will run earlier so like sooner or later and those are a few things that will make your life much easier when dealing with remote machines if you know about them and right now maybe because you're using the Athena cluster but like later on in your programming careers pretty sure that there's a fairly ubiquitous concept of having your kind of local working environment and then having some production server that is actually running the code which is really good to get familiar about how to work in with remote machines. So the main command for working with remote machines is SSH SSH is just like a secure cell is just gonna take the responsibility for kind of reaching whatever we tell it to go and trying to kind of open a session there. So here the syntax is JJGO is the user that I want to use in the remote machine and this is because the user is different from the one I have in my local machine which will be the case a lot of the time then the ad is telling the terminal that this separates what the user is and what the address is. Here I'm using an IP address because what I'm actually doing is I have a virtual machine in my computer that is the one that is remote right now and I'm gonna be SSHing into it this is the URL that I'm using sorry the IP that I'm using but you might also see things like oh I want to SSH as JJGO foobar mit.edu that's probably something more common if you're using some remote server that has a DNS name. So going back to our regular command we try to SSH as cast for a password really common thing and now we're there we have we are still in our same terminal emulator but right now where SSH is kind of forwarding the entire virtual display to display what the remote cell is displayed and we can execute commands here and we'll see the remote files a couple of handy things to know about SSH that were briefly covered in the data wrangling lecture that SSH is not only good for just opening connections it will also let you just execute commands remotely so for example if I do that it's gonna ask me where's my password again and it's executing this command then coming back to my terminal and piping the output of what the command was in the remote machine through the standard output in my current cell and I could have this in I could have this in a pipe and this will work and we'll just drop all this output and then have a local pipe where I can keep working so far it has been kind of inconvenient having to type our passwords there's one really good trick for this is we can use something called SSH keys SSH keys just uses a public key encryption to create like a pair of SSH keys public key and a private key and then you can give the server the public part of the key so that you copy the public key and then whenever you try to authenticate instead of using your password it's gonna use the private key to prove to the server that you're actually who you say you are we're gonna, we can quickly so case how will you go about doing this right now I don't have any SSH keys so I'm gonna create a couple of them first thing is just gonna ask me where I want this key to live as a person is doing this this is my home folder and then is using this dot SSH path which refers back to the same concept that we covered earlier about having dot files like dot SSH is a folder that contains a lot of the configuration files for how you want SSH to behave so it will ask us a passphrase the passphrase is to encrypt the private part of the key because if someone gets your private key if you don't have a password protected private key if they get that key they can use that key to impersonate you in any server whereas if you add a passphrase they will have to know what the passphrase is to actually use the key and as created a keeper we can check that these two files are now under SSH and we can see too small for this and we have these two files have the 255.19 and the public key and if we cut through the output that key is actually is not like any fancy binary file it's just a text file that has the contents of the public key and some alias name for it so we can know what this public key is and the way we can tell the server that we are authorized to SSH there is just actually copying this file like putting this string into a file that is SSH authorized host so if we hear what I'm doing is I'm cutting the output of this file which is just this line of text that we wanna copy and I'm piping that into SSH and then remotely I'm asking T to dump the contents of the standard input into SSH those authorized keys and if we do that obviously it's gonna ask us for a password and it was copied and now we can check that if we try to SSH again it's gonna first ask us for a passphrase but you can arrange that so that's saved in the session and we didn't actually have to type the key for the server and I can kind of show that again why it's not saving more things are as useful though we can do if that command seemed like a little bit janky you can actually use this command that is built for this so you don't have to kind of craft this SSH T command that is just called SSH copy AD and we can do the same and it's gonna copy the key and now if we try to SSH we can SSH without actually typing any key at all or any password more things we will probably want to copy files you cannot use CP but you can use SCP for kind of like SSH copy and here we can specify that we want to copy this local file called notes and the syntax is kind of similar we want to copy it to this remote and then we have a semicolon to separate what the path is gonna be and then we have, oh, we want to copy this as notes but we could also copy this as forward and if we do that has been executed and is telling us that all the contents have been copied there if you're gonna be copying a lot of files there is a bear command that you should be using that is called ARSYNC sample here yes, it's specifying these three flags I'm telling ARSYNC to kind of preserve all the permissions whenever possible to try to check if the file has already been copied for example, SCP will try to copy files that are already there this will happen for example if you're trying to copy and the connection interacts in the middle of it SCP will start from the very beginning trying to copy every file whereas ARSYNC will continue from where it started and here we ask it to copy the entire folder and it's just really quickly copied the entire folder one of the other things to know about SSH is that the equivalent of the dot file for SSH is the SSH config so if we edit the SSH config to be, let's see, I have to copy it, right? Okay, let's be in the config if I edit the dot SSH config to look something like this instead of having to every time type SSH, JG go like having this real long string so I can like refer to the specific remote I want to refer with the specific username I can have something here like say, oh, this is the username this is the host name that this host is referring to and you should use this identity file and if I copy this, this is right now in my local folder I can copy this into SSH now instead of having to do this real long command I can just say, oh, I just want to SSH into the host called VM and by doing that, it's grabbing all that configuration from the SSH config and applying it here and this solution is much better than something like creating an alias for SSH because other programs like SCP and Arsync also know about the dot files for SSH and we'll use them whenever they are there Last thing I want to cover about remote machines is that here, for example, we'll have TMAX and we can, like I was saying before we can start editing some file and I'll copy it B and we can start running some job, of course and what, oh, and for example something like H-stop and this is running here we can detach from it, close the connection and then SSH is back and then if you do Timux A, everything is as you left it like nothing has really changed and like if you have things executing there in the background, it will keep executing I think that pretty much ends all I have to say for this tool. Any questions related to remote machines? How do you deal with that? That's a really good question so what I do for that, and I can't Oh, sorry, so the question is how do you deal with trying to use Timux in your local machine and also trying to use Timux into remote machine? There are a couple of tricks for dealing with that the first one is changing the prefix so what I do, for example, is in my local machine the prefix I have changed from control B to control A and then in the remote machines this is still control B so I can kind of swap between like if I want to do things to the local Timux I will do control A and if I want to do things to the remote Timux I will do control B and another good thing that I did you can have separate conflicts so I can do something like this and then probably that, because I don't have my SSH config but if you, I can just SSH BN here what you see the difference between these two bars for example is because the Timux config is different as you will see in the exercises the Timux configuration is in the dot Timux dot com and no, there's no CDN and Timux dot com and here you can do a lot of things like changing the color depending on the host you are so you can get like quick visual feedback about where you are or like if you have a nested session also Timux will, if you're in the same host and you try to Timux within a Timux session it will kind of prevent you from doing it so you don't run into issues any other questions related to kind of all the topics we have covered another answer to that question is also if you type the prefix twice it sends it once to the underlying shell so the local binding is control A and the remote binding is control A you can type control A, control A and then D for example D catch from the remote okay I think that ends the class for today there's a bunch of exercises related to all these main topics we're gonna be holding office hours today too so feel free to come and ask us any questions


It's not in, that knee jamming up into his armpit, okay? So my knee of the leg that's not in is gonna slide up and jam in his armpit. The leg that is in, my laces are gonna drop on his hamstring, okay? And then I'm gonna turn my body, kind of like I'm looking across his, and you see how my leg almost kind of like I have a leg half. Right here, as I swing my knee to his armpit and open my hips, it turns his belt buckle, starts turning it towards the ceiling.  He's gonna start bridging and this top foot's gonna go find his far knee. I'm not gonna pin him here, but the beautiful part of this is, after I get my thigh count, and he bellies down, I'm right back on top, ankles are crossed, knees are wide, he feels miserable. He's just giving up points and it's real tough for him to get away. So he's gonna be flat, okay? And then we'll piece this together a little bit better with momentum and some other stuff. Knees wide, ankles crossed, his knees floating. The knee that is not in is gonna swing up to his armpit, jam, my laces are gonna drop to his far hamstring and I'm gonna turn my body, okay? I'm gonna lock, head, forearm, and I'm gonna lift it straight up to my chin. You see how my knee is under my body? If my knee is way back here and I try to lift, I don't have anything under me. Okay, I gotta slide my knee to his armpit so my knee's under me, so I can lift straight up.   I find his far knee with my foot, okay? Then he bellies down, when? When does he belly down? Let him. No, when does he belly down? I let him belly down, he doesn't hurt anything. I want him to feel like everything's the wrong answer and I'm always in control. So when I'm here, I always switch to top hand and I make him pull me back on top, make him pull me back on top and then boom, I'm right back to work, okay? I want him to feel it. I want him to just get more and more and more and his scurrys don't buy it, okay? So I wait, please? And we'll do this out of the turn and talk about momentum here in a second. But we're just starting in a good position. In goes cross, knees wide, leg on the back, and knees floating. The leg that's not in, he's gonna swing up to his armpit. See how my leg, you know, I went to your wipers with the handstring right here. Here, and I open his hips up with my foot. My knee is under me, Peter in the mat, I'm athletic. head for arm, lift. It's gonna feel loose. I got some play in here. You can lock tighter if you want to. I really don't care so much about this being loose. I just want to get it up and over the wedge and find as far neat. Then I just switch top hand when the count's over and I'm arching. I'm arching. I'm making him work. I'm making him work. That's cool. Right back to here.