Who remembers what it stands for? About half of you. All right. So the WISC Initiative is Web Services and Context Core Initiative, which, in its original conception, add a number of moving parts to help rebuild Drupal as a more modern web services-based framework and do a lot of cool stuff with that. First of all, we wanted to have a centralized plugin system. So currently, in Drupal, every system that has a swappable component does it differently. Menu callbacks, field formatters, text formats, image styles, they all do something completely different. And we want to unify that into a single, solid, object-oriented model. Those of you who've seen tools plugins before know how nice it is to have a single plugin concept you can work with. Same idea. We actually drew a lot of inspiration from the way C-Tools works. And these can be provided by modules or by themes. Second part that we wanted to do was context-sensitive output. What does that mean? There's a lot of information in HTTP on the web that Drupal completely ignores right now. And we throw stuff into Globals, which is how PHP naturally works, which is a very bad thing. And we want to take that and encapsulate it into a single channel and get rid of global user, get rid of global language, handle that in a much better way that lets us carve out parts of the request response system so that we can swap them around more easily. We can eliminate globals. We can unit test them. Again, architectural-level refactoring. And then with that refactoring in place, we can now build Drupal as a real rest system. Right now, when a request comes into Drupal, we decide what page callback is going to handle it based on the path. And that's it. And that is a 10th of what HTTP actually offers. There's so much more there. There's different methods, get and post. There's different MIME types. So you should be able to respond differently to a request for text HTML, or application JSON, or SVG, or whatever other format. Path, domain, there's a lot of information in there, the scheme, HTTP versus HTTPS. The result information, we completely ignore right now. And if we want Drupal to be a forward-looking, next generation platform for doing web services, for serving up data to mobile applications, then we need to be able to look at the entire world that we're given, not just the smallest sliver of it. And then once we've got that richer capability in place with all of these tools, then we build a new unified layout system. Drupal right now has three layout systems. There's the core block system, which everyone hates. There's panels, which everyone hates the UI for. And there's the context module, which is really just the block module on steroids, and so it's not much better. And a lot of people hate that, too. So instead, with all this new power, I think I've just offended everyone who's used any of those. So with that more robust framework underneath, rebuild our rendering model along the lines of what panels does. But don't have to hack around all the things the core does wrong so that 2 thirds of that code and 2 thirds of that complexity just goes away. And then take the time to really think through a good UI on top of it. And this model of rendering then lets us have pull-based layouts. So who's worked with panels, a fair bit in here? OK. That's a good thing. That's freaking awesome. Yes. So with panels, you don't have inter-page body and then you wrap random stuff around it. Instead, you have a request and you have a layout and you have content panes inside it. And if you use many panels, those content panes can be layouts inside those. That model is more powerful. That model is a better model for building a page than what Core does now. And by baking that in at a lower level, you'll be able to extend that, clean it up, and then leverage things like ESI, EdgeSide Includes. Who's familiar with those? OK. For those not familiar with it, EdgeSide Includes are essentially doing regular expression replacement of your page in varnish. So you cache most of an HTML page in varnish.  So I'm going to send a request back to Drupal or whatever for just that one little sliver. Get that back, put it into the page, and then print that. And that's much, much faster than rebuilding the entire page for every authenticated user. And right now, it's possible in Drupal, but not easy. There are a lot of edge cases where things break. But by using a strict pull-based model, we're able to build that kind of functionality in at a much lower level. That means that blog caching and page caching become the same thing. That means authenticated users are no longer inherently 100 times slower than anonymous users and all that kind of stuff. So that's what we were trying to do. That's what the WISC initiative set out to try and accomplish. And yeah, that's a lot. We knew it was a lot, but it's a big task. So from about March of last year, shortly after DrupalCon Chicago and the initiative started, through November or so, we looked at this problem, tried to think through a lot of the hard parts, had some false starts. And one of the things we looked at was, you know what, we are not the only project in the world that's tried to solve this. So let's see if there's anyone else out there that we can borrow ideas from or a little bit of code from. And the first thing we looked at was the HTTP handling. The superglobals in PHP are a bad idea, period. What's better? Well, there are a couple of other projects that have built better abstractions for that information. And okay, can we use one of those? So a couple of people from the WISC initiative looked at Symphony 2 and Zen Framework last July or so. And both of which had HTTP components. And we said, all right, between the two of these, Symphony's looks better for various reasons. So let's just start using that. And shortly after DrupalCon London, we put the Symphony HTTP library into core. I said, all right, this is our abstraction there. We don't need to worry about re-implementing that part. Now let's move on. We moved on and tried to build the rest of the system that we're talking about here. And kept running into a wall of, I can't wrap my head around this. I haven't been talking to you for the past year and a half. I have no idea what you're talking about. I just does not make sense. And that's a problem, both from a just practical standpoint and also from technical standpoint. Because it's kind of hard to review a patch if you don't understand its context. No pun intended. Yeah, no pun intended. Then around late November, early December of last year, we'd hit a wall with what we were trying to build called the Context API that was going nowhere. And so I started talking to some of the Symphony developers and realized everything we're trying to build architecturally, they've already done. And they've done it in a way that makes it possible for us to borrow just the pieces we want and not pull in the entirety of Symphony. So why are we wasting our time? So it did a proof of concept and threw that out. A lot more discussion.   And just try to think that, sit down and think through just how far are we gonna go with this thing? Just how much, do we want to leverage Symphony? How much of this architectural change can we actually swallow? And our conclusion was, if Symphony does it, when we can use Symphony, let's use it. It's open source, go for it. And the fact that Fabien Pontoncier, the project lead for Symphony, was willing to fly in to help us sort through some of these issues and come here for the conference, helped a lot. Symphony's community from everything I've seen. Yeah, Fabien, Fabien, are you in here? Yes, I'm in here. Okay. Right here. I'm in here, I'm in here. Yeah, they, yes. Yeah, my interactions with the Symphony community to date have all been very positive. You know that feeling when you walk into Drupal and you get that kind of group hug, let me help you feeling? That's what I've gotten from the Symphony people too. Except no hugs. Yeah, they're not as huggy as we are, but they're just as friendly. So, you know, great, wonderful, and there's still an awful lot here. There's still an awful lot we're trying to deal with. Make Drupal rest-centric and web services and a new layout system and this and that, just logistically and structurally, a lot to swallow. So what we decided to do was say, all right, fork it. And we now have two core initiatives, web services, which we're still calling Whiskey because it's a great pun, because I don't actually drink, and new blocks and layout everywhere initiative. So the new, you know, Whiskey 2.0, Whiskey TNG initiative. Yeah. Yeah. Is Symphony has a really solid HTTP handling and routing system. We're gonna use that. So HTTP Foundation Library out of Symphony, the HTTP kernel on their routing system. We're just gonna adopt that. And what currently is the menu system and delivery callbacks morphs into that system, into that model. And we're gonna try and follow that architecture as closely as we can. Patch for that is in progress in the issue queue. Currently I'm fighting with Testbot about it, but that should hopefully be landing in the not too distant future. And what this lets us do is approach the web from a Rust-first perspective. That is, HTML pages are nothing special. Currently in Drupal 7, everything in the architecture assumes we're returning an entire HTML page, except for the couple of edge cases or we're not and whatever. Turn that around. Everything we're returning is an HTTP response to an incoming request. Occasionally that will be a complete HTML page. But it could also be JSON, SVG, all these other fun things. We want to be able to handle get requests and post requests and put requests separately from each other. We want to be able to build a mobile app or a desktop app that can talk to Drupal without ever going through the admin interface and still do everything. We want to be able to do that, whereas right now it's really hard to do. And then to really, who was at the last core conversation earlier? All right, so Dixon, Dick Olson was talking about doing deployment. We need some kind of standard serialization formats. I agree entirely. He and I have talked about that. We want to be able to say, for any given entity, here's how it's exposed through web services and you can save it and read it and write back and forth and have Drupal Sikes talk to each other over HTTP without human interaction. We want to be able to do that in a standard form. And what that lets us do is deployment, is content sharing, is offering data to mobile devices, is all kinds of other fun things that are going to be not edge cases like they've been for the past five, seven years, but the norm, which is what they're going to be in about four to seven years. We want to get there before the rest of the market does and it's gonna be a race, but I think we can pull it off. Okay, so what about this fancy layout panels and core stuff? What's happening with that? That is technically no longer my responsibility. So I'm gonna hand it off now to our newest initiative lead, Chris Vanderwater, ClipsGC. So I'll continue on because we've got a few more slides here, but real quick just kind of introduce myself a little bit if you aren't familiar with who I am. I'm a SeaTools co-maintainer. Panels and page manager in that whole world matters to me really, really a lot. So to be here doing this for core now is very important to me because we need to do this right so that we can continue doing the sort of things that we're used to doing in panels, but hopefully just really nail it down in a user-friendly way. So kind of carrying that idea forward. We have the blocks and layouts everywhere initiative, which is what I'm running at this point. And we're gonna kind of open this up for questions here real shortly. So I'm sure there will be a lot of questions concerning these things, but just to give you kind of an idea, why did we do this new initiative? Larry explained a lot of it, but in short blocks just aren't up to the task. Many of the existing solutions replace or significantly change blocks behavior. Panels outright replaces it. And so it's pretty obvious at this point that core could really benefit from a stronger block solution. We're doing so many things from a contextual standpoint that it becomes a real question as to where does page content end and block content begin? And we're just going to kind of make a really hard dividing line here that there's no such thing as page content. It's just blocks. So in short, what does that solution look like? Wow, did I end up with? So Prezi totally ate this in the middle of the night, so sorry. So I'm just gonna skip to the next steps because I think I did that slide anyway. We have a plugin system that we've already built and it's existing inside of the repository that I'm working on for the whole blocks and layouts initiative. And that's actually gonna be really powerful for us in the long term. It's probably one of the first patches that's gonna land. It's gonna land largely by itself. And the second it's there, we could open up core to do a whole bunch of other things that are totally outside of either one of our initiative but people could really leverage it to start making all sorts of things within the system pluggable. We're gonna redefine the block system and I've already got a pretty good definition on that going, so if you wanna see it and I'm really hoping that people do want to see it, I would love to start showing that off and getting people on board with where it's going, why it's going that direction and start kind of poking holes in the edge cases of where it might fall apart. We're gonna have to build a responder to the get method on text HTML requests, right? So this just happens to be a get on text HTML. Yeah, well, we basically need to build panels in right there and what that ends up looking in core is really up for debate still at this point. But I've got some pretty good ideas about what I want to see there and I think we just need to spend a bit more time on the analysis side and the design side to really nail down what that's gonna be and on that note, there's a bot directly after this session 215 in room 206 to discuss user experience for that. So if you're a JavaScript person or a UX person or you're just interested and want to see what gets said. We need you. Yes, please come. 206, I think it's on the bot list though. Once we have the layout system built, we're gonna have to start transitioning the existing themes to it and we have to start playing really nice with like the mobile initiative and things like that at this point and figuring out how to build mobile layout plugins which I'm actually really, really stoked about. I think we're gonna find some really awesome synergies sitting right there that Drupal has just not been able to leverage up until this point. And then the last thing I put up here is contextual plugins. The order in which things are happening within the whiskey sprint right now has led me to believe that I'm gonna have to hold off on that for a while. I changed my mind about that sometime in the last couple hours so the slide hasn't changed and we can kind of discuss that if we like. But Fabien suggested a specific use case there that's gonna require a few more symphony components and I'm gonna really encourage us to just embrace it and run with it. Rob, Loach, are you in here? Yeah, there he is. And I'm just gonna elect Rob to help us make that happen. So. He volunteered himself yesterday at a sprint so you're kind of stuck with it now, Rob. Congratulations. Congrats. So. Those are our slides and I think we're not even quite at the halfway point so we really wanna open this up for discussion but I wanna be clear about a couple of things before we do that. Like, technical questions, totally go for it. We don't want to divulge, we don't wanna get mired in a bike shed about what the architecture and things like that look like. We're happy to bike shed about that but we don't want to do that in this forum. And so, you know, if you have some specific questions that could be kind of bike shetty, find us, we'll talk. But we wanna open this up because the general perception is that there's a lot of fear and given the turnout in this room, it's either fear or excitement or a bit of both. So. How many are up there? Yeah. That's a good question. How many people here are more scared than excited? How many people are more excited than scared? Wow. I like that response. All right, so there's a mic. If you have questions, we are here to answer them at this point. No. No. Eaton is not allowed to be ambivalent. Really? I'm okay with Eaton being ambivalent. You mentioned the menu system and how Symphony will impact that. Can you clarify the difference between the menu system as in hook menu and the menu system as in the navigation for a site that might be defined through primary menu, secondary, et cetera? Yeah. So menu system as of Drupal 7 does about five things and that's part of the problem. The part of the menu system that we are dealing with is routing that is request comes in, what piece of code is responsible for dealing with it? And our current plan as of about 24 hours ago is hook menu gets replaced with a new hook where instead of defining routes as path indexed arrays, you're returning an array of symphony route objects which are essentially the same concept as each of those items in hook menu but offer a lot more flexibility to handle method and accept header and so forth. And then a new system that's similar to the current menu router table behind the scenes for lookups and so forth but again with the symphony wrappers around it. Menu links, we're not dealing with. Tabs that are also tied into the menu system, local actions tied into the menu system. I don't really know what's gonna happen with those. At the very least, we're pulling routing away from it. If someone else would like to take point on detangling the rest of that, talk to Peter Rowlanden, who's the menu system maintainer, he's sitting right over here. And he's hiding. Yeah, really quickly on that and correct me if I'm wrong on this because I walked in on the tail end of the sprint yesterday because I had some training duties but we're assigning machine names to those things so we should actually be able to make those portable throughout the system even though they aren't necessarily configured. That's a good point. One of the big differences between the way Drupal traditionally is handled paths and the way symphony handles paths is we key our route information based on path. This doesn't work if we want to be able to have a get request and a post request and a JSON request go to different things on the same path and we want that. So instead, every route will be identified by a machine name. If you're worried about coming up with machine names, it's no harder than coming up with the menu callback function name now. Probably first cut, they'll all be the same. And then that's what we'll actually look up on when routing. It also means that when generating a link yourself, you will not be generating a link to node slash dot dollar sign knit. You will generate a link to the route item node underscore page with argument node ID. If that happens to have been moved by someone to a different path, everything keeps working which means you can reorganize your UI. You can reorganize your admin if you want to. You can put node ad pages in a half dozen different places and everything still works. So this is the whole point of moving everything to the block system because if the node ad component is an actual block and it's irrelevant what page it shows up on and you can inject into it the information it needs to know like, hey, where do you want to redirect to after someone finishes with this? Then it becomes really a plastic environment that we can completely rearrange the administrative system at that point. You can even put node ad pages on the display of some other node page and start doing crazy things like pre-filling node references to the node that you're creating it from or something like that. Not that Chris has ever done that before.  But you know, the mic's on, it's just really low. I can almost talk that loud. You want to come over and use the mic here? Yeah. We'll just stand together. Yeah, we'll just sit down. Okay, so yeah, but that's the whole idea of moving everything to blocks is we'll have a consistent layer that anybody can write output for anything for. And so there's gonna be a little bit of learning there but that frankly is probably the biggest change of anything that's being proposed from what a module maintainer's going to have to learn. And my objective thus far has been to make that new, because it's a class, it's an object. To make that new object system really dead simple and hopefully you'll learn it once and go wow, that's really easy. And instead of there being three or four different ways of handling similar things like Drupal does now, there's one and it works and it does all of them, thank you. Next question. Forgive me if I'm mixing up initiatives a little bit here but back when some of this context idea was called Butler, I remember one of the hopes was that we could cut down on bootstrap time by loading things a little bit more lazily. Is that still kind of part of the goal? Sort of. We would like to see that happen but it doesn't fall directly into either of our initiatives. So all the components to help make it happen are being committed to core and there's kind of an unofficial initiative to make the bootstrap lighter at this point. So we would love to see people get involved and do that but we really like, it's outside the scope of what we can do at this point. The way to make bootstrap lighter and less error prone is rather than initializing everything linearly, make each of these subsystems an object and initialize them out of a dependency injection container like the one we're gonna be borrowing from Symphony and then when you start using something it will initialize what it needs to and initialize the five other things it needs to work and that'll just kind of happen. Once we can do that, the process of bootstrap gets thinner. We're not directly working on that as part of our initiatives. If you would like to do that, please.  Please do so. The stuff that Rob Losch is gonna be doing will tie into that. I don't believe you're planning to do that directly. So Rob, we're just putting everything on you. So like the things that we're volunteering Rob for are the wrapper around being able to do that but none of us intend on actually going through and doing that, we're gonna use it for something else but it could easily do double duty. And if you would like to work on that, let us know, we're happy to help bootstrap you on that. Yeah, we'll throw all the people who are interested in doing that together. Yeah. Next. I have a question regarding the caching of a page that consists of several components or blocks or whatever you call it, several parts. So varnish can cache three parts of that and the other three parts are dynamic. So does that mean that varnish has to make as three requests to Drupal and Drupal has to bootstrap three times to deliver that three other dynamic blocks? Do we get some overhead from that? Yes, however, because Drupal is doing less on each of those requests, it's not the full weight of an entire Drupal page process. Also, those individual blocks can be cached independently. So if the page is mostly static and this block varies based on the user and only the user, then first time a user comes to the site, page is already cached, render that block, cache that separately. Second request, you get that other page, oh, and it's the same block put in, varnish doesn't have to hit Drupal a second time. And if you don't have varnish, symphony includes a PHP implementation of what varnish does and at this point my take on it is, let's use that, our page cache just becomes the same thing. So varnish style block caching becomes our primary caching mechanism for anything. Not trying to put your fearsities? Yes, right, but that's why we wanted to do all the bootstrapping things, but we don't have time to do that, which is why we're standing here saying, you all should really get together and do this whole bootstrapping optimization. Yeah, because we're not going to and your fears are legitimate, we're going to have some really great caching things that we'll end up doing to try and mitigate some of those issues, but what you're supposing could certainly happen. Okay. Hi, I have a question for each half. First of all for the HTTP sensitive routing question. Can an HTTP request be identified as one requiring being rerouted to a non-blocking IO backend endpoint or web socket or long pulling endpoint? In the use case would be a chat server in a pane or something like that. In other words, if we're going to privilege backend, can we also detect by the same method HTTP request that require asynchronous or non-blocking IO? So web sockets is part of what you're talking about and web sockets at the moment require a lot more work than core can handle on its own. There has been some discussion of how we want to support those. Really, to support web sockets, you have to have a long running process on the server. You can't have a, like PHP naturally does where it starts a request, does something and shuts down. There is a alpha version of a PHP demonized web socket responder that I actually ran into the developer of that at a conference in London, Ontario last year at random. So we may look into how can we leverage that. I'm not sure. The other option there is server sent events. I don't know enough about them to say what we can do there. I would definitely like to support them if we can. I just don't know yet what all the pieces are there. At minimum, I'd like to be able to do the stuff to core necessary to make it possible to do that in contrib. A lot of that being less globals. So a lot of things become a lot easier when we have fewer globals and more loose coupling because then you can have the entity system loadup inside a separate PHP app and do its thing. And again, that specific thing is not something we're working on, but that kind of architectural refactoring is a good thing to happen for that reason. Okay, thanks. And will in the panes, in the layout part, will there be tools in the panel panes so that the developer can easily set up client page elements that could call such? Let's suppose I had a chat server, a Node.js chat server using Sokiraio. So will there be tools so that I can easily program a client to one of those in a pane so I could easily set up a live chat in a pane or something like that? Okay, so the block system as we're defining it, like in this sort of an instance, if I'm understanding where you're going with that, you would end up building a custom block whose sole purpose is to do that. The second you do that, it's available to you in a pane to place wherever you want. I didn't quite hear the lesson. Once you're done building that block, you can, it falls straight into the tool set to just be placed wherever you want. Okay, thank you very much. Not a problem. My question is how, since we're going to start using the HTTP kernel component, how much of it are we gonna be using? Because as I understand it, that component also defines kind of the shell for Symphony's bundle system. So is any of that gonna be used as well? And if so, where does that end and where does the module system begin? So bundles are actually not part of HTTP kernel. Bundles are something, and Fabian can correct me if I'm speaking here, bundles are something that are handled and defined by the Symphony. What's that? Okay, so the Symphony bundles, we're not looking to use at the moment. Modules may change somewhat. We are pulling in the event handling system from Symphony that is similar to hooks in terms of the purpose it serves. We are not at the moment looking to replace all hooks with event handlers. Ask me again in Drupal 10. Yeah, that's like next week, right? Right. Yeah, so at the moment, it does not look like, Symphony bundles, you'll just be able to pull those and drop those into Drupal. If someone else can figure out how to make that work, more power to you, but I'm not really focused on that at this point. Okay. And ladies and gentlemen, Jeff Eaton. Yeah, I'm ready. I'm ready. I'm ready. I'm ready. I'm ready. I'm ready. Excuse me. So this isn't necessarily directly related to the stuff you're working on, but it seems like there's enough deep rearchitecture going on in what you're working on that it probably, I think at least relates. At what point do you think it may be necessary to start reexamining how we do our version to version site upgrade path? I mean, because the kind of stuff that you're describing, we have to start thinking not just about data migration but whether or not it's even possible to preserve layouts using any kind of automated migration process. Yeah, so I've been thinking about that a lot, right? Because I mean, how do you take Drupal 7, like just vanilla Drupal 7 and toss it into a layout plugin that hopefully, you know, I mean, if we're talking like Bartik to Bartik, I think I can probably make a pretty educated guess because Drupal 7's so limited in that regard, like you're not gonna be using the same block more than once. And if you are, if you're using context module, well, I don't actually support that upgrade path because I'm core. So, you know, there are some things like that where the answers aren't easy just yet, but I think that given just exactly how limited blocks in Drupal 7 and below are, we may get kind of a pass on particularly placing them in layout plugins. But there's this whole additional notion of like we have all this data that resides in the database and for example, I don't have a database table underlying block positioning or any of that, it's all CMI config management and that becomes a really legitimate question now. Now I have to figure out how to take tables that exist in Drupal 7 for a table that I have no need for anymore and migrate that data into CMI in such a way that it continues to work with those layouts that I said might be easy and like, there are a lot of hard questions there. Well, it sounds like that one's Greg Dunlap's problem for just migrating tables to CMI files. Because he said it was your problem. So, Greg, I don't think is in here. So yeah, it's Greg's problem. Also, for those migrating from panels in Drupal 7 or context module in Drupal 7, that's a great place for a contrib module to do awesome things and make someone very, very popular and famous. Just like happened with converting CCK to core fields in 7. If that is something that you're interested in, you will have a lot of people very happy if you work on that. But we don't have the bandwidth to do so, yeah. Next. So I was wondering if you could talk a bit about the kind of the multi-rendering to JSON or to Drupal render now. Is Symphony providing that system already or is that something that you guys already kind of thought through completely or is it still open? A little of each. So Symphony provides, or the Symphony components that we're leveraging provide the framework by which that logic is done and a couple of default implementations that implement it. We're going to be using that framework for how it gets done and some of the provided implementations. Without going into too much technical detail, for instance, the out-of-the-box default implementation for matching a path pattern to a controller, which is the thing that page callbacks essentially. The default implementation of that uses regular expressions and doesn't scale to the easily 5,600 routes that a Drupal site's going to have. That's okay. We're going to use the same interface and build something behind it that will probably look an awful lot like the menu router table does now but with a couple of extra columns in it. We haven't implemented that yet, but at a hand-wavy level, that's kind of what we're doing there. So the Symphony workflow with some of the Symphony code and some of our own code backing it. But as far as JSON versus HTTP, is each handler going to be responsible for returning a JSON object or is it going to be like standard, you just pass a standard object and it renders it as JSON or renders it as HTML? So that'll be two different controllers. So if a request comes in for get node one type text HTML, that routes to this controller over here and that does all the layout page stuff. If it comes in as get node one type JSON, it routes to this controller over here which is a different object and it loads that node object, actually takes the node object it's given, renders it into JSON in whatever standard format we decide to use there and returns that. If you want to render a node as SVG, you hook up another controller at get node one type SVG and you do whatever logic you're going to do there. Okay, thanks. So panels. I'm one of those people that tried it in Drupal 5 instead of it was way too much trouble was worth in Drupal 6, there were other options. So those of us who have workflows that use context and display suite and theme tricks instead, what should we be doing now to prepare for the future? Should we all switch to panels for seven immediately? I hear it's better and faster, but. Yeah, you should go learn panels. Earl Miles is giving a session tomorrow on panels. It is opposite my session on architectural trade-offs. I'm okay if you go see Earl instead of me. But if you're not going to see Earl, I expect you in my session. So the other key part to that is, one of the needs we try to meet is for the clients who want to have content editors have some basic layout choices, right? And the panel's UI is just entirely unsuitable for that. Display suite can be tamed to make that possible. Is the new system gonna provide options for non-technical page layout choices? There's a buff right after this one talking about that question. Yeah, very questioned, yeah. But, what's that? Oh, there's Earl. Yeah, so go to Earl's session tomorrow. He'll talk about that for what you can do with panels today. Yeah, so. Thanks, Earl. And as a really, as an additional answer to that, yes, the objective within Core would be to give something that is user-friendly enough that we can give content editors or whoever the ability to actually do that sort of stuff. Like, I don't want you shutting clients out of this. I want to build a system strong enough to give to clients. And I'm assuming Earl's gonna show this tomorrow, but the new panel's in-place editor work that went in in the last week is absolutely amazing. And I mean, Matt Cheney gave me a demo of it yesterday. And if you have not seen this, you need to go see this. Like, hunt these people down and find them. In a good way. Yeah, in a good way. I'm curious about the relationship between your two initiatives, now that they've split. Specifically, I'm thinking kind of about restfulness and with the kind of standard web framework rest system, you throw .json on there, you throw .html on there, you get different representations of the same resource, basically. And it seems like here, a little bit, maybe over-generizing that we have, the services initiative is everything but HTML and the kind of panels and blocks everywhere is the HTML representation-specific questions. And so I'm wondering, will that restful principle kind of carry on on the HTML side? Are we still dealing with entities as the restful resource where we can, with the same URL as the .json objects or do we have kind of HTML over here and .json different? Block pan. Yeah, so yeah. There is some gray area between the initiatives. That's why we are in constant contact. Part of the idea there is in order to support every block can do ESI, that also means every block gets its own path. So when you hit node slash five. And it's not just every block, it's every instance of every block gets its own path. So when you hit node slash five, there are internal sub requests that get fired to something like system slash block slash node block five. And to system slash block slash user block two. And so forth. And whether that sub request happens within a single PHP process in varnish or completely from the browser using backbone.js or something like that, is should be irrelevant to a person building a page. So a person writing a new block. So that's, the rest concept permeates the entire layout system. We just need a UI on top of it that makes that understandable to people who do not know what ESI is. And we're working on it. And also to clarify a few points on that. And we're still arguing about this. So Larry may disagree to a certain extent. But when I think of the web services side of things, I don't want to make the assumption that when you ask for node one as application JSON, you wanna serialize node back. Like that's an assumption that I think is not good to make. And so I think there needs to be some level of user interface there that can actually dictate what you get back when you ask for node one as application JSON. You may want something completely different there. You, you know, depending upon the app that you're writing or whatever, you could have very different, you know, foundational needs or, you know, you may end up writing a completely separate page to do those sorts of things, but. Or just a custom MIME type. You can have vendor specific MIME types that do, you know, node slash one MIME type, you know, vendor dot whatever it is you're doing and returns whatever it is you want. Details like that will get to when we start writing that part of it, I don't know. Yeah, but at that point, and I'm not saying this is a bad thing, but we're sort of like making up our own little niches in the web. Which might actually be sort of interesting in the long term. So I hope you'll figure out a follow up question. I won't get into the bike shed area. I'm actually the maintainer of the backbone module and that's kind of where my interest in all of this is coming from. But, you know, so when people look at a node page via HTML, are they actually calling the node resource? Or are they calling a page layout resource then? No, no, what they're, yeah. It'll be a page layout resource and that will dictate what actually gets pushed to the page. So you don't necessarily have to display a node on a node page if you don't want to. That's great, thanks. Yeah. And how much of the defaults are baked in and how much, you know, how easy it is to change those defaults is an open question. But we do want it, one of our goals is to make it possible to change every single path in Drupal without hacking core. Yeah, I would very much, I would feel like I had failed if the administrative pages weren't, you know, at it, let's add some new craft to this, you know. Glenn. So quick follow up question on block rendering. Would you foresee block rendering supporting different content types? So if you want to make a JSONP request for a block versus an ESI request. Or is that bike shedding? I think that, like if I can just answer that, I have no intention of seeing that happen. I think that that's probably a separate plug-in system and is where I see it slotting into the other side of the UI that we're still arguing over. Gotcha. And so on the routing side, I think one of the important tenants of restful routing seems to be like relating things with hyperlinks or hypermedia. Will there be, do you foresee a structured way of say relating the node one resource has a display at this resource or the node one resource can be edited at this URL? Is that, do you see a structured way? I think you can see that in the services module as it is now. It's not complete, but you know, you have create, read, update, delete, then you have targeted actions and relations. Do you see our routing system supporting that kind of metadata and linking? Whether that's in the routing system or not, I'm not entirely sure. That's probably the rendering layer that said, yes. Yeah, let's clarify the question. Are you asking whether the routing system knows what's on that page or are you asking whether, like, I could just put a note at it anywhere? I think I can actually clarify. So for those not more familiar with it, in rest theory for web services, there's the idea that at a given URI, URL is a resource. And when you request it, one of the things you get back, as along with the Data Athletic Resource, is references to other resources that are relevant. So if you get back just the raw version of a node, you also get back with it, and here's the URL to go to HTTP, put a new version of it. Here's the URL you go to HTTP delete that node, and various other things like that. I would very much like to see that. I don't think that's technically part of the routing, but I do want to see that, and that's a big part of the discussion about what sort of canonical format we want to have for serializing entities, because OData supports that, but has some licensing issues. JSON-LD supports that, and that one's quite interesting because it's used by Create.js. There are other formats, but yes, having that kind of restful linking, is something we want to do. Details, join the discussion on GDO, and let's figure that out. Cool, okay, yeah. Arguably it's analogous to local tasks too, and tabs, and arguably. What we do with local tasks is usually the kind of things that belong in that, but may or may not get done that way correctly. Yeah. What time does this end? Two. Okay, we have five minutes. Okay. Five minutes. So let's try to move fast. Yes, move fast. Okay, mine's somewhat related to Ethan's, I'm a tech ninja. I started the failed rest standards initiative thing that kind of got merged and stopped. Anyway, my question was like, so on a given request to a page, a page router says, okay, I'm gonna go get these blocks to fill in the page content. Are each of those actually separate rest requests within the page, or? Only if they need to be. Only if they need to be. Those are internal requests. So if you're operating in a single PHP process, then we create a fake request and render it and the system can handle that and the block is none the wiser. That's one of the things that we get from Symphony is it has that capability built in. If, whoops. If you instead have varnish in place, then that sub request logic happens in varnish and so Drupal gets hit several times and does a smaller task each time it's hit, that's not something that a block should know or care about the difference on. Yeah. Because you want basically a page requesting its own blocks to be exactly the same kind of request that you'd be getting for something else entirely going and requesting just a single block in whatever format it wants. Which does mean also that if you have a block and you're throwing something into a global and another block later you're pulling that global and reading it, that's going to break. Don't do that. You shouldn't be doing it already. Global's bad. Yeah. Yes. I will also note, Fabian just locked out. He is giving a session tomorrow on Symphony at one o'clock. I do recommend going to see that session. I apologize to whoever in the core conversation track that's opposite, but I do highly recommend going to see that session as well if you're interested in the symphony side of what we're doing. So I had one question for each of you. The first one's about layouts and regarding responsive design. So building themes, for example, currently you have theme regions for which you put blocks and then you have the content region and I've always thought that that's... Can you talk into the mic just a little bit? Right. So I've always thought that the theme regions and the blocks and all that was somewhat overkill given that we have panels and how will that all play together and how can you build layouts that will respond to different screen sizes, for example, will that all be baked in? Sure. So I think the notion of exactly how we get to responsive layouts is still one that needs to be investigated a little bit, but I don't foresee it being this really huge issue. If you are allowed to mix and match multiple layouts on a given page, which may actually be very viable since we're discussing essentially embedding layouts as like I wanted this two column layout as my header and I want this two column or four column layout as my footer and I'm just gonna reuse those on every page I ever override ever. We have to make sure that those respond within the same types, same screen sizes and things like that. So there are definitely some considerations there, not to put you off, but I have a lot bigger fish to fry just yet and so I'm really kind of relying on people who are already very deep into the responsive's initiative and things like that within Drupal 8 to hopefully come in and help make that happen once we get there. Because they'll have done a lot of that work already for the layouts that are, for the themes that are already in core and my objective will be to break those things down into layouts so hopefully there is no extra work, they just work, but we will cross that bridge when we get there. So to an extent responsive design is all in the markup and the CSS and nothing we're doing should force you to do markup and CSS a given way if anything it will allow you more flexibility to do markup and CSS the way you want to by just providing a new layout plugin. I guess one thing I was getting at is from a user experience side, what is really the difference to a new user between a theme region and a panel and a block and all these things so if those could be integrated as much as possible so you could. A lot of those ideas are going away, there won't be regions and themes, I fully intend on killing the page TPL and we will depend upon layouts. Okay and quickly the second question was about routing and URL aliases, secure pages, things like global redirect that right now have to build a bootstrap many times to redirect you around and how will the routing system handle things like that so if you wanna build a module that has a person who has publications and things like that so you don't have to define thousands of different URL aliases and define these pages as secure and how will that all out work? I'm not sure yet. URL aliases at least in the first cut are not going to radically change, at least I don't think they will. What may be possible, the big problem with bootstrapping right now is you need to do a full bootstrap before you can ever call a hook. So if there are things that we can set up to do without hooks then we might be able to push stuff earlier. At the moment though the kernel does happen not until full bootstrap. That goes back to the how can we collapse bootstrap and make it lighter weights question which is something we both want to see happen but it's technically out of our scope and we've got enough things to worry about as is. So yeah, I'd love to see that get lighter but we're not directly working on that yet. Sure. Okay and it's 201 so this is the last question. We'll be very fast. All right question is with ESI. You guys mentioned varnish and the backbone stuff like that. Have you guys thought about engine X or other things of that nature? Because engine X has server side includes. Right. And I see no reason why you shouldn't be able to do that sort of thing. There's also H includes which are another client side approach. In theory we should be able to pick and choose which of those we use. That would be an implementation detail that we haven't gotten to yet. Okay. But yeah, I don't want to hard code it to being varnish specific but that concept of render one piece and assemble it further down the line. We want to be as baked in as low as possible. All right. Thank you. Whatever the actual implementation is. Thank you all for coming.


Hey guys, it's Tilly and today I'm going to be doing a quick reading wrap up and then at the end of the video I'm going to be doing like a quick little like update on I guess like me and what I've been doing because I've been doing a lot and it's been a while since I've actually filmed a video so bear with me and until then enjoy listening about the books that I have read it recently. These guys are in no particular order um some of them I'll talk about a bit some of them I won't because I don't remember some of them and I did enjoy a lot of them and some of them I didn't enjoy as much so I will just do my best. First up we have Daisy Jones and The Six. This one is by Taylor Jenkins Reid and if you guys follow me in any other social media you'll know that I went through like the Taylor Jenkins Reid bandwagon and I read absolutely everything of hers after The Seven Husbands of Evelyn Hugo which is like an amazing book and you guys should definitely read it and I actually really enjoy Daisy Jones and The Six. I've seen a lot of mixed reviews about this book. I feel like people either love it or they hate it. I was someone who loved it. It might be because I listened to the audiobook of it and they have like a full cast of people being the characters and it was amazing but in saying that I did flick between the book and the actual audiobook and I loved it just so much. They follow Daisy Jones and The Six. They are a musical band and they're really famous and it follows the story of why they all broke up as well and their relationships and stuff between the characters and people that they know but it's really good and it's told in like a perspective of like a documentary I believe and it's just really really cool. This next book I actually read when I was on holiday and it turned out to be better than I thought.  Not me. And I picked up this one which is While You Were Reading. This one is by Allie Berg and Michelle Kalis. I just picked it up because it looked really cute and looked like a kind of reading book so I was down for that. It basically follows this lady who's called Beatrix and she's pretty much described as like what you would think a typical bookworm I guess would be. A bit messy, a bit clumsy, loves her reading, loves her coffee and that's why I kind of picked it up. I was like sounds like it's going to be one of those typical quirky quick reads and it was. I found that it was quite predictable in parts but it was also really really fun and I really liked the characters because they were very realistic and they were very funny which I really liked and I absolutely loved the most out this book was the literature that continuously was through it so the main character loves books and she I think wants to go into publishing but she's constantly mentioning books and it's just great because at the back of the book they do a whole list of books that were mentioned and it's just a great list so I had a lot of fun with this one. It's not exactly a favorite read but it was really enjoyable and it was like the perfect holiday read. This next one I actually read on the plane it is by an Australian author which is Tess Woods it's called Love and Other Battle. She has a few other books as well so check her out and support like Australian authors and things like that. This isn't my favorite one by her it was an interesting read and it deals with some heavy topics. It's told through different point of views I think from three generations so it's got quite an interesting point of view. The only problem that I had is that every time it's like a multiple point of view book I always want to read about one person instead of three so that kind of got me a little bit um but otherwise yeah it was it was alright. I smashed out some of the books in the Diviners series by Libba Bray and this was like really really damn good um so it's like a historical fiction setting with like a magical twist so I don't know if it's called like magical realism or whatnot but it was like that so it's like a combination of my two favorite things which is historical books and fantasy. It's been a little while to actually get into this series but I really enjoyed it now and the characters are just like amazing I loved it. The next book that I've got is one that I found that people absolutely love. When I went to the bookstore it basically sold as like the book club books that everyone wanted so I picked it up and I finally read it thinking that it would be one that is like kind of like Eleanor Oliphant one that everyone tends to love. Um that one is Normal People by Sally Rooney and I thought it was pretty average. I've had a plenty of arguments with people about this book not arguments but debates per se because I don't think it deserves the hype that it has whereas other people think it does. I think I guess people read the book differently which is a very fair call. I just didn't enjoy it that much. There's not really like much to say about this book. It's a very much character driven than plot driven story but it basically follows two characters um throughout their lives and um their past crossing over their lives I guess. I bought this next book when I was actually on my holiday because I haven't seen it in any of the Australian bookstores yet and when I got to Canada and I walked into a bookstore it was the first thing I saw and I just immediately picked it up. I didn't even really know what the book was about but everyone has been talking about it and rightfully so and that one is Red, White and a Royal Blue by Casey McQuiston. I probably didn't even talk about this one because like I said everybody has read this book and everybody is talking about it but basically it is wonderful. So for those two characters you have Alex and his mum is the president of the United States and he's like the older son and then also follows Henry who is the prince in England and they have this frenemies trope that happens and they go from friends to enemies to lovers and it's just really really great. The humor in this book is 10 out of 10. I really enjoyed it and I actually had some laugh out loud moments and I've already been part of this book around to multiple people but definitely it deserves the hype. Heart Stopper by Alice Ostman. So I read a few of Alice's books and they're really really great and I then picked up Heart Stopper. This is the first volume. It's a comic format so it's a really quick and easy read but it is really really cute, really sweet. It's about friendships, relationships and learning who you are. This next book is the one that I have read like I guess most recently except for the one that I'm currently reading which is The Queen of the Tealing by Erica Johansson and I am enjoying it so far but this one was like pretty effed up. That one is American Psycho. This one's by Brett Eason Ellis.    I picked up American Psycho thinking that I would handle this and I got like through maybe a quarter or a fifth of this book and it was like too messed up for me to continue on. I felt horrible reading this book.  I haven't watched the movie either but apparently the movie is like better than the book but this is just like it was just too much for me. It literally put me into such a dark mood when I started reading it. I had to just put it down like I didn't finish it, I don't even want to know what happens but this book was just too detailed and it was horrifying.  This one's by Marcus Zuzak and I actually annotated this copy as I went. I underlined quite a lot of like my favorite sentences from it and I kind of fell back in love with the story and it kind of makes me want to read all of Marcus Zuzak's books now which I definitely shouldn't do but most likely will do because why would I read the books on my TBR? Why can't I just read the books on my TBR? I think the book that pulled me the most out of my like latest reading slump was Aurora Rising. This one is by Jay Kristoff and Amy Kaufman. It's their new series that they're doing at Sci-Fi and it's epic and I really enjoyed it. Once again I've heard a few people have either loved it or they've hated it but I was one of those people that really enjoyed it. I won't say much about this one because once again I could probably get stuck talking about it for like 10 minutes but it's got really really great like cast in this and if you've read any of their other books you know that their characters are really really good, really realistic and just absolutely relatable and lovable. Quick mention to some other books that I read but also don't currently have here. I've either lent them out or I'm too lazy to actually find them. I'm a little book obsessed so my books span across like four different rooms now so it's hard to find books. It's hard to find them because I have no organization skills anymore. I read The Cool Prince by Holly Black, I read the second one as well. I read The Cool Prince and I gave it a pretty like average review which a few people were like, shark horror how could you do that? I think it's quite a predictable series but I am a little excited for the third book which I think is like Queen of Nothing or something. I think it's because I just want to know what happens and I've also kind of fell into this whole jude and cardin train and I really do ship them. I also read The Alchemist by Paulo Quello. I think that's how you pronounce his last name and that one was really different to what I usually read but I did enjoy it. I actually read that one in like four hours I think. I just sat down and like straight through the book. I liked the message that it kind of had like there were parts that I was a little unsure about and some parts that I was like that's really cool. So like the rating of it was quite like average but overall like I liked the message that the book sent I guess. I read Sadie by Courtney Summers. That book was an emotional roller coaster. I really liked it. I read it for the Dynx Jinx Glut YA book club and it deals with some heavy topics but like it was it was good. I actually liked it. A few people that I've talked to didn't enjoy it but I thought it just but I thought it was really well written and I liked the cast of characters as well.  I gave a very very low rating to a book that I picked up thinking it was a historical fiction which turned out to be a really shitty romance book. That one's called The Spell Book of Katrina Vantassel. A Story of Sleepy Hollow. That one's by Alyssa Palombo and I really liked the idea of picking up this fiction of a book that had a twist on like a sleepy hollow tale like The Headless Horseman and things like that. But yeah it turned out to be terrible so I gave that one two stars but I'd probably give it one if I look back at that. And one of the most amazing books that I've read so far this year was The Priory of the Orange Tree by Samantha Shannon. Basically read it. It has dragons in it which is like what more could you want. So there you guys have some of the books that I have recently read. I don't really know like the time frame of when I've read those books but I find that I'm actually reading more than I was at the start of the year which makes me very happy. So that is the wrap up part of my video and now I'm going to go on to the quick update version of me. I'm going to say quick but it's probably going to drag out to be super long but let's get started. So if you guys follow me on any social media you'll notice that I have been very very quiet. As of late I haven't really been posting anything especially on my Instagram which is where I'm most active.  I would always try to film videos and schedule posts and it just took up a lot of my time and I found that after I got a job at a bookstore as well I kind of started to like dislike reading books and doing bookish things. It became like a chore for me and in a way I guess my job was to do with books. So I just felt that I wasn't loving it as much as I used to. So now that I actually don't work at the bookstore anymore and I've taken a step back from it all I've decided to kind of step away from social media as well and go back to finding the roots of what I love about reading which is the actual stories and the characters. So I haven't been posting very much anymore but I'm not going to set myself any more like schedules to do more videos or to do more posts. I just kind of want to bring it back to what I actually really enjoy. So I'm going to try and be more active on my Instagram account but I'm definitely going to say that the quality is going to drop. I'm going to be doing things that I want to do. I'm not going to do photo shoot days that I used to do just to have content to push. I'm just going to post about books and talk about the books that I'm enjoying that I'm reading and things like that. I don't even know if I'll be doing a video any time again soon or if I will ever do a video again but I think I'm just going to do whatever I enjoy because I need to focus on my happiness and happiness comes from me reading my animals and spending time doing things outside of I guess forcing myself to stay on social media for book things.  I feel like for me a big part of my identity was this bookish stuff that I do but it's not anymore and I need to let that part of it go. I think that I'm going to take the most important things out of this and that is my joy for reading and the people that I've met through all this bookish stuff but I don't want to keep on forcing myself to do videos and social media just to kind of fit in with that group anymore. I have my friends and the people that I talk to and I'm so thankful for them and I will hopefully still be friends with everyone but I just won't be as active because it doesn't make me happy anymore and I just want to be happy. So I went on a very spontaneous trip over to Canada. I did two and a half weeks of camping and travelling over there which was amazing. I did the Outbird area and I actually went over there to go and meet someone. He is a very amazing person and when I recommended a book to him once, he immediately went and bought it and read it and it was amazing and I had the best time. There were so many animals over there and so many amazing things to see and I definitely want to go back over to Canada.  When I went to go work into the bookstore I realised that I don't think I want to have a job to do with books and that my passions really do just lie with my animals so I think I'm going to try and look into doing some sort of animal thing for the future but I'm still trying to figure everything out. I mean otherwise that's like really all that I've got for you guys.  Yay! So I will leave it there for now. If you guys do want to see anything else that I post, I recommend following me on Instagram. It's just Tilly and her books all one word and I will hopefully be posting more and hopefully being happy. Thank you guys for watching. If you have any books please recommend them to me because I'm in a real reading mood at the moment. I'm kind of not reading as much young adult as I used to so feel free to throw the recommendations from everywhere but please don't recommend me anything like American Psycho because that still has me creeped out. Bye from me and bye from Pippa. Pippa!


validating your own emotions, I've heard so many people in this week, this past week say, I feel so terrible, but that doesn't matter, because what's happening to my sisters and brothers is beyond worse than what's going on to me. My response to that is, your emotions are what Allah gave you, and your reality is what Allah gave you, and their reality is what Allah gave them, and it is very difficult to witness. Your reality is, though, Allah didn't ask you to erase your emotions.


Welcome to the session. Today's topic of the discussion is the Microwave Solid-State Devices. My name is Ajit Subhash Srinishi from the Electronics and Telecommunication Department in the Washington Institute of Technology. So what is the learning outcome of this today's session? At the end of the session, students will be able to describe the construction and working of the solid-state devices, such as the vector diode, pin diode and tunnel diode. So prerequisite, so what should knowledge you have before proceed further into this session is that you should have a basic knowledge of the semiconductors and you should have a knowledge of the p-n junction working and construction and the working of the p-n junction diode. So let's start with the vector diode. So the vector diode name itself suggests it is a variable reactance diode. So it is also called as a vericap. So vericap means variable capacitors. So in the vector diode is a p-n junction diode in which the capacitance is varied by the varying the changing the reverse bias voltage across it. So these are the different symbols for the vector diode. This is one of the symbols. This is one more symbol and most common symbol used is this one. So this arrow is showing the that means this this arrow is itself indicating the capacitance is varied by changing the voltage across it. So coming to the construction of the vector diode is that so it is a p-n junction diode and in the p-n junction diode if the material used for the semiconductor is the silicon it is used it is limited for the lower frequency but for the microbial frequency gallium arsenide is used. So as the gallium arsenide the mobility of the hole and electron is more as compared to the silicon. So for high frequency application gallium arsenide is used. So this is forming the p-n junction at this center and this is the molybdenum structure. So molybdenum is the metal. So this metal is connected to the p-type molybdenum stud. This is molybdenum stud at the anode side and this is molybdenum stud at the cathode side. So this is a positive side and this is a negative side. So p-side should be the upper and n-side should be the lower. So reason for using the molybdenum study is that it can have a better conductivity as compared to other and there is a better charge separation. So there is one more important fact you have to note in this vector diode is that the doping of the in the p-type and n-type semiconductor is a linear. So it is a less in the at the junction side. So it is a it is a less at this junction side and it is increases linearly at the end. So there will be more concentration at the end of the this vector diode. So this is about the structures of the vector diode. So vector diode is working in the reverse bias as you can see here. So the reverse bias is applied it will create the space charge region or the depletion region at the center and these are the mobile charges at the end of this too. So this mobile charges are separated by the depletion region and it is forming the capacitance which can be explained in the next slide as you can see here. So these are the mobile charges and we as we are changing the reverse bias across it. So this is the p side and this is the whole is the majority carriers and this is the n side is the electron is the majority carriers here. So when reverse bias increased it also changes the capacitance. So it is modeled as a capacitance as you can see this is the junction capacitance or you can call it as a transition capacitance. So this is the characteristics of the vector diode. So this in this characteristics capacitance is plotted versus the reverse bias voltage. So as you can see this capacitance is inversely proportional to the reverse bias voltage. So this is a junction capacitance or transition capacitance and this is a reverse voltage and this is a breakdown voltage as you can see it is inversely proportional and this n value is dependent upon the how much the grading also how much you are doping the p-type n side if it is a linear doping if it is a strip a graded doping so that n value depend upon that. So this is obviously it is inversely proportional to it and C0 is the capacitance when there is a no bias is applied to it. So one more important aspect so you can note down here the capacitors is not linearly proportional it is somewhat exponential decrease in the capacitance as there is an increase in the reverse bias voltage. So this is about the vector diode characteristics. Now coming into the equivalent circuit of the vector diode so this is a junction capacitance during the reverse bias and this is a resistance reverse resistance and this is the resistance is called as a bulk itself it is a material resistance and this resistance is due to the reverse bias as reverse bias increases the resistance of the diode is also increases. So this is a reverse resistance and this is the inductance forward inductance so which you can place in the series with this reverse resistance. So this is the model of model of the vector diode. So very interesting facts as the vector diode can be used for the high frequency. So what do you think what is the limitation because of this inductor here think about it write down the paper what is the limitation of this series inductance as you can see this inductance and if there is a limitation write down that limitation and also justify that. So a vector diode application it is used as a automatic frequency controller it is used in the high frequency receiver also as the as the as the capacitors changes as it can be used as a variable tuner also in the tank circuits and it is used in the high frequency radios as a used as a frequency multiplier and it is also used at the band pass filters and it is also used at the harmonic generators that means by changing the frequency you can change the double frequency you can multiply the frequency three times you can multiply the frequency four times that is mean by the harmonic generator by using vector diode. So this is about the vector diode let us come into the pin diode so here pin diode here p p stand for the p type and n stand for the n type and i stands for the intrinsic layer. So this intrinsic layer is very high resistance so intrinsic layer is a sandwich between this two p type and n type material semiconductor material. So again this intrinsic material have a high electric field intensity because it has a resistance because it has a high resistance in between these two regions p type and n type region and symbol is just like a similar to the normal pin junction diode as you can see here. So this is about the pin junction and now come a pin diode so in the pin diode as you can see this is intrinsic layer is a sandwiched between this p type and n type and these are the metal contacts these are the ends of the metal contacts here and this is intrinsic layer in between the p plus and n p plus and n plus which is highly doped of p type and highly doped n type semiconductors and a material used for this is the gallium arsenide for the high frequency. Now working with the pin diode is that as you can see this series resistors is directly proportional to the frequency. So as the frequency is variable also the it is depend upon the voltage so as voltage changes positive voltage changes it act as a variable resistors. So this same can be reflected in the model also. So this is a model of the pin diode so this is act as a variable resistors. So as I told you virector diode act as a variable capacitors and pin diode is act as a variable resistor for the high frequency application. Now application of the pin diode is pin diode can be used as a detector also light detector also and it is used as a high voltage rectifier and in the high frequency it is used as a phase shifter and it is also used as the amplitude modulator. Now this now about the tunnel diode so tunnel diode name itself suggests the current is tunneling between these p sites and n side and this tunnel diode is a highly doped p n junction diode and the current flowing in this tunnel diode is is called as a tunnel current and symbol for the tunnel diode is this as you can see here it is somewhat different than normal conventional p n junction diode. Now coming into the construction of the tunnel diode is this so this is a p type and n type semiconductors which are separated which are connected to this so these are the metal leads this is the metal lead and these are the leads so these are the highly doped p type and n type and this is a substrate so again the material used here is gallium arsenide because for the high frequency application if it is a silicon it is not for the it is not for the high frequency application only the gallium arsenide is used here for the construction of the tunnel diode and this is the encapsulation as you can see here so this is the characteristics of the tunnel diode as you can see this this current is initially increases because this current is a tunneling current and this characteristic is a normal p n junction diode so all this current is due to the tunneling phenomena so tunneling cloud as you can see the small tunneling current flows because of the overlap of this conduction this valence band and this conduction band in n type so small current flows tunnel current flows through the tunnel diode due to the small bias and as the bias increases it reaches to the saturation point and maximum point as you can see here and further increase in the bias as you can see there is a decrease in the tunnel current as as you can see so this already explained in the characteristics of the tunnel out and coming to the application of the tunnel out these are the application it is used as a logical memory devices it is used as a relaxation oscillator it is used in the amplifier also and so and in the microwave application it is used as the oscillator because it's as a retarded oscillator because it has a negative resistance property these are the references thank you


Hello and welcome to the session. I am Asha and I am going to help you with the following question which says, find A if the coefficients of x square and x cube in the expansion of 3 plus Ax raise to the power 9 are equal. Let us now begin with the solution and the general term as dr plus 1 of this expansion is given by 9 cr into 3 raise to the power 9 minus r into Ax raise to the power r which is already equal to 9 cr 3 raise to the power n minus r into A raise to the power r into x raise to the power r. Now we are given that the coefficients of x square and x cube are equal. So first putting r is equal to 2 then we get the coefficient of x square which is equal to 9 c2 into 3 raise to the power 9 minus 2 into A raise to the power 2 which is further equal to factorial 9 upon factorial 2 into factorial 9 minus 2 that is 7 factorial into 3 raise to the power 7 into A square which is further equal to 9 factorial less 9 into 8 into 7 factorial upon 2 factorial less 2 into 1 which is 2 into 7 factorial into 3 raise to the power 7 into A square which is further equal to 2 4 z 7 factorial cancels out with 7 and 9 is 3 square and 3 square into 3 raise to the power 7 is 3 raise to the power 9. So we have 4 into 3 raise to the power 9 into A square. Now putting r is equal to 3 we get the coefficient of x cube which is equal to 9 c3 into 3 raise to the power 9 minus 3 into A raise to the power 3 which is further equal to factorial 9 upon factorial 3 into factorial 6 into 3 raise to the power 6 into A cube which is further equal to 9 into 8 into 7 into 6 factorial upon 3 factorial is 3 into 2 into 6 factorial into 3 raise to the power 6 into A cube which is further equal to 6 factorial cancels out with 6 2 4 z 8 and 3 into 3 raise 9 so we have 7 factorial 28 into 3 raise to the power 1 into 3 raise to the power 6 is 3 raise to the power 7 into A cube thus we have got the coefficient of x square is equal to 4 into 3 raise to the power 9 into A square and coefficient of x cube is equal to 28 into 3 raise to the power 7 into A cube. So let this be equation number 1 and this be 2. So as we are given that coefficient of x square is equal to coefficient of x cube so this implies 4 into 3 raise to the power 9 into A square is equal to 28 into 3 raise to the power 7 into A cube or A cube upon A square is equal to 4 into 3 raise to the power 9 upon 28 into 3 raise to the power 7 A square cancels out with A cube and we are left with A only and on the right hand side 4 into 7 is 28 and 3 raise to the power 7 cancels out with 3 raise to the power 9 and we are left with 3 raise to the power 2 so we have 9 upon 7 hence the value of A is 9 upon 7 so this completes the session take care and have a good day.


Hey guys, let's go over last minute revision for a Christmas carol. Now in terms of context, remember that Dickens wrote this story to criticize the 1834 new poor law. He also based it on the Victorian era which had deep class divisions and Dickens himself had direct experience of working as a child laborer at 12 years old when his dad went to debtor's prison. Now in terms of themes, make sure you commit these five themes to memory for the exams. Let's now go over the top 10 quotations. If you forget everything else, make sure you remember these quotes. The first quotation is a simile that describes how isolated Scrooge was. The second quotation shows Scrooge's own support of the 1834 new poor law. The third quotation is what Marley says as a ghost. The fourth quotation shows Fred's optimism. The fifth quotation is Belle when she talks about Scrooge's obsession with money. The sixth quotation is Tiny Tim. The seventh quotation describes a ghost of Christmas past. The eighth quotation describes a ghost of Christmas present criticizing Scrooge. The ninth quotation shows the ghost of Christmas yet to come. And the final quotation shows that Scrooge has changed.


Hello people of the internet! My name is Johnny and welcome back to Five Nets at Freddy's VR Help Wanted. In this video, I locate almost every single secret in Help Wanted. And what I mean by almost is I get the baby babs, I get the Minerinos, I get Helpy in all his locations, on the menu select screen, and in FNAF 2's hard mode, and I get the secret coffee in FNAF 3. The only easter egg that I wasn't able to get was the Endoskeleton in FNAF 2. I don't know why, it just seems like it doesn't like me, because I was doing that level for a solid hour, I livestreamed this entire thing. If you want to see all the pain and suffering of me trying to find the Endoskeleton in FNAF 2, there's a link down below to the full livestream video. If you want to watch me just sit there for an hour, constantly resetting the FNAF 2 levels. Feel free to do that, I don't know why you would want to do that, but it's down there if you want to take a look, I guess. But I thought, because the livestream was so long, it's mostly just me resetting all the levels, which is pretty boring. I'd make this video quick, short, I think it'll be short, I'm not actually sure, I haven't edited it altogether yet. But it's just a compilation of me finding all these streaks, and then, you know, me not finding Endoskeleton 2, because he's a jerk, and he doesn't want to show up. But now, he is all the Easter eggs, except Endoskeleton 2. You can find him no way on this channel, because he hates me. Guys, what is up, guys? If you're new watching, I'm not like that, I swear. Please don't click off the video, I need this. A tradition of throwing plush glitch trap. Oh my god! Okay, yeah, sure. So the first one I want to get is Helpy, because he's pretty easy, just got to keep switching back and forth between level select and some other thing. I guess I'm doing the gallery. This may, oh look, we got him the first time, that's awesome. So this is Helpy, I'm going to have to go a little bit out of view here to show you guys. But here he is. Look at him. He's cute. You can't do anything with him, but he's here. Let me see, am I close to a wall? Look behind him. Hi. No, no, no. Boop, booped his nose. He's cute. He's a cute little bugger. And get out of here. Look at him. He's awesome. You're awesome. No, you're breathtaking. Back to this one. Oh no, look, she's there. She can appear in different sections. Alright, I'm going to try, best I can to get over there. I'm going to have to go out of view here, boys. This is literally as close as I can get. Look, there she is.  No, that's not going to work. She's there. Look at her. You see that crap? Okay, 50 seconds. Look, it's your best pal. That's awesome. Alright, how do I get out? That's great. I'm so glad I got that. Awesome. Oh, hi. I didn't expect to see you move. I'm just going to go out while I'm still alive. Boys, we did it. We got Minerina. Come on. What are the chances that they spawn? What are the odds? Oh, they're there. Alright, I'm going to try to get as close as I can, boys. Look at them. Look, I'm going to get jump scared. Jump scare was worth it. I mean, the, uh, whatever. Alright, where did you come from? Who's over there? Listen, I don't want this guy. Take him back. No, I don't want him. What? I don't want him. Alright, anyways, I want to end with coffee. I want to... it sounds weird. And you may be like, oh, but that's not a FNAF character. It's not a good way to end. It's probably the most exotic Easter egg in this entire game. Because I believe it's the only character in the game that is not in the FNAF universe. Well, apparently they are now. Wait, I just thought. This game is set inside of the FNAF universe. That means the Desolate Hope is also in the FNAF universe. Scott, what are you trying to pull here? The Five Nights at Freddy's cinematic universe. It's got to happen. First they're going to make all the FNAF movies. Then they're going to make Desolate Hope. Then they're going to make Chippin' Sons. There was no pause button, wage quit. 20 useless apps. Sit and survive. I'm really just trying to see how many of Scott's games I can name. The one with the fish. The one with the fish. Ooh, the one that the Custom Night fake demo was made, that one. That's all I can think of. I could totally go inside that then. Hey, hey. He's here, boys. He's freaking here. He's here, look. Look, he's here. I felt this was going to take like half an hour. Oh my God, get that out of here. Can I do anything with you? Oh, oh my God, look at him. He's so cute, little coffee man. Uh, what the? Did I? Did I do something? Gulp, gulp, gulp, gulp. Mmm, delicious.  Let me hold your hand, buddy. Aw, you got some good co- Is that weird? Is that weird if I drink his coffee? Look at him.  He's so cute.  I wish you could interact with these guys. Like if I, like, did that, I don't know, maybe I could like get a piece of coffee. I could like get a cup of coffee, or if I like touched him, then he would like beep boop beep boop beep. I don't know, that would be cool. I really want to go in the, um, the vent now. So I'm going to actually open the door and go through the vent. Whoa, whoa. I should probably, ow, I just walked into the wall. That was, look, there's holes in my carpet from the chair, because I've been sitting in it for so long, looking for the goddamn endoscope. My hair is probably a mess, but I don't care. That is all the secrets I'm willing to look at. For now, I've seen Helpy, both in the Level Select screen and the FNAF 2 Nightmare mode. Oh, just flew past my window. Hi bird. Saw the bitty babs in Soak's baby's place. Saw the minimeters in Plus Trap Turm. God, what else? Coffee in FNAF 3, that's probably my favorite one. Ender Skeleton doesn't want to show up. Don't know why. Who knows? Maybe I'll definitely do this in my spare time if I'm just hanging out. I'm like, whoa, what do I do? I'll just go on and record me resetting all the levels. And if I find him, I'll throw it up as just a quick little hey, I found him video. But for now, this was absolute torture. I did that for so, so long. If you are looking for these secrets, you gotta have a lot of time on your hands because I've been going for two hours-ish, maybe, about, I don't know, but it is horrible. The Easter Eggs, they're cool and I like them, but oh my God, some of them take a long, long time to find. The Minuina took a little bit of time, but I got there eventually. Bitty Bab took a little bit of time, got there eventually. The Coffee took a lot shorter time than I thought. I thought it was gonna take a long, long time, but it was super cool. We went through a vent, which is cool. I opened my door and I crawled on the floor in the hallway. It was a little bit weird, but I think it paid off. And Helpy, it doesn't take much to find him. He's probably the easiest one to find, especially on the menu select screen. And it didn't take us that long to find him in hard mode, I don't think. But the Endoskeleton hates me.  I'll find him eventually. I'll make it my goal to find him. But now, that's it. So we're hopefully working on an update to the game, but I don't know who knows. Hopefully that'll come out soon, because we haven't really heard any update news about this game recently, really. We had patch two in the beginning of this month, but now, getting pretty close to the end of June, going in July, you know, hopefully it will get an update soon. Maybe it's with the weather, maybe it's with the nightmare guys, but who knows. I had fun looking at these Easter eggs. They're pretty cool and interesting. If you have the game, I recommend you look for them or just watch a video of people looking at them, because they're cool, they're fascinating, and I really like them. But it takes a long time to effort, especially the end of the skeleton. Well, maybe that's just my luck. Anyways, that's it. Thanks for watching live, everyone. Thanks for watching back on YouTube once I've chopped it up into an actual video. That's it. Thanks everyone so much for watching. I'll see you all on the flip side. Goodbye.