Okay, hello everyone. Hi. Hi. Okay, yes, that's one, that's one. Okay, so today I'll be talking about compile spelt. So we're talking about spelt, right? So I'm not sure whether everyone knows about spelt. It's like a fairly new-ish framework. So yeah, so I think last year it's the first year that spelt was in, first year that spelt was part of the state of JS survey. So you can know that it's like relatively new compared to other frameworks out there like React or View Angular, right? So one thing that is very cool about spelt is that the initial bundle size, if you are using a spelt framework, your application initial bundle size will be much smaller compared to say React. So in this, I probably will share the link later on. So on this article, so there's this article saying whether it's the spelt skills. So if you look at the chart, right? Like if, like the initial, like this is like the initial, the horizontal axis is the size of the code that view, right? And the vertical axis is the size of the code that is being output, right? So if you see over here in the zero mark where you don't really have much code near to zero, you the, so the blue line is for like the React bundle size and the orange line is for spelt, right? So over here if you look at it, when you have a very small code base, right? For React, you already have like a certain side bundle size that is being included. That's the React runtime library, right? So it's like once you import React and maybe you just do a hello world application, your app is like this big in terms of bundle size. But for spelt, it's the initial one, like the initial size is very small and yeah, and it grows linearly like with, along with your application, right? So more to this chart, but I'm just gonna state like this point over here for now, right? So today I'll be talking about compile spelt in your head. So why is that compile spelt in your head, right? I'll be covered, like I will explain why later on. So yeah, so my name is, so a bit myself, so my name is Li Hao. So that's my Twitter link, you can follow me on Twitter. So I'm a front-end engineer at Shopee and also currently a maintainer of spelt. So let's start with, let's just start with like building an application, like web application without any JavaScript framework, right? So let's just do a recap on, let's do a recap on like how do you create elements on, like when you're building a website. So back in, like so if you're just using, if you are using only JavaScript, then you would use something like a JavaScript API to create elements, right? So here is how you create like a H1 element. You use document create element and then you set like text content to say hello world and then you open it to the body of the browser like DOM, right? So you will have, you have created like a H1 tag with a text in it, right? And when you want to update, say the H1, like the header one, what you do is you can, you can like set the text content and then the text will change to say by world. To remove it, you use it, so document body.removeChild and lastly, if you want to add styles, what you can do is you can over here, think probably you can see the mouse cursor, over here you can create a element, like style element and then you append like whatever your CSS as a content and then you append that at your head that will create like a, that will create a style dynamically via JavaScript and to style it, yeah, you set attribute like class to the element and yeah, you will have like add the ABC class to this header and then you style it via the CSS. Lastly is for, for example, if you want interactive interactivity in your application, probably you would, sorry, probably you would add event listeners over here to say on click listeners and you will listen to click events. Yeah, so this is the basic of, the basis of building a dynamic application on the front end via JavaScript API. So you may be using say view or react or other frameworks, but it boils down to like all these operations at the very low level, right, you can write JXX, but when react interprets it, you will create an element and how does it create element, it will still goes down to creating an element using like this browser's API, right, so next I will talk about Svelte. So Svelte is a web framework that is a little bit different in terms of the approach of how it works. So Svelte is like a compiler where it tries to, when you have a Svelte component, it will tries to compile it into JavaScript and it will tries to come out with like all these operations as just a JavaScript output. So I'll cover that even more later. So that's like a rough introduction of Svelte. So let's look at, take a look at how you would write the Svelte component.  So over here probably, I think, or benefit probably we can go to the Svelte website. Here you have a ripple so you can play around like a playground to play around like writing a Svelte component. So here is how you write. Okay, so let me start with the first one. So you can, so Svelte syntax is like HTML syntax. So you can copy like HTML code in it and you, like the syntax itself feels very familiar with HTML, right? It's purposely so. And a Svelte component, you have, you use a file that ends with a dot throughout, right? So here, if you want to create a H1 element with a hello world, you just do it, like you just write it this way. So if you want like some styles, you can add a style tag and then you can target H1 to the element that you want to target thing, right? So one thing that's cool about this one is that the styles, when you're writing H1, like the styles over here is only scope within this component. So what does it mean is that if say you have component two over here, and it also has a H1 tag, and if you try to include that component, sorry, then the style only applies to like the H1 within this component, not any other components, right? You only see one H1 over here, then only this one H1 is being styled, right? Next thing is, I think we've seen just now, if you want to have like JavaScript code or data inside in your application, then you add a script tag, right?  So here I use curly brackets name. So this refers to world, so you have hello world. So next thing is that to add event list list, there's a directive called on directive, I think space it up a bit. So you can add on colon, click, and then you pass in a function. So again, with like JavaScript code or expressions, you wrap it around with a curly brackets, and then updates is this function. So when you click on hello world, you'll start to see like console, right? Because yeah, this is how you add event listener. Then next thing you have, you can change the data, like just now I use name, now I change it to spelt. So I can just set it, like assign the new value to the variable, right? So when I click, it will change to spelt, right? So there's no, like, set state or like any API to do it, you just assign it like how you would assign a variable. And how does that work? I will talk about it later on. All right, so I think we covered all the examples over here. So the next thing is we're going to talk about compile spelt in your head, right? So how does, so if you look at all these examples, right, if you look at this is a result and you click on the JS output, you'll see that when you write this, it compiles to like this code in JavaScript. So what I'm going to do now from now onwards is to explain like bits by bits how each of them works. I will try to build from a very small like a hello world to like adding event listeners and adding styles and we will observe how it changes.  All right, so let's get back here. Let's go. So the first one is hello world, hello world in a H1 tag. So if you write this, if you take a look just now, right, I think I showed you just now, you will see something like this. So there's two functions over here, or one function and one class, right, two sections. So the first one is a function called a create fragment, and it returns object with like three methods. So each of these methods represent something, right? So the first one, the C represents create. So how you create, like how to create elements, and M is to mount. So how do you mount the elements that you created onto the DOM? And the last one D, it means destroy. So it's to remove when you say announce your component. Right, so here I have like H1 equals element, record H1. This, if you click into, if you look in the source code on how this implements the element will be will be like document dot create element. Because it's repeated a lot of times. So that's why we use a function is to have a better minification. The next part is the class, right, the class app. So each spell component has a default export. And that default export is exporting the component itself. And you can use the component like so where you instantiate it and pass in a target, say, where you want to mount this component, and then you can pass in some props like data, right? Yeah. So, and next thing is that if you can see here, there's an init function in the constructor. And here is where I pass in the create fragment, right? So this is how the top part and the bottom part links together. So you pass in a create fragment function in the init function. And it will initialize the component and create this element hello world. So if you try to remove everything, right? One spell component is still a component, you can still use it. It just don't have a, it's just an empty component, right? So spell will always tries to optimize its JavaScript output. So in this case, you still have a, it still exports some code, like export default class, export that component. But because there's nothing in the template, it will pass a noun to the create, instead of create fragment. So this, this just shows that your output code grows or shrinks like linearly or like proportional with the code that you've written for application. So if you look, take a look into the init function, there's a lot of things, right? One thing probably I can quickly point out is say like the dollar dollar thing. That is like the, like the instance property that contains all the internal API. So probably you shouldn't use it even if you are able to access it. And then there's like a context and then there's update and yeah. So there's a lot of things. I'll probably cover them later on. And yeah, more of it. So next thing is that we want, when you add data, like when you have a variable, like a insider curly brackets, what happens? So now you, instead of, so now you have to like dynamically add like the name in the text content, right? So one thing you can see is that whatever you write in the script tag, most of the things will be also part of the output code. So here you write that name because you will be copied verbatim over here. But if you add, if you add one more function to update the name, you will see that the code will change quite drastically from what we see over here. Here you see that we have another new function, a new function called instance. So instance returns. Okay, so yeah. So let's go from top to bottom first. So we, right now we broke down the text into two parts, right? So here you don't pass in name anymore. You pass in a context, the first item of context, right? What's that? We'll cover that later also. Then next thing is that because the text over here can be changed, right? Can be wool and then changed as well. So there's a new method over here, P, which stands for updates. And whenever it's dirty, which means like something has changed in the name, then you will set data, which is to set the text content of the text node to the updated value, right? So I think from now you can roughly guess that context, the first item in context is the value of name, right? It's being passed here and here. So how does the name comes from? Now you take a look at the instance, right? So instance returns an array, array of variables. The first item is name, right? So probably this will be strings into like here. So forget that instance is also passed into the init function. So previously if you can recall, here is now because there's no like internal state of a component, there's no variables. So it's now, but once you add something, then starts to turn into like a function, right? So previously there's no need for this function, then this function will not exist. Now you need it, then you have this function. So inside instance function, you copy also, copy the code in a script tag with a term inside the body of the function. So now it's like, why is there such a change? Just now you you see like there's no instant function, but now you have like, what's happening? That's because spelt's tracks variable. So all the variables that you declare in the script tag, whether it's mutated, like you plus plus like increment, decremented, or you reassign it the new value, say you assign it to a spelt, then or you reference it in the template, say you use a curly bracket, so you reference that variable, whether it's writable or not writable, whether you export this variable or not exporting this variable, like all of these behaviors are being tracked by spelt. And it knows whether the name is being updated or not. That's why there's a change in the output code. So let's come back to here. So here we, we returned an array of variables that is being used within, there's being referenced within a template. And the first variable that is being referenced is the name. That's why you see context zero over here. And also it's referencing here. So this, this is like a bit mass, I wouldn't drop it much, but can just assume that when it's one, it means the name is has changed, right? Then you also see like a function called doll, doll invalidate. So what is that? Let's come back later. But so, so we, we see like the three parts of fragments instance and app and how they string together inside, they are string together inside in it, right? So how does that work? So conceptually instance is a function that returns like a list of variables. So that we call it a context. And that context over here is passed in into the create fragment function. So to create fragment, so fragment is this object.  So like a recipe of how you control something of a component. And then you call like fragment dot C, which is to create elements and then mount it to the target. So now we cover what is doll, doll invalidate.  Svelt notices that and it will add, it will add one more statement called invalidate, right? For each of them. So you will know that, okay, name has changed in this statement. After this name has changed after this count plus plus count has changed after this full has changed, right? So conceptually invalidated function takes in like what variable has changed and the value. So it updates the context and then mark that value as dirty. And what it does next is that in a mug dirty, it just said that variable is dirty, right? And it will schedule update, right? So not the update doesn't happen immediately. For example, if you have three statements of name equals something, count equals something, they are scheduled in one batch and then it's being flushed to the DOM at once, right? So yeah, so it's being flushed once and then once after that it clears the dirty check. So now let's look at what happens when you add event listeners, right? Over here you add onclick listeners, right? So how does that reflect is that, okay, so firstly we have the whatever the code is written in the script tag copied over verbatim in the instance function. Then when you have event listeners in the mounting and you will add, you listen to the click event and you pass in the update function. So you take a look, update is now the second variable, a second item of the context. So yeah, and then it returns a dispose function, which is like a remove event listeners, right? So it's being cleaned up after when you destroy the component. So let's take a look what if you add multiple event listeners to the same component, to the same element or multiple elements within the same component. What's interesting is that dispose now becomes an array of all the un-listen functions. And then when it destroys it, we just run a run all to dispose all of them, right? This like this is like instead of writing dispose one, it goes to the first listener, first listen and dispose two and dispose three and then you call one by one. This the output that Svelte gives is more optimized in terms of like the code size, right? Maybe you create an array, but it's much smaller in code size, it's much compact, right? So on and on, I guess I've given you enough of that hint of the flavor where Svelte always looks at the template and tries to generate the most compact output if possible, right? So the last thing we look at is the style. So what happens when you have a style tag over here? What happens is that if you spell for each component, it will generate like a hash value and then add that hash value as a class for elements that's being targeted with all the selectors in the style tag, right? So in this case, H1 is being targeted because you write H1 and right? So this H1 will have a class called Svelte with the hash and then in the CSS, right, you will also add this one hash class to the H1 selector. So yes, the part, the specificity has increased by one as class, but then it's more specific and it's coped within each component, right? So each component generates a different hash, so the class is different, so you won't target them, you only target all the elements that within this component. So a summary, I think we covered like how, how like Svelte creates a component and how you add a style and how you add data and how you update data, and also lastly how update event lists, right? We also covered like what the separate fragment function do, right? It returns like an object of like, I would call recipe of like how you create, mount, update and destroy. And then the instance function where it returns like a list of internal variables and you use $ invalidate when you change something. So this function will be called so that you know that something has changed. And lastly you have like an app where each component will have export default of the app class, which you can instantiate, right? So what's next is, so here are some links. If you're interested in Svelte, you can always check out the tutorial, like the ripple. This is the link that we're showing just now. And then we have like community sites. Also we have a very active like discord discussion where everyone, if you have any question about Svelte, you can go in, join in the discord. Lastly, you have Twitter, right? So that's all from me. There's actually like a virtual clap button. Oh, sorry. Okay. So thanks a lot. Any questions? Please unmute your mic and then speak. Should I unmute everyone? I hear you, but it needs to be a bit louder, please. Okay, a little bit better. Yes. Just one question like most of the existing components have UI teams and guides like to start with, right? So it's easier to build any frontend components. So what about Svelte? Does it offer any UI components? You showed us about how to fetch the data and all the stuff. But basically the component, if there are any out of box UI components to build with, that could be a great help, right? Yeah, definitely. So that's, so that's like a, that's more like a, like the community has like build, like a bootstrap version for Svelte. That's like, I can't remember all the names, but there's like Bulma version of Svelte. So there's like all the different frameworks they do, like there's people in the community that builds Svelte version of that, those UI components. Is that what you're referring to? Yeah. So, and also I guess Svelte is, is like very closely to JavaScript, right? So if you're using things like Tailwind CSS or other CSS frameworks, right, those that, that requires just like adding HTML or adding some CSS, I think that will just work perfectly fine with Svelte as well. Okay. And I have other questions. So when you start, you just showed about the bundle size, right? But compared to react components and stuff. Is that the only problem that it tries to resolve the bundle size? Because if we are already using a react or next few days, just close to each other, right? And they have more complex, why would someone want it to move to a new framework? Like Svelte, which is completely new, right? So it's, firstly, it's, it's, I might be biased, but if you talk about like the developer experience, Svelte is much more friendlier in terms of it's, it's closer to HTML, right? So for example, for any web framework, web developer or designers that start out with learning HTML and CSS and JavaScript, when you start using react or view, you have to learn like those, the syntax is much more different. But for Svelte, it's, it's closer to HTML. So you write, you still write HTML, but we add some curly brackets for data, right? So that's my personal bias that you, it's easier to learn from my standpoint. But of course, if you talk about like the performance itself and the bundle size, so, so from, from very, from the very beginning, the code size is much smaller, right?  Secondly, for some of the frameworks, you use something like a virtual DOM or like div comparison of like a, you create like an object tree and then you compare whether it changes and then you apply the changes div to the DOM. But what Svelte does is that no, it just call like document create element or like all the DOM API immediately, right? So it's much closer to the web API. So that's it's much more performance and much more memory efficient. Hopefully that answers your question. Yeah, thank you. Anyone else has any other questions? Please feel free to take advantage of this moment to ask. Yeah, if it's something you're looking to explore, if you've already worked with it, you can also type the question if you much prefer to. But definitely asking will be clear. There's a question on chat now. Does Svelte still allow us to manipulate the DOM directly? Yes. So probably I can share back my screen. Maybe I can share something over here. So Svelte has something called an action. So what this means is that you, for example, you have a library called say foo where you, like some of those libraries in the early days where you finish like jQuery and those things like that where you take in like an element and then you manipulate it, right? So this is very similar. This works very well with those libraries. So for example, you have a function called foo that takes in an element. You can in Svelte, there's this thing called action which starts with a use and a colon. So when you do it like this, the element is being passed into this function. It's being called for every instance of each one. So you can do things like element dot text content equals to one. And yeah, so you can directly access to the element of the DOM. You can manipulate directly. And maybe, yeah, that's hopefully that's answer your question or so long call. Hi, yeah, I want to speak but I'm not sure if you guys can hear me well. Okay, great. Yeah, because I feel like I'm working with red right now and sometimes working with like external libraries like I have no other choice but to try to manipulate some of the DOM directly because of the lack of some APIs. I think another question that I have is that for example, if you're looking at React, I guess the main code reuse pattern is using like React books and stuff. So in Svelte, what do you see as the main way to like for code sharing and code with this? Code sharing and I don't, okay, so I think I don't really have a very good answer for this one for now. Yeah, so we don't really have a very, I think it's still in the early days where yes, there are some like people have like different people have different preferences and different ways of doing things. For example, in this, like just now when you see I'm using an action, the function itself can be shared around, right? So the function that manipulates the DOM can be shared around and things like that, right? So I think it's still early to say like there's a like patterns around and yeah and probably and maybe maybe I'm biased a bit where maybe it's it's simple enough that you don't really have to come out with like patterns to yeah. Okay, because from what I see, it's really like super flexible, right? Like I just write functions and import functions and elsewhere and use it. I just thought like maybe there's some patterns that I already know among the community that you'd like to share. Thanks for that. Yeah, sure, welcome. So CK asked that the sphere require a build tool like Webpack, right? So when you write spell code, you need to compile it to JavaScript code. So you can either use, so it's something like a Babel where you write, I guess everyone uses knows what is Babel, right? So it's like when you write a next generation of JavaScript, ES 2020 or 2021, you compile it down to a code like a browser compatible code, right? So it's similar in that sense, right? So when you want to use Babel with your build tool, then you use a Babel loader. So for spell, you use a spell loader for Webpack, right? So if you are using rollup, you have like a Babel plugin for rollup, then in spell you use a spell rollup plugin, right? But if you just want to say build like a simple component and you want to use your own build tool, like you don't want to bundle anything, that's fine as well. You can use the API itself to compile the code and then it will give you like JavaScript and the source map and all the things. I have a question. So in your experience, what use cases have you seen that it works best and like people use it over like say React? Okay, use cases. So yeah, I would say like, I wouldn't say like better but like this is more of my personal preference for personal opinions, right? So cases where you have a much say you have you have a higher need or in terms of performance or memory, right? Or say you are using like embedded devices, right now IoT devices that is running like browsers in it, those kinds of things. You have a very high requirements on the like very small memory footprint then still is definitely much better than React in terms of memory footprint and performance. Then of course, like for example, if you don't care about those kind of things, like maybe a web developer, then one thing that's better would be for say like static sites, right? You mostly need like the HTML and adds a little bit of interaction. Probably you don't need like a so spell has a SSR story about it. What it does is also a compilation and it outputs, it generates like a function that returns a string. So it does stream concatenation much like U3 stream concatenation on all the things and then returns it as string. React on the other hand from what I know is that you return like you use JSX, right? So it's like an object and then serialize into a string and then return, right? This is much more performance. It's a different order of performance in this sense. So just now I was saying the static site, so generating static sites is much performance. Generating server side rendering is also much performance. Yeah. So I think these are the things that people are starting to do it, but it doesn't limit like what spell can do. You can definitely go for like a building like a full-slash web application. I think that it's doable as well. And in fact, like the creator of spell itself is like the one of the engineers from New York Times. So if you go to New York Times, you see like a lot of those kind of data visualizations, interactive articles, those are those are powered by spells, right? Those arises actually spell arises with a need that they want to do those kinds of visualizations and they find it hard to integrate with, like do it with React. That's why they come up with spell. Yeah. So hopefully that answers your question. Yeah. Cool. Thank you. Any other questions? We have time today for questions if you're like... I have one more question about the scoping of the variable. So let's say like just now when you have the variable name in one of the swap files, then let's say you compose your different components together, like can the children of that component still access name or you must pass down like props? Yeah, you pass down like props. Oh, okay. So is that a mechanism that like to avoid like prop drilling and all those kinds of things? Yeah, there is context similar. And also there's also like a star, like in React, you solve it with either using a star like external star data store or you use like a context. So both exist in spell. Oh, okay. Nice. Okay. So Arul has a question where I just think CSS frameworks, does it work with existing CSS frameworks? From what I know, it works with tailwind bootstrap. I think unless you're seeing frameworks like CSS in JS, those I haven't really tried out, but any CSS frameworks that you import CSS and you add class names, those definitely will work. Any other questions? Does that answer your question? Okay, yeah. Does anyone else have a question? Okay. If no one else has a question, you can reach. Oh, another question. Yeah. How do I assign a star and CSS to H1, for example? A star less in like style? Okay. Probably can do a quick screen share again. Yeah, so I want your first place. Wait, I can't see that chat. And I might, I'm just going to guess. Okay, so if you have a H1 over here, I'm guessing, are you referring to say doing like a style color? Great. Is that what you are trying to ask? Okay, we've got take a copy and stop share. I think specifically for, you know, assigning CSS classes with like tailwind and something. Yeah, so it, yeah, you can just assign the class names. You, so you have like, so it depends on how you import or use tailwind, right? If you are like importing as a CSS files at your, like in at a head of the HTML document, like import, import it, like using a link and a history, then the classes are available and you can straight, you can directly use it here, use it in the spell component. Right. So, yeah, the, all the class names that written in the class in the element is can be like, it can be a global CSS class names or could be like defined, declared locally. I guess that's no question. Yeah, welcome. I guess is there's no question then. Okay, you can reach him on Twitter. If you have any other questions, you can just like maybe private chat if it's cool with you or reach him on Twitter as well. Okay, so thanks a lot for giving this talk today. Thank you.


C Y H is setting up right now, but I'm trying to stay with one of these ones that I like and This I n f n doesn't look right here. G and C G and C shoot Group on we're gonna have to do group on 71 by 90 group on because the other ones are setting up I think I could do the other ones. I did not setting up, right? 71 by 90 group on target 450. This is just the other ones are setting up 71 by 90 group on Take it now because it may not get it felt 90 is the stop for 90.  It's gonna hit It's gonna hit. It's gonna hit. Just take it if you want this already broke This doesn't look right and this isn't setting up right now. It could if it holds 17 Here you can take it right here sitting here. It's gonna break. It doesn't have a big target though That's the problem. That's the problem, but it's better than nothing Well, I Lie, maybe doesn't have a big target for 60 for 50 for 45 for 20 would be a dream target on this here Here it just has but I'm already in it. Here it is. It's all just here group on group on group on group on 450 with a little aggressive considering but here group on QQQ see market is not holding yet, but I think that it does and it's going to hold. I just don't know what time 933 GNC, let's just get rid of that thing and this here you could do but I'm not you could do this though 850 If you want a short INFN put the stop This is gonna go right down wasn't paying attention. Hold on 450 I gotta take it all I gotta take it all because of the market, but this really could go to 420 Here, let's keep it break 460. This is a nice call And I did it before I hit I don't even work at the two-minute. It's not matching up You take half right here because 460 was the first target Let me just move this off Everything looks good. Everything. It's working out everything here. Come on. You can do it I can't even look at the market right now, but I want to I love being up money I love being up money and everything. I'm in 455. I'm not letting it go over 460 This is that is this could go another 20 cents. Don't let this bounce against you look at that bar here


Good morning. I'm Greta Bever, Assistant Commissioner for Central Library Services here. On behalf of Commissioner Brian Bannon, I'd like to welcome you or welcome you back to the Harold Washington Library Center of the Chicago Public Library. We are delighted to be hosting DPLA and to offer our colleagues the opportunity to participate in this important and exciting work. I know that yesterday was a day of stimulating conversation and thought. And for many who attended, it went well into the night, I know. I am glad that we have the chance today to get back together and resume that dialogue. I am also very happy for the chance to reintroduce John Pelfrey, Head of School at Phillips Academy and over, and Chair for DPLA Steering Committee, and of course on DPLA's board. Here's John. Greta, thank you so much and thank you importantly to every member of the Chicago Public Library staff and to Brian Bannon, the Commissioner for hosting us here for our DPLA Midwest plenary. We couldn't be more delighted to be in Chicago and in this beautiful building. For those who were here yesterday, we had a wonderful day of work stream meetings. It was incredibly productive, so thank you to everybody who was here and rolled up your sleeves to help us figure out in these last several months of planning what the DPLA should be and to those who were not welcome to the public plenary session today. The model that we've had through the planning process for the DPLA has been just in this way, which is we've had days before the big session where lots of people came and worked on specific issues and then we've had these big stage events and we are delighted to do it. Welcome also to everyone who is joining us by live stream and by live blog. Hello out there, thank you for joining us in this virtual way. We're thrilled to have so many people, more than 1,000 people have been actively involved in the list serves and the live streaming over the course of this project and we know not everyone can get on planes and come to beautiful Chicago every time so we're delighted that you're joining us from afar and we look forward to your tweeting and blogging and all sorts of other things, send in photographs. If you are tweeting, please use the hashtag pound dplamidwest up here. That's the sort of hash sign dplamidwest and we look forward to following your comments as the day goes along. You can see from your program, obviously the overall trajectory of the conversation. We're gonna start in a moment with the supporting the DPLA segment but I wanted just to back up and give a few moments of context before we get this group of wonderful supporters up here on the stage. It was exactly two years ago at this time, in fact in October of 2010 that our great friend and colleague and many ways founder of this effort, Robert Darten convened a meeting the support of Doran Weber of the Sloan Foundation and about 30 other people, people from foundations, people from libraries, public and private, people like Jerry McGahn, a professor at UVA who just had an interest in trying to work toward a free and open public resource like what we have now envisioned the DPLA to be. And back at that meeting, the 30 or so people came up with one sentence that we agreed upon. This was Doran Weber's insight that we should push for one sentence. That sentence has remained the core of this effort and we've roughly speaking built around that idea and brought other people into the fold over the last two years and it's really tracing back to that moment two years ago that this conversation started. And it was one year ago today that we launched formally the planning process for the DPLA. This happened at the National Archives. We were hosted by David Ferriero, the incomparable National Archivist who has been hugely supportive of this effort all the way through and we were joined in Washington by many, many good friends and many of the public institutions that are represented here today, the Library of Congress, Smithsonian, the National Archives, IMLS and other federal agencies in that moment stood together with many of us from the private sector and said we want to do this. We joined hands together and said this is something that we aspire to do on behalf of this country in a completely ambitious and almost crazy way. But what's happened in that period of a year is we've continued to gain momentum in many ways that we will describe today. This is not yet something that is set in stone in terms of what we're doing. We think of it still as wet clay and very much a participatory process. But where we're headed is to April 2013 as Bob Darten says every time we meet it's just around the corner, April 2013. And that will be our public launch of the project with an initial version of the service and a fair amount of content and so forth that will be released. So that's the overall arc of what we're doing and today is a very important day. This is the last plenary session before that kickoff. So we need your input, we need your feedback and we're well on our way toward what I think will be an exciting launch in April. With that as an overview, I'd like to welcome up to the stage if I might colleagues who are gonna talk about supporting the DPLA and you have a few of their names on your program but they're actually two surprise people as well. I'm gonna welcome up Doran Weber, Chairman Jim Leach of the NEH, Susan Hildreth and Maureen Sullivan and George Martinez are the two additional, yes please come on up.


So, thank you for inviting me. I'm going to talk about reconstructing derivational morphology. So yesterday we've had a number of talks about phonological reconstruction, and then in the end it was sort of pointed out that we also need to have methods for morphological reconstruction and we maybe don't feel quite as confident about morphological reconstruction as we feel about phonological reconstruction. So this talk sort of goes in that direction and tries to figure out what kind of methods or what kind of methodology we need or we should use to do derivational morphology in reconstruction. So when we do reconstruct derivational morphology there are some problems that we're immediately confronted with that we need to worry about. We need to think about the properties of verbal derivational morphines that we want to reconstruct or we need to worry about which ones we can reconstruct, which ones we should reconstruct and those may differ from the ones that are regularly reconstructed. So we need to decide which properties of the historically attested derivational morphology that we see belong to the reconstructed proto-language and which properties are independent innovations. And then we need to decide on how to formalize the properties of these morphines and I think that's where there's the most insecurity because we're not always sure whether we want to do that and how we want to do that and I think that's actually an important step that we need to take in order to help us generalize and also compare diachronic prevalence within and across languages. So this is going to help us to explain how morphosyntactic properties of derivational morphology changes. Okay, so to give you a concrete example from the Indo-European so this is from the lexicon of Indo-European verbs, the LID and this is the entry for Indo-European guen to hit and now we are confronted with a frequent puzzle that we have when we use the LID mainly how many primary verbal stems to be reconstructed for this route. So here the LID editors in this flu box tell us that probably the European had three primary or inherited verbal stems. The oldest one is an old asthmatic present that we have attested in the Spanish and in the Iranian so this is actually attested in some languages and then we have a duplicated present and a scale present and this is attested in the English and in the Italian respectively. And then in this orange box we have a number of verbs in different languages so meaning with that old Irish and so on with this square bracket here and this is how the editors tell us that these are innovations so the stem-forming morphology in these verbs is not directly inherited, it's not the same as these verbs, it's an innovation. So this actually raises a number of questions so why do we have three primary present stems and usually people say oh they had different functions originally or maybe they're different diachronic layers and then the reflexes of some of the stems vary as we've seen so we have as reflexes of this oldest stem we actually have thematic stems or ye or presence in the Indo-European languages. So the question here is how do we decide whether any stem an active stem that we see in the Indo-European border languages is inherited or a brand specific innovation. So what makes the editors of LIB decide that this thing is an innovation but these two that are also only attested in one branch are inherited. So this is a common problem and of course LIB is a great resource and the editors usually do tell us why they decided one way or the other in their footnotes and so on but this is just a problem that you have for basically every entry in LIB. This is a very common problem. So the question is is this just a problem that weird in the Europeanists have but I think this is a much more common problem that you have immediately when you reconstruct the original morphology in any family. So it just illustrates that I tried to find examples from other families in old Chinese backstand saga talk about all these reconstructed verbal morphemes and then they say about this end prefix this typically derived state of intransitive verbs often from transitive verbs. And then one of the examples they give to me looks like a straightforward positive alternation where you have a transitive causative and then you derive the intransitive and the causative and that's all nice and well and then they talk about the S prefix and they say this increases valence in a verb and then one of the examples also looks like a causative alternation verb but in this case the anti-causative variant is basic and the causative variant is the derived one. So there are two ways of treating causative alternation verbs now we could ask which ones are or maybe there are more ways so I just picked this example so now we could ask which ones are primary causatives which ones are primary anti-causatives how can we tell and which type of verbs can be selected by these prefixes and can they be combined and so on. So I think this is a more general problem or another very frequent problem a situation that we see here in proto-algonquian in the verbal system we have this formative morphine that's lost with question marks here in the independent inflection where it's not quite clear what it's doing there it seems to be some sort of verbal stem-forming suffix maybe but proto-algonquian also had a nominal die so they looked very similar and that you could use to form abstract nouns from verbal roots or stems and these are both reconstructed for proto-algonquian so it looks like some sort of reanalysis happened and a nominalizer became part of the verbal stem-forming suffixes so this is also something that we see happening very often and the question is how did this happen why did this happen and how did the properties of this thing change from forming nouns to forming verbs so these are the general questions that we're going to be confronted with when we do a reconstruction of verbal derivational morphology so the goal today is to discuss some theoretical background and methods that I think might be useful in reconstructing derivational morphology especially with respect to understanding the diacrony of derivational morphings in the verbal system and we're going to look at three case studies from Indo-European hopefully we get to look at all three and then conclude and try to point out some generalizations that follow from this so for the background I tried to keep this very short but I think there are some concepts that are useful and that I can take for granted some of them are framework-specific the uniformitarian principle we all know and love the Borochomsky conjecture a non-lexicalist approach to derivational morphology and then what exactly we mean by selection and what exactly we mean by reanalysis and Thaust is probably familiar to you but just to make sure so the uniformitarian principle you probably all know and use in some version that's similar to this quote by Hoppe here so the general processes and principles which can be noticed in observable history are applicable in all stages of language history and I think we all subscribe to that because otherwise there wouldn't be much point in doing reconstruction another way of formulating this in generative approaches to linguistic theory is that this uniform behavior of human language follows from the fact that there is an innate human capacity for language or for acquiring a language that's also called universal grammar sometimes so a shared genetic endowment that makes it possible for humans to acquire language but also limits possible synchronic languages that can be acquired and possible diachronic development so in a way this sort of makes uniformitarianism a little bit more restricted and this is sometimes called syntax or core computational component as in this quote by Mark Hale here who says the computational component of the syntactic module of human grammar is universal and invariant variation is limited to the lexicon and what has traditionally been considered syntactic change is to be taken instead as representing a change in lexical features in particular those lexical features that are syntactic relevance so he talks about syntactic change but all of this is also applicable to the kind of morphological changes that we're going to look at for specific reasons so this is known as the Boroyachomsky conjecture all parameters of variation are attributable to the features of particular items or functional heads in the lexicon and then Hale says if we can reconstruct the morphosyntactic features of lexical items and functional heads and we assume the syntactic computational system is universal and invariant we can reconstruct output sentences for a proto language and again this is relevant for us because we're going to assume a non lexicalist position at least for the purposes of this talk where word formation is not distinct from syntax, from phrase formation you don't have to do this outside of this talk I just decided a while ago that there are good arguments against lexicalist approaches so we're going to use this non lexicalist approach and this is what it looks like so in this approach we're going to treat derivational or stand-forming morphology as functional heads or syntactic terminals which have particular morphosyntactic features so this is a simple example from the end of 2015 a structure for the English word cats after insertion so we have a core, a root with the core lexicals meaning a categorizing head and these are the functional heads that we're interested in so I categorize it as this is a noun that can have particular features and that has a particular realization in this case it's zero because English doesn't do much in terms of nominal standard formation and then a separate head that tells us that it's plural so corresponding to derivational and inflectional morphology is less in the traditional terminology so these heads and the features are stored in the mental lexicon of speakers and they vary from language to language which isn't shocking because we know that the plural in English looks different from the nominal plural in Swahili or Old-Hair German but this is essentially the Boreal chance to conjecture if there is variation it's in these functional heads and of course also in these roots so we're going to use this we're going to treat a verbal stand from in morphology exactly the same way so parallel to little n we're going to have a little b here and this little b can have different features different morphosyntactic features or values it can be causative or incoative or express a state or an activity different ways of formalizing this this is basically terminology following work by Haydihari and others and these categorizes select lexical roots or other categorizes with particular features that have to be compatible and again this is just formalizing empirical observations because we know okay not every verb can behave as a causative alternation verb not every English verb can undergo the causative alternation and not every verb acts as an unaccusative or expresses a state so this is just the formalization of these observations and the selection of properties and features of these categorizes can change over time and this is relevant for us this happens through reanalysis defined here as a surface stream in a particular grammar G2 receives a different underlying interpretation representation than in the input grammar G1 during language acquisition this is an acquisition based approach to reanalysis for our purposes it's just important that this is not structural simplification because we're going to see cases where we don't actually lose structure we gain structure or we just have the same amount of functional heads so that's why like George Walkton's definition of reanalysis or description of reanalysis as a process whereby the hero assigns the parts to the input that does not match the structure assigned by the speaker so reanalysis is a mechanism and it's not causal so it doesn't cause syntactic change it is syntactic change is a very nice way of putting this and the same holds for morphological change because we've just said we're going to have a non-lexicalist position so these observations also apply to morphological reanalysis in our approach okay and I think that's all we need to turn to our first case study that's Polish-European NP and fortunately Hanna's already talked about this yesterday so I can go over this fairly quickly and go to the analysis but just as a reminder this is the suffix in Polish-European that looks like a symphonic active participle suffix in most of the older Indo-European languages and in this so in the Iranian, Greek, Italian, Germanic Tokarian and so on and in these languages what's important is whether or not you have a formally active finite paradigm if you have a formally active finite paradigm you can make an active un-participal so valency isn't important we saw a transitive un-urgitive and an un-accusative valency isn't important what matters is the presence of a finite active paradigm and here are also examples to show you that this is really syntactically active so we have participle with accusative internal arguments and subject agreement and so on so this is usually described as subject oriented and then we already saw that hit-type misbehaves the hit-type un-participal forms adjectival passives or looks like an adjectival passive it does not care about voice morphology or non-active finite verbs but it does care about valency so here we have some un-participals to formally active verbs and here we have some un-participals to formally non-active or middle verbs and they are they behave syntactically the same way so they look like passive participles but so theme oriented is maybe a little more accurate so what's important is that you have an internal argument or theme and if this were an in-european language this would mean seizing, giving and going and not see given and gone so theme orientedness instead of subject orientedness and this can also so this really behaves synchronically like a passive participle it occurs in periferastic passive and yeah, it's generally described it does passive or is theme oriented participle so the problem that we already saw yesterday is that the heated reflexes of NT are passive or maybe more accurately described as theme oriented or expressing some state and the same thing is syntactically active in Tokarian and Indo-Iranian Greek and so on so this tree again shows you the function of NT correlated with the commonly assumed split of states so here Tokarian still looks like the second to branch off so this should probably be a little lower in the tree but the important thing is that everything after Anatolian has something that looks like active NT right so the question is what should we reconstruct and this actually leads us back to Eigen's question from yesterday so how do we know which one is older should we reconstruct active well that makes it very difficult to get the Anatolian use from that it's difficult to imagine can I go back here so if we have input structures like this it's difficult to imagine how that could be re-analysed as passives so going from active to passive is going to be very difficult even if you take an unaccusative form and let go it's difficult to see how that's going to be re-analysed as gone so this is relatively difficult we could start with the theme-oriented situation and Anatolian but then we have to explain how this changed into the Indo-European active participle and then the solution is going to be what actually looks like a complication the evidence for the nominal NT in the Indo-European branches that we've already seen yesterday so again some examples we've seen that this NT also derives adjectives from nouns with nice examples from Hittite and from Indo-Iranian some of these look very old so probably inherited from Proto-Indo-European and even some synchronic ones in Sanskrit that look like participle so Sahand and Shujan but they can't be synchronic participle because there's no synchronic finite stem finite verb stem or in this case this is even worse if there is one then it's non-active and we see the same in some other Indo-European languages where we have these mismatches where things that look like active participle don't have a synchronic finite paradigm or if they do it's not an active one so this looks like it should go with an active gero but there's no such thing or greo these don't exist and even worse this one looks like an active participle but the corresponding finite verb is always non-active this is a deponent verb so these have long been interpreted as archaisms and it's been suspected that this participle anti was actually originally a denominative adjectives also typological parallels for this kind of development so for our purposes what this means is that this anti must have acquired more verbal functional structure and must have been able to select verbal functional heads at some point in the course of its development and this means its selectional properties must have changed from selecting roots to selecting a particular type of v and then eventually also eventive v and this is what we need to get to the inner and the European stage so this is a first attempt at sort of formalizing this so in probably in the European and probably in the Italian we must have had this stage so this thing selects nouns or roots it must be able to select nouns because we've seen examples from Hittite where we see this nominal stem from in morphology and then from the reanalysis so these adjectives are going to express states so to go from this kind of state to a verbal state should be a fairly trivial reanalysis so we get to this stage and this initially would have had a morphosyntactic feature state or stative and then the question is how do we get from this to the next stage well states are ambiguous there's a lot of literature in that can be a resultant state or a target state or different kinds of states and some of these are more amenable to being reanalysed as eventive and some as processual which Hannah's already talked about yesterday and then we get to a situation where we have even more verbal functional structure and this thing here that we don't need to worry about much is what gives us the subject orientedness so now we select something that actually has an external argument right so this is the Anatolian stage where we only have the internal argument that this is the in the European stage where we select something that also has an agent so this is the first case study or this is an attempted formalizing analysis the second one is similar here we also go from a nominal state or a nominal morpheme to a verbal morpheme this is probably in the European E-larynge 1 and here we have a similar puzzle we see in almost all branches of Indo-European a verbal standpoint in suffix that looks like a long A from E-larynge 1 but the distribution is weird so it makes the nominal and the verbal present but also heiress so it doesn't seem to know whether it's a present or an heiress stem we and this is unusual for a verbal stem from morphology imported in the European so this is immediately this makes it immediately suspicious in Anatolian for example we have presents with this long A from adjectives so in Latin we have primary the verbal and the adjective ones and in Germanic the same way so these languages all have presents but then in Greek and Slavic and Baltic most like this thing makes primary heiress so in Greek this is called the passive heiress but it's usually in the older stage it's not necessarily passive but in coetive so the solution for this that LIV proposes is to reconstruct two different primary verbal suffixes for Proto-Indo-European one that they call fientif and this is E-larynge 1 which means heiress in the older languages and one that they call asif and that's the laryngeal of these suffixes plus another suffix so this is a composite suffix actually and that results in presents in the older languages and to give you an example for the entry of this root tells to become dry here you see they reconstruct the primary heiress, the primary present and then a fientif and an asif and to be fair they have some question marks here for some of these forms but it still feels it feels a little redundant to have fientif and asif in addition to reconstructed primary heiress and present stems and then the question is why do we assume that branch-specific things that look like branch-specific developments are actually inherited from that and so on so this doesn't feel like the ideal solution there are also phonological problems associated with some of the reflexes of these suffixes so an alternative that's been proposed is that this long e actually originated as a nominal suffix we see many old a-verbs associated with so-called adjectival roots or roots expressing a state that belong to the so-called Kalan system, so primary adjectives like red or dry and so on and it's been suggested that this verbal a was originally identical to the instrumental singular ending on abstract nouns, on adjectival abstracts and we still see this in some analytic constructions in Vedic and Latin where we have things with a long a or a long a plus some auxiliary that express a state or a change of state so become hidden or become hot or make hot or something like that so you can also make factitives so this suggests again this thing that looks like a verbal suffix was originally denominal or adjectival and developed into a state if in co-authiff verbal stem-farming suffix and we still see this stage in Greek actually because as we said it's actually not passive at the oldest stage it's in co-authiff it's in complementary distribution with verbal stem-farming morphology so it looks like lexical aspect originally and not syntactic aspect and it originally did not express a voice a voice distinction so the passive use developed later also suggests that this suffix changed in the history of Greek and acquired more functional categories so again this is my attempt to formalize this a little bit we start with a noun with particular features this probably should be a separate functional projection but we have to formalize these instrumental features somehow this seems to have meant with or maybe possession and it looks like these types of features when they're re-analyzed as part of the verbal domain express states and that's not surprising because this thing with or possessing something also expresses a state so this feature was re-analyzed as part of the verbal domain and conflating little bit in the aspect here which I probably shouldn't do but originally this must have become re-analyzed as a feature of little bit and then if we do that we can also say okay being in the European languages then categorize this as perfective or imperfective depending on exactly what this little bit expressed so what kind of state it is or is it entry into a state then you're going to get a perfective or just a plain state and then it's going to be a presence then so not all of these stages are illustrated here but we basically go from a nominal suffix to a state of the will be to an incoherent will be this is what we see in Greek and then an eventive will be this is also what we see in Greek when we get the passive use and this actually has some nice consequences because this means we can take this whole thing form up there and conflate them into one which we're going to skip now because I'm all the time I also wanted to talk about verbal diminutives in German and in German it is the third case study that's actually the most exciting one I think but I'll just show you maybe the last slide where so diminutives verbs in German are very productive they are formed with this L suffix that seems to be the same that we have a nominal diminutives so the idea is here that we originally form a nominal diminutive with this suffix and verbalize it with a verbal category changing head and then this feature becomes re-analyzed as part of the verbal domain and interestingly diminutives in the verbal domain seems to mean iterativity so these things are plurational iterative activity verbs ok so to conclude very quickly so this case study what's interesting here is that we see regularities in the way verbal derivational morphology develops surprisingly often we started with something nominal that becomes re-analyzed in the verbal domain we go from selecting nominal heads to selecting verbal heads we very often go from stative to eventive so adjective state verbal state event and there are good pathological parallels for all these developments especially the development of adjective morphology to participle morphology as Hans already mentioned has a lot of parallels and I think when we start to generalize and formalize the morphosyntactic features of these formations we can identify we can better identify regularities so we see all possessive means state when it's re-analyzed into the verbal domain and so on and this works even for developments that do not display traditional grammaticalization characteristics so most of these things I think would probably not be analyzed as grammaticalization you don't go from less grammatical to more grammatical or from lexical category to functional category that doesn't seem to be happening but there's still a real analysis going on and I think we can find out more interesting things about that thank you


Ladies and gentlemen, ladies and gentlemen, ladies and gentlemen, ladies and gentlemen, may I have your attention please, may I have your attention please, may I have your attention please. We are very happy, I am Hale Bards, co-chairman of the train with Governor Hodges of North Carolina. This is our face stop in South Carolina. Mrs. Johnson and Linda have made at least 25 speeches and all through Virginia and all through North Carolina the crowds have been just like you all all the way with LBJ. Now let me introduce to you some of your own folks who have been on the train with us and who will get off here who will wake with us very hard. Mr... Isn't that Mrs. McDowell? Yeah, Mrs. McDowell, the vice chairman, Mr. and Mrs. James L. Mars, Mr. and Mrs. B. Biles Mack, Mrs. Mack is co-chairman of the train, Mayor and Mrs. Luthards G. Patterson of Fort Mill, Senator and Mrs. Robert W. Hayes, the Democratic nominee for the Senate, Dr. and Mrs. Charles Davis, President of Winthrop College, Mr. Lewis Mars, co-chairman of the train, Mrs. Lucille Arrant representing our labor friends and Mr. LB Knox also representing our labor and Mrs. W. Lewis Wallace who had been very helpful to us. Now, ladies and gentlemen, may I present to you our candidate for Congress, Mr. Tom Gettis. Where's Tom? It's a wonderful experience to be aboard the Lady Bird Special. Mrs. Gettis and I appreciate the opportunity wonderfully well. It's a high honor to welcome the first lady of the line and these high dignitaries aboard this train to South Carolina and the fifth congressional district. Thank you so much, Congressman Boggs. Thank you, Tom. Ladies and gentlemen, you have one of the greatest governors in the United States in South Carolina. He's a Democrat without prefects or suffix. He's a Democrat, priceless and always. And he has a lovely wife who has been on this train and she has been along with my wife, the co-chairman of this train and we're mighty proud of. And Governor, come over here and welcome Mr. Johnson to South Carolina. Congressman Boggs, distinguished guests, ladies and gentlemen, it is a great honor for South Carolina and a deep personal privilege for me to welcome to South Carolina an authentic daughter of the South and a wonderful, gracious, compassionate first lady. And I am sure that she can take with her from Rock Hill the assurance that South Carolina and Rock Hill will see that she is in the White House for more years.  You're just as right as you can be. She is as southern as any one of us. She loves the South, but she looks at the South, which is moving ahead, which is looking to the future, the vibrant, growing new South that we all love along with our glorious past. And now to introduce your distinguished senator, your loyal Democratic senator. I present to you the mayor of your flying city, Mayor David Lyon. Mr. Mayor, it's a great pleasure to me to be able to welcome our distinguished guests to the city of Rock Hill and to the county of York. And let's all have a big welcome for Mrs. Johnson. I want to thank all of you for coming out and giving this great lady such a royal reception. It's now my pleasure to present to you a man who in Rock Hill and York County needs no introduction. A man who has twice been elected governor of this state. A man who is serving his fourth term as a United States senator from South Carolina. The lone loyal Democratic senator from the state of South Carolina. I present to you the honorable old indeed Johnson. Mayor Lowes and fellow Democrats, I'm glad to have this privilege today to be on this train with a Democrat. All what South Carolina is going to do on November the 3rd when that election comes, they're going to vote Democratic like they've always voted. I would be there to keep my duty if I didn't stick to my party too. Now friends, it gives me a great deal of privilege to introduce to you the first lady in the White House. My friends of South Carolina, thank you all for coming out. It's a real pleasure to be introduced by Senator Olin Johnson. He and Gladys have been our dear friends for 15 or more years. And now that we enter the state of South Carolina, I want to say a word about the wife of your governor, who is the co-chairwoman of this whole trip. She's done more to start these wheels rolling than nearly anybody, any of us. She's a mighty capable woman. It's wonderful to be here in this land of cattle and cotton. It reminds me of Texas. But you have one special claim to fame that Texas can never match. That is being the birthplace of Andrew Jackson. Of course I know that nearly every southern state has a way of claiming claim to that president too. As good as he was a big enough man to be shared not only by the whole south, but by the Democratic Party across the country. You have much to be proud of in this oldest part of the nation. You have demonstrated valor and perseverance from colonial days through a spectrum including war, industrial revolution, depression, recovery and expansion. And the future is filled with challenge. My main reason for coming here today is to say to you that to this Democratic candidate for president and his wife, the south is a respected and valued and beloved part of this country. My husband would like to be here himself to bring you his greetings. But since he can't, I am coming to some of the states I know best, in many of which I spent summer times and vacation times of my childhood and my grandmother, Emma Bates, was born in this state. Ten months ago on a dreadful day that shook our country, my husband became your president. Since then, he has tried with all that is in him to keep our country on a steady course of economic prosperity, to face the world with firm strength and to seek practical ways to help those Americans still in need. There are problems ahead and he promises no easy answers. But his years of working for the people of this country, you people right out there, include a lot of experience, 24 of them in the Congress, many of which he served with your good, your dear Senator Olin Johnston, three years in the vice presidency and these last 10 hard months. Also, plus what a wife can only describe as a lot of determination and energy and devotion to his job, which I believe will mean a lot in helping solve the problems that face you and you and you and all of us. I'm proud of this record. I hope you will want to continue it. And I thank you for coming out and just just one more minute because I see a lot of young folks in the crowd. And because I think a lot of them are from the neighboring Wendrop College. Is that right? I want to introduce my own student to you, Lindeberg Johnson. I want to thank you all for coming, particularly the young people. I was very, a mother asked me how to win most of the votes from the young people. And I said, go to school, go to a city when school is in session and see if you can't get them to turn the school out. And I'm very glad that about 2,600 students from Wendrop College have made it here today to see us. Thank you all for coming. I want to particularly thank you for all the signs I see in the band for coming. I must admit there are a few signs I don't agree with, but I'm glad in a country where we're allowed to disagree. And after all, we know in our hearts who's right. Thank you. Vote Democratic. Let's go to the White House. Thank you. Thank you all, ladies and gentlemen. We're on a tight schedule. Our face lady and her lovely daughter have made at least 20 speeches since leaving Washington. And they have maybe 50 more to make. But when we are finished, I can tell you that just like Maine and Vermont and New Hampshire and Arizona, North Carolina and South Carolina and the rest of the South will be with our southern president, Lyndon Johnson.


Welcome to Happiness Isn't Brain Surgery with Doc Snipes. This podcast was created to provide you the information and tools Doc Snipes gives her clients so that you too can start living happier. Our website, docsknipes.com, has even more resources, videos and handouts, and even interactive sessions with Doc Snipes to help you apply what you learn. Go to docsknipes.com to learn more. Hey there everybody, and welcome to Happiness Isn't Brain Surgery with Doc Snipes, practical tools to improve your mood and quality of life. Tonight we're talking about 10 ways to deal with social anxiety. A lot of people have social anxiety and that's basically having unreasonable fears that you know are kind of excessive when it comes to being in any kind of social situation. Some people have only social anxiety when they've got to do things like perform or public speaking or something like that. Other people have social anxiety when they have to go to work, when they have to be in crowds, they don't like going to the shopping center or the mall where there's a lot of people around. So depending on your level of social anxiety, some of these things may be helpful to help you work through and deal with your social anxiety. The first is to minimize stimulants.   When you take stimulants, if you drink too much coffee, you may feel anxious. So if you're drinking stimulants before you go into an anxiety provoking situation, you may misattribute your anxiety to the social situation when in actuality it was the caffeine or the nicotine. The other thing that you want to do is pay attention when you're at some of these events that you're minimizing your stimulants. The other thing and I'll you know this is not a stimulant. Alcohol is technically a depressant. But when alcohol starts to wear off about 30 minutes after you drink your drink, it starts to wear off and there's an anxiety rebound with alcohol. So if you have high anxiety, if you have social anxiety, drinking too well that anxiety is probably not your best bet because in the end it's going to kind of backfire and bite you in the ass. Know your temperament. Not everybody likes being around big groups of people. I personally draw energy from being around people. So I love being around groups, but my daughter on the other hand is much more of an introvert and she would prefer to be around, you know, two or three people at a time. She gets really exhausted when she has to be in big groups of people. It doesn't mean she's got social anxiety. So know what your preference is for being around people. So when you're developing your self confidence, when you're developing your skills, when you're working through the social anxiety, you're not putting yourself in situations that would stress you out anyway. So know your temperament. If you're an introvert, when you're making your exposure hierarchy, which we're going to talk about in a minute, you're going to start with something like going out for coffee with a friend to Starbucks or maybe even having a friend over for coffee in your house depending on how bad your social anxiety is. And then you're going to work up from there. But if you are an introvert, you're never going to be totally relaxed in a group of a large group of people. So just understanding the difference between being anxious and like feeling like you're going to crawl out of your skin and being uncomfortable or having it be very draining to be in a large group of people. Understanding your temperament, that's part of it. So you can say, you know, this is normal. I am not the type of person who likes to be in a large group of people. So it's going to take some preparation and it's going to take a lot of energy, but I can do it. Know your triggers. Different things trigger anxiety for different people. Some people have anxiety when they feel like they're going to be evaluated. So if they're doing a presentation for their colleagues or their peers, they're more likely to be anxious than if they're, say, hanging out with five other parents at a kid's play date or something. Some people have, one of their triggers is authority figures.  So it's kind of all about what your particular triggers are. If the other trigger you might want to consider is the situation.  So know what triggers your anxiety. So thinking about how your social anxiety impacts your life, what kinds of things can you not do or what kinds of things do you find are just terrifying to do? Keep a list of all of those things, starting with the things that only make you a little bit nervous to things that you would rather, you know, pull your eyebrows out than do and start at the beginning. Start with the things that only cause you a little bit of anxiety. Imagine doing them, rehearse doing them in your mind. See yourself going through them successfully. For example, a job interview or a first date. Imagine what it's going to be like, what the other person's going to say, how you're going to respond and how it's all going to go well. Just keep imagining that until you can imagine it or think about it and you don't feel stressed. Then when you go in to do it, it's going to be a lot easier. Once you get past that first thing, move on to the next thing that causes a little bit more anxiety. All right, start at the beginning again. Imagine doing it. See yourself going all the way through. Maybe it's doing a public speech. See yourself getting dressed for it, getting ready for it, walking out on stage and delivering the speech and see it go well. You're not going to see yourself tripping and falling. You're not going to see yourself stuttering and stammering or dropping all your note cards or anything. Those are the things, the catastrophic thoughts that you have that are likely not going to happen. I want you to imagine it going perfectly. Rehearse it in your mind until you can do it literally with your eyes closed.   Keep a rational outlook. A lot of times, social anxiety is caused by catastrophic self statements, things that you tell yourself. People are judging me. They're laughing at me.  Whatever your thoughts are, so keep a list of what those thoughts are and write counter thoughts to them. People are judging me. Well, they may be, but do you care? If people are judging me, that's on them. If people are laughing at me, well, at least they're laughing. In reality, what other reasons could the people have had to be laughing? What are three other explanations for why they might be laughing besides laughing at you? Look at your catastrophic self statements.  Well, that's pretty darn catastrophic. So think about exactly what is going to happen. What are you going to do? And how rational, how realistic, how likely is it that all these things are going to happen? And if that is one of your fears, watch the movie, Miss Congeniality, because she is going out as Miss America, I think, is who she's trying to portray. And she falls flat on her face. And she just picks herself right back up and walks on. And nobody thinks anything of it after that. It's not like a week later or 20 minutes later in the movie. People are still talking about her falling down. She did. She got over it and moved past it. When you make a big deal out of it is when people start to think about it a little bit more. Practice breathing. When we get stressed, we tend to breathe more shallowly and more rapidly. When you breathe slowly and deeply, you're triggering the relaxation response in your body. It doesn't mean you have to take those big, giant, deep breaths like you do at the doctor's office or anything that's overly demonstrative. But focus on your breathing. If you start feeling yourself getting anxious, breathe in for a count of three, hold for a count of three, and breathe out for a count of three. And again, it doesn't have to be noticeable that you're doing it. You can do it in a meeting and nobody will even know. But if you can slow your breathing, you'll slow your heart rate, and you'll trigger the relaxation response to help you deal with your anxiety.  I remember one place I worked once a month, we would have to get up in front of all of our colleagues and all of the executives and give a report on how our department was doing. I hated doing that. I hated being up there giving this report, not because of the content of the report.  And it was really no big deal, but it would cause me a little bit of anxiety. I had to do it. So distress tolerance techniques were always useful because it was an eight-hour meeting. So it might be four hours of me sitting there anticipating, going up and having to give my speech. So what would I do during the four hours while I was waiting? I would do activities. I would listen to what other people were saying. I would make notes. I would sometimes go through clinical charts and sign off on documentation and not pay attention. But I digress. Contributing. So if you're at a party, you can't really do it in a meeting. But if you're at a party, for example, and you start feeling anxious, get up, maybe help the hostess out or the host out in the kitchen, go around, pick up glasses, pick up trash, throw things away. Do something to be helpful to contribute so you're not feeling like you're having to sit there and be on the spot. Comparisons can help, too. You can just kind of blend back into the wall a little bit and compare how you're doing to how other people are doing or how you're doing to how you've done in the past because you're probably doing better now than you did then. Trigger opposite emotions is another way of dealing with distress. If you're feeling anxious, bring out the opposite, tell a joke, find something funny, find a video or something that makes you laugh and share it with other people because that'll make you start laughing and feel more relaxed and release endorphins. You can also just push away some of those thoughts that keep coming into your head. I'm going to make a mistake.  They're judging me. It's going to be awful. Just push those thoughts away and go, you know what? No. I can do this, and I'm going to push through. The final thing you can do in this particular set of distress tolerance techniques is sensations. Focus on sensation. Some people have a rubber band that they snap on their wrists to kind of help them focus on something else. Some people wring their hands. I don't recommend that because that just kind of shows your anxious and keeps your anxiety going. Listening to loud music. You can go into the bathroom and splash cold water on your face unless it'll make your mascara run. There are a variety of things you can do. You can also go and find some coffee because coffee's hot. And that focus on how the coffee feels in your hands when you're holding the cup. Focus on the taste of the coffee. That hot sensation will kind of distract you from other things that are going on. So focus. And we're going to talk about one thing at a time in a minute. Another set of distress tolerance techniques that can help are imagery.   Imagine going through it and doing it successfully. Find meaning in what you're doing. So sometimes maybe you're going to your spouse's holiday Christmas party.  You don't know anybody. But find meaning in it. Why are you doing this? Because it's helpful to your spouse. You're providing support. And maybe you can find somebody that has similar hobbies or something. Before you go, if you're going to your spouse's Christmas party, for example, try to find out who might be at the party that shares similar hobbies and stuff. I know my husband works with people who do organic gardening and who are kind of health conscious. I won't say fanatical, but health conscious like I am. And we like to use a lot of lentils and beans and cook in healthy ways. So identifying those people. I can't talk about what they do at work because that's just way out of my wheelhouse and over my head. But I can talk with them about these other things. So I'm not just standing there looking around feeling like I'm out of place. So find meaning in what you're doing and try to find connections and commonalities with other people before you go. And then I would have my spouse introduce me to one of the people that does organic gardening, for example. And then we could start talking. Once you get more comfortable, then you're going to feel more at ease walking up to people and going, hey, and striking up a conversation and finding out commonalities. If you've got children, a lot of other people have children, so you can talk about your kids. Or if you've got pets, you can talk about your pets, your dogs, people love their dogs. Prayer. Prayer can help.  Practice relaxation. If you're feeling really stressed, just again, you don't have to get out of your chair. You don't have to go anywhere. But practice tensing and releasing your muscles. Clench your fists and release your hands and feel the difference between tense and released. And then tense kind of your whole upper body. And you don't have to do it like this, because that's obvious. But you can kind of tense up a little bit and relax and feel the difference between stressed and relaxed. And then when you do it one more time, you tense. And when you relax, you feel all the stress just draining out of your body, out of your fingertips. So that's kind of a guided relaxation to help you when you're kind of on the spot. One thing at a time, when you're in a social situation, there is a lot of input. There is a lot of stimulus going around, a lot of people focus on one thing at a time if you start getting overwhelmed. If you're at a party, maybe you can go over and get something to eat and focus on talking to one person at a time or focus on what you're eating or find something that you can focus on so you're not trying to keep up with everything that's going on. Take a mental vacation or a physical vacation.  And that's okay. Sometimes you need to go somewhere where you know nobody's watching and you can take those good deep breaths and go, you know, I got this, it's gonna be okay. I'm doing fine. Give yourself a pep talk. Look realistically over how the night's gone and the majority of it, has it gone okay? Yeah, there are probably going to be some hiccups and faux pas here and there. And if there are, that's okay. It happens to everybody. Nobody is perfect at their social interactions all the time. And that's okay. But look over it realistically to realize that tonight is going okay. It may not be going the way you had hoped it would, but it's going okay. There's nothing catastrophically wrong. And remember that we are a lot more important in our own minds than we are in anybody else's mind. So when we make a mistake, we will remember it for six months. But other people probably forget it about 60 minutes later.  Trust me, not something I want to repeat. But I would bet if I ask any of my staff now, yes, I did it at work about that incident, they'd look at me and go, no, I don't remember that. I remember it because it was mortifying, but nobody else really cared. They were past it by the next day. Nobody really thought anything about it. So remember that a lot of stuff that seems huge and glaring to you is only because it happened to you. And other people are so involved in their own life, they probably didn't notice or won't remember. Remember that fear is an acronym standing for false evidence appearing real. So always examine the evidence. If something happens and you think it is the absolute worst thing in the world and you're just gonna die, how likely is it that that's true? Is it the worst thing in the world? Are people judging you? So look at the evidence. How do you know this is going on for certain? And what are other explanations for what might be going on? Mentally rehearse those stressful social situations, get ready for it, the job interview, the first date. And for some people, even going to the doctor can be a stressful social situation because they get kind of a white coat syndrome where they're afraid to speak up to their doctor. I found that if there is a certain set of things that you need to say, like if you're going in to talk to your boss or you're going in to talk to your doctor, sometimes it's helpful to write down a list of the points that you wanna cover with them or the symptoms that you're having. So you can go over it and make sure you get everything said and you don't end up kind of getting shut down. When I used to have supervision with my boss, I only got supervision for one hour once a week and that was if I was lucky. So I would go in with a whole laundry list of things. And it could be the stuff that I was upset about or having difficulty with and I could have a laundry list and just go through it and mark it off. So I would make sure that I got everything said and I covered and we were on the same page by the end of the meeting. Finally, practice mindfulness and focus on your surroundings. Know how you feel. If you start feeling anxious, step back and ask yourself, why am I anxious? What do I need right now in order to feel calmer? Try to do this periodically so you don't wait until your anxiety is like off the charts. Focus on your surroundings. Look around, find places and little niches that you might feel comfortable. Maybe there's somebody else sitting over in the corner and you can go sit down with them and chat.  Oftentimes there's somebody sitting out on the patio trying to get a little peace and quiet themselves. So you can find a situation that's less anxiety provoking.  With social anxiety, a lot of times people are afraid that they're going to offend someone. And these days it is so easy to offend people. So what I tell my clients and my kids and what I try to remember myself is before I speak or when I'm talking to people, if what I'm saying is true, helpful, important, necessary and kind, then there's probably a good chance I won't offend them. Look on your social media. Look at the comments people leave on other people's posts and stuff and see if they meet these criteria, true, helpful, important, necessary and kind. 90% of the time the answer is no. Well, I won't say that much, about 50% of the time. The answer is no. There's a lot of times people will just say nasty stuff that really didn't need to be said. And that can be offensive. But if you practice and really focus on making sure what you say is true, helpful, important, necessary and kind, and if you're following me that spells out think, then the chances that you're going to offend somebody are greatly reduced. If the person still gets offended, it's probably more about them because you weren't trying to offend them. You weren't trying to be hurtful. You were trying to be helpful and kind. Therefore, it may be more about their stuff, whether they have an issue with you or they have an issue with something else that's going on and you just happen to be kind of in the way. It's more about them. You can't control how they react to things. It's their responsibility. If you're being nice and they take it the wrong way and they get offended, that's their perception and they need to work on that. The other bonus that I'll tell you to take away is something I got from Dr. Seuss, and I love it, something he says about judgment. Those who mind don't matter and those who matter don't mind.  That's just the way humans are.  The people who matter to you don't mind if you make a mistake. Don't mind if you're not perfect. They actually probably embrace all of your imperfections.  That's just, it's not possible to have everybody like you. So remember the wise words of Dr. Seuss. Those who mind don't matter and those who matter don't mind. If you like this podcast, subscribe on your favorite podcast app. Join our Facebook group at docsknipes.com slash Facebook or join our community and access additional resources at docsknipes.com. Thanks for tuning into Happiness Isn't Brain Surgery with Doc Snipes. Our mission is to make practical tools for living the happiest life, affordable and accessible to everyone. We record the podcast during a Facebook live broadcast each week. Join us free at docsknipes.com slash Facebook or subscribe to the podcast on your favorite podcast player. And remember docsknipes.com has even more resources, members only videos, handouts and workbooks to help you apply what you learn. If you like this podcast and wanna support the work we are doing, for as little as 399 per month, you can become a supporter at docsknipes.com slash join. Again, thank you for joining us and let us know how we can help you.


Ancillary is one of three pilot communities for village tourism, scheduled to undergo upgrades of the waterfront and front street. The upgrades form part of the Village Tourism Community Infrastructure Improvement Component. A check presentation of funds for the initiative was held in the village Thursday 15th October 2020. Financing for the first Village Tourism Hotel on the island has been secured. This project will form part of the transformation of Ancillary, backed by the Republic of China-Taiwan, to the tune of US $1,865,671 under the bilateral cooperation agreement grant for 2020. Taiwanese Ambassador His Excellency Peter Shen handed over a check for the sum, a two-tourism minister and parliamentary representative for the area, Hon. Dominic Fede, during a ceremony held at the waterfront of the fishing village on Thursday 15th October 2020. Ancillary will have the opportunity to host the first Village Tourism Hotel right in the location where the police station building is. That's component number one of the project. There will be ten bedrooms and we will put this building up to tender to any resident who would like to run this facility as a small business. The rental fees goes to the village council and so there's an opportunity for anybody in Ancillary who can come up with a brilliant business proposal to run that facility as your very own business. This will no doubt create several jobs for the community. It will bring about a tremendous economic spinoff. Our shops, our bars, our restaurants are going to be better patronized by our international clientele. The components of Ancillary's transformation consist of village square redevelopment, rehabilitation of the fish fry building and a new restaurant to be constructed at the site of the old community centre on the waterfront. The Ministry of Infrastructure, they have rendered this building structurally unsound and because the structure is compromised, they have actually recommended it for demolition and so by next week, we should be rolling in with the excavator and other equipment to demolish this building and let the transformation of a great restaurant begin. And on the waterfront here, another business opportunity for another business person in Ancillary to come and to put a business proposal forward to the village council working with the Ministry of Tourism, the Ancillary Development Foundation and we will together determine who has the best ideas to run a proper restaurant facility on the waterfront. Speaking in his capacity and on behalf of the Prime Minister, Hon. Alan Shasne, Hon. Guy Joseph expressed thanks to Taiwan for backing the transformation of Ancillary. I must take the opportunity to say special thanks to the government and people of the Republic of China, Taiwan for such a generous contribution in these difficult times. Further, when we came into government, we sat with the Taiwanese Embassy and we said while we love the tea canal projects and we love the food parks and we love the concrete roads, we also want projects that would be revenue generating, that would be job creating not just in the short term but in the long term for the people of St. Louis and they readily accepted. Ancillary is one of three communities on island receiving attention under the Village Tourism Project. Permanent Secretary in the Ministry of Tourism, Donald Invite, says work to upgrade Ancillary, Sufra and Grosselay are part of efforts to refine St. Lucia's tourism product pending full recovery of global tourism. Village Tourism Initiative is a vehicle that the government will use to build local inclusion. Too long we have been hearing from community residents that it's experts who own accommodation properties. We want to ensure that you two get your piece of the pie. We want you to become self-sufficient. We want you to assist us in improving the linkages. We need to use the downtime that we have right now because of COVID to get ready so that when the doors finally open, we will have our fair, graceful and stately position to announce that St. Lucia is prepared, that Ancillary is prepared. The transformation projects for Ancillary are scheduled for completion in February 2021.


Hi, welcome to the session. Let's discuss the question. Find the value of a, b, c and d from the equation.  Here we will use the property that corresponding elements of equal matrices are equal. Let's start the solution by using the key idea that is as the given matrices are equal, therefore their corresponding elements must be equal.  Let us take it as number 1 equation. Again 2a plus c is equal to 5. Let us take it as number 2 equation. Minus v is equal to 0. Let us take it as third equation and again 3c plus d is equal to 13. Let us take it as fourth equation. Now we will solve all these equations on subtracting 1 from 3. We get 2a minus b minus a minus b is equal to 0 plus 1 which implies a is equal to 1. Now put the value of a a in 1 we get 1 minus 1 minus b is equal to minus 1 which implies v is equal to 2. Now put the value of a we get 2 1 plus c is equal to 5 which implies c is equal to 3. Again put the value of in 4 we get plus d is equal to 13 which implies 9 plus d is equal to 13 that is d is equal to 4. Hence a is equal to 1, b is equal to 2, c is equal to 3 and d is equal to 4 is our answer. Hope you have enjoyed the session. Okay and bye.