What's New in Vue.js - Evan You & Gregg Pollack

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

vui UI - next big thing!

πŸ‘οΈŽ︎ 3 πŸ‘€οΈŽ︎ u/gevera πŸ“…οΈŽ︎ Jun 01 2018 πŸ—«︎ replies

Will watch later tonight but can someone give a tldw

πŸ‘οΈŽ︎ 1 πŸ‘€οΈŽ︎ u/Grizzer_ πŸ“…οΈŽ︎ Jun 01 2018 πŸ—«︎ replies
Captions
here we go I just hit two o'clock but I think it's about a 1 minute delay I'm Greg Pollock and I'm here with Evan you the founder of view and we are here actually at Flatiron school in New York City because Evan you you live not too far away from here yeah not too far well it took me almost 2 hours to get here but see the depends on the traffic somewhere in New Jersey yeah cool well thank you guys for joining me we're gonna be monitoring the chat best we can so if you have any questions do keep in mind it's like a 1 minute delay to what you're seeing but I will keep in mind to keep an eye on chat meanwhile Evans gonna walk you through some of the new things that are happening in view right now oh do let me know if you can hear us fine somebody say your audio sounds great and that'll make me feel a little bit better and yeah so we'll field your questions will go through its new and view will field your questions and I'm gonna be able to show you evan screen pretty easily so we can walk through some stuff cool what do you think what you want to start with so I'll first talk about probably talk about view press a little bit cool okay so view press we released a few press a few weeks ago I believe it's being almost a month now can't remember time flies really fast when you're working on stuff but anyway so I original I didn't plant review press to be you know a project that's like really full-blown static site generator it's almost going growing - originally I was just looking for a solution to replace some of our existing documentation for like new router view X we wanted to have a better document generation tool so we look at a few different options originally we were using get book but get books beaming capability is kind of limited it's also when we have a lot of translations the the reload time of get book was just getting unacceptable in some cases and then we thought about you are writing a custom hack so theme HECO is a nodejs based static site generator but again in hexose theming system was pretty much string template based right and when I was working on so our current main documentation site review is based on hexyl and we use a custom theme for that and during that process I was like I'm building a custom theme but I constantly wished that I could use the view syntax these right view components to do my themes so I was like why don't I just build something that allows me to do that and that's what view press is and so at a high level it's a stack static site generator let me just going on - okay what's you guys watch what he's doing okay so this is a view press repo but pretty much what if you press does if we going to Doc's Oh take a look and we have the guide it's a bunch of markdown files alright so I have a bunch of markdown files and if I do view press bill if you press dev dot it doesn't work because I'm inside the view press repository itself so I just do a pre pre-installed NPM script that runs the view press server essentially it just works you give you press a directory full of markdown files it'll just start a dev server and this is the the documentation for view press itself and it's obviously built with new price and the cool thing about view press is if we go into so I'm going to open this with my editor and well actually I should open it with vias code so that you can see bigger sidebars there you go so we're going to the docs directory you'll see everything is just markdown files that's the whole doc doc Doc's part but if you're going to our default theme so this is the source code of the default theme that you are seeing here all right this whole interface you're seeing everything is built with view components so if you're building a custom theme The View press you'll be right at home because everything is just few components and all they're all the information so look at the let's look at this high level layout component you see that it has some special injected injected properties dollar sign dollar page these contain the meta information about your whole website about all the pages and view press collects these information during build time and exposed to your components so your components will be able to use that and you can use the full view component syntax to write your themes and when you run view press build this is the process that we are we're building our cipher production as you can see there are two boats going on in parallel alright one server build in one client build and the server code actually builds a server-side bundle of the whole website and then we virtually so you see these rendering static HTML messages it's actually running your app as a server-side rendering app and virtually visiting each route so whenever it's visiting a route it renders that page into static HTML so now if we're going to so this this project is configured to put the output files in here's if you're going to the View press directory you can see we have an index.html and have a we have a photo structure that's mirroring your markdown files so if we go into guide you'll see it has all the HTML files crash spawning to our markdown files and these are pre rendered files if we open one of them you'll see everything is pre rendered static HTML so it's like super super SEO friendly if the browser visits this page it directly gets the flesh map and it doesn't really need to do any server-side rendering right because we pre-rendered everything so it also has all these preload and prefetch resource hints so as you can see right so what are those right we have already these content that's rendered here so why do we need Java Script for so the JavaScript part is actually responsible for doing the same serve by rendering hydration so once the page is loaded Java Script kicks in and view actually takes over the page and turns it into an actual view app right because if we go back to our if we go back to our source code you can see here that we have interactivity in here right so we have a like search box where there is a lot of this interactivity where like allowing people to type to search stuff this these interactivity part they need JavaScript to work right but if you're just rendering a static HTML page it won't come up with any any of their interactivity so the interactivity comes from the hydration part right that's kind of like Knox that's kind of a next s right yeah exactly right but so the difference between view press versus Knox is mostly the view press is focused on static content and the default theme is really really just optimized for documentation right most of the features that we have in there for documentation for documentation we have a lot of markdown extensions so we have like a built in search and if you go to the markdown is you would have a bunch of markdown options that you can customize how the markdown rendering engine works and we have a page about markdown extensions we ask the anchors be automatically enhanced your links so that they are cross linked and when you're building we actually check for broken links between your pages so these are outbound links we support a lot of support y'all yeah Mel frontmatter for you to customize a specific page get her tables and SG Table of Contents custom warning blocks these are pretty nice and very nice coat highlighting that works out of the box so I had a question and yes Christophe asked is there a plan to transform view press into something like Gatsby on the react side alright so um few price right now kind of have a bit of what Gatsby does but Gatsby is larger in scope in the sense that it tries to be a full solution for you to build websites alright so it takes into consideration of how to consume third-party data sources API is and all that stuff this is not really part of the scope of view Cashman you press right now because this was originally just made for the documentation needs of the view project so that's going to continue to be its main priority however the architecture of view press really is not limited to what it is right now right so we are thinking of if you're interested you should join our discussion on github because we have an issue talking about how we can expose an API a plugging API system for view press that allows people to extend view press to do more interesting things one of the first steps is for example a blogging system that's based on view press that's kind of the low-hanging fruit once we figure that out we believe the idea like the 1.04 View press would be the time where we have reached a satisfactory API design for plugins that allows the community to sort of build view press plugins that would enable view press to do things that Gatsby does so Gatsby also is based on plugins so we need something that like that to allow the community to extend view press pretty much yeah and we actually covered on the official view news this week on the podcast in the newsletter I'm egoist who like does has so many different repositories yeah we plug to different project is one which is called saber Jas which is a minimalistic framework for building static websites using UJS and also one called a dream and so there's other options out there I think for people who want to build custom web apps who aren't like you need a documentation yeah what do you think of that yeah I think each of these projects are kind of focusing on a different niche like so if we think about nook Schnucks aims to be a high level application framework right so when you build a duck's app you are still kind of working in the absent Rick way of doing things your main chunk of code are few components when you're using view press you'll find that unless you're doing a custom feed dream development but once you have a theme when you're actually using View press itself you're just writing markdown files you don't really want to concern about like building a component do to do fancy stuff because you want to have all the layout and visual concerns encapsulating your theme and then you just focus on content right so view press the biggest difference between a view press versus next is view presses content first and next is app first that's an interesting and and I think saber is pretty much app but a bit more static than next because next is still next covers a bit more because it has the server-side part where allows you to do logic on the server right so Sabre is like static generation only but for an apps a View press is steps standing generation only but mostly for content right right so each of these kind of defer a little bit differently but I think like the the underlying architecture of view press is is a little different from from gatsby's so it's they don't the whole vision of the projects don't completely overlap right well Vincent asked his view press support markdown files and subdirectories or just all one Doc's directory that issue I have with our current documentation it's support sub directories if you look at the source here you press Docs so you can see that beat me is the default like the root path of our website so we have content nesting guide be content nested in config we also have internationalization built-in so this whole CH directory contains the same direct structure for the Chinese translation so to configure that we actually have first-class internationalization support so you can specify locale different locales well and yeah I can't actually show you here so we can switch between the languages and it stays on the same page you're looking at Wow and in case we actually missed this part from early on so once the the JavaScript kick singing hydrates it it becomes a single page application so when you switch these pages as you can see we're not actually reloading this is a view router powered this is using html5 history API to switch between routes right and every time you navigate to a new page that the JavaScript corresponding to that page is actually fetched asynchronously as an async component that's rendered on your client right and if we go to a page that we haven't visited before you'll see that little green little green loading bar on top that's when it's fetching that content asynchronously but if we navigate away and then go back you see there is no loading bar because that content has already been loaded so switching between pages that you've already visited is instant because everything is already downloaded so that gives you a snap you're experienced in traditional static pages even because for a traditional page you're essentially reloading the whole page and re executing the JavaScript all over again and the browser are doing all the new CSS layout but for a site generated by view press once it's loaded is actually a single page application nice so let's see we've got a few more questions if they're Laurie says is the read Mita MD the index always yeah you can also name it index MD if you want to okay and son says how would you you know G press hold up for very large news type sites like 200 K so that probably won't work this is pretty much a limitation of web pack because view press internally uses web pack for building the whole thing so the maximum we can handle it's probably several hundred articles two hundred thousand is definitely not a right use case for it all right good enough all right now what else do you want to show us all right cool so on top of you press we so most our recent changes are focused in the tooling layer so we a lot of you probably know we we have our new CLI coming up so VC i3 is currently in beta and we're really close to our C so we'll do a quick showcase so the view Cl I just so if you've used to view CI - you know that it pretty much just pools templates from github if you create a project with view CI - you'll see that the project is created with all the webpack config right inside the project so you can tweak it it makes it easier to tweak those coughing options but it also makes it impossible for you to upgrade once you have changed things right or make it very difficult to upgrade because everything is checked into a code so what we're doing now is view Sion three takes a bit more integrated approach where things are installed as dependencies so I'll give an example right view creates hello world so in beaut CRI two you use view in it and see our three years view create now will you do that you have a bunch of options so this debug thing is because I'm in debug mode so it has the special preset you can have select the default so this gives you Babel in the S linked and that's like the bare minimum for pretty much the simple apps if you want to manually select features you see that we have a lot of built-in features we have babel of typescript P double a support router of UX CSS preprocessors so why don't we select everything and hope it works so once you select all the features you see a lot of more things so each of these feature will have a few additional questions so with typescript you can use a class style component syntax you can chain babble after your type script so that babble will perform automatically polyfill detection for you that's me your babble preset em you can pre-select the preprocessor you want to use PS linked yes so you can also use es lane to Lane typescript if you want to we'll just pick the minimum just comic files so once you selected everything if you're really happy about it you can opt in to save it as a preset so that you don't have to go through the same thing over again next time nice but we'll skip that for now oh okay so we have something that's not going I think but I have messed something up this morning this way we get to see how do you debug things which could be just as educational as well so I think this is because I was testing a globally installed copy of news what do you want to do that's interesting I've it's my first time seeing this fresh yarn link hopefully fixes things and doing live here installs art is not a good idea okay No you're gonna come back to this your answer some questions yeah well this is unfortunate but we can't actually look at something else so Jung has been working on something for the seei so I showcased the programmatic of the command-line interface for creating a new project so we also have a version of the project creation process it looks like this okay so this is I'm starting a local development server here but in once we actually have this feature ready you'll be able to just go into a directory and do view UI and that would launch this interface you see here so we can create a new project name it hello and pick your preset and hope that already exists right so I can force override it how nice okay so we created a project and it comes with these plugins and you can also add a plug-in you can get all of these plugins that we currently have and you can search for them say I want to add beautify so we have a beautiful has a plug-in to that people are already building a lot of these so if you want a pit of a we can have Peter so do that stop it and finish and it shows you once you install an additional add-on it runs a generator that kind of may modify your files in a project so you'll see a dip few you see all the like stuff that it has added to your project and these will be staged for a git commit and you can just commit that so a pete of a plug-in commits and now this project is added to this plugging is added to your project and you see that so this is the process actually running this interface here so you'll see all of these normal messages you see from the command line as well and this is actually working locally in your file system right so this is done so you can stop the process here and people want to know what you were gonna show before you hit the air was there anything after that you're gonna show up well this pretty much is just like serving the project right yeah so you're showing now what you would have run it hopefully it works I think we created a project here let's do that okay this one works so you have a app created so notice this app was created completely using our UI right the only command line command that we did was view UI once it's actually working but but we did create this project using a fully graphical interface process and and this will actually be saved locally in in a local like a mini database as well so like later on when you run view UI again you'll be able to go to a project manager i'm already disconnected because i stopped the process but you'll see the projects you created previously on your machine here and going to them can you add plugins at any time yeah interesting so now when i want to extend my project i want to add something i just can go back into that user interface and add the plug-in whichever it is yeah or you can do it from command line as well so it depends on which you prefer but I think the graphical interface could really help for beginners because some of them may not have to you know may not be that comfortable working with command lines but this gives you a much better sense of what your project actually contains it's like more intuitive than just looking at your package JSON file oh yeah that's great you remember that as I got into view that was something that always seemed daunting to learn learning about webpack and all the things that are in it it's doing under the covers your packages so if we looked into a project that's generated by I don't want to have to ever learn do you have to learn webpack at some point well we hope that the goal of the new CR is we want to hide the internals of webpack to the point where maybe 80% of the users won't have to touch it there are definitely will be cases where you have to touch it and in those cases you still need to you know know about webpack but if you you've gotten to the point where you feel it's necessary to tweak the internal webpack coughing you probably know what you're doing right so in our in a case you can see the the project structure generated by a default project is pretty minimal if we ignore node modules we have source in public and that's pretty much it so you'll notice babble doc optic Janice I kind of want to mention this here because we're using babble 7 we were using all the bleeding edge of stuff right we were using webpack for babble 7 typescript 2.8 and fuel over 15 one of the things about babble 7 is about babble 7 is it has this new conflict 4 Matic a babble doc avec Jas this is introduced to solve a problem in Babel 6 where if we use babble RC which a lot of us probably have seen before babble RC is loaded pretty much like es link RC it's like kind of resolved relative to the file position so if you are trying to apply babel loader to a file in your node modules it'll actually try to locate a babel are seeing side note modules to apply to that file okay and in double seven they pretty much made it that the skip that were our c for files inside node modules by default so if we want to make sure like anything you included in node modules you want to apply babel transforms to it you have to use babel coughing janice so this works more like a project wide config that will apply to everything that's coming from this project root Wow so so that's why we defaulted this always in the latest C on and assign from there you will see the source directory is all your source code as you might have seen this is pretty much standard because we added the notice we started as a default project but we added the P double a plugging the P double a plug-in actually added this serviceworker registration fire for us and it was imported into your main file as well so some of the plugins have pretty intelligent intelligent generators that like it knows to parse your main J's file and inject this import statement here so that this file works interesting if I wanted to write my own plug-in yeah where would I start how would I learn that or write my own plugin excellent question so we still have a lot of work to do for the for the CL eyes for our CI documentation currently the new CLR documentation is pretty much a work in progress we have a bunch of topics covered in on the github repo so our plan is we will su turn this into a view press site so that you'll have a better way of looking at it we also do some restructuring but currently we do have a dedicated page called plugging dev MD that talks about how to do a CLI 3 plugin so there are a few concepts that you need to know the Creator is the class that's responsible for creating a new project and the service is the runtime part whenever you do start a dev server things like that so I won't delve into too much details here so if you're interested go to github you see our repo insight Doc's plugging dev MD it talks about how you can do a plug-in but the simplest form of a plugin is really just one single javascript file that exports a function and the function receives the plugging API plus the options of the current project so inside here we have exposed the API expose a number of methods that you can use you can tweak the internal web pack config with chain web pack and configure web pack you can register an additional command so that end user will be able to run view see on service your command and thing we talked about so this is a wrong time plugin right so this this plugin is loaded whenever you do the UCI service command another type of plugging is called a generator and the generator is okay the generator is responsible for modifying the files so when you add a new plugging in to your project if if it has a generator that generator will be invoked and the generator can add file modify files remove files in an existing project and in addition it has an API which I just mentioned that allows you to inject additional imports into the main entry file nice you can also inject additional properties into the root instance so if we look at yeah I sir this so if we look at the generator here this is the router generator so you can see we are doing API inject imports into our entry file it's injecting the router import it's injecting a router option into the root instance so a lot of these are pretty modular so you can so if you are Erika our hope is the scale I should be the scene I should be powerful enough to cover 80% of normal use cases if you are just trying to build an app and don't want to mess around with the internal tooling we want the CII to be exactly that right you just install it you use it you don't even need to tweak anything we hope that can be the case for the majority of people but when you really want to customize things and we understand that's inevitable especially say you you're you can do a you can do additional customization on top of the CLI too so that it's reusable across your organization so Chris Fritz has his uh his enterprise boilerplate which is based on the new CLI which has a lot of stuff yeah I've seen that yeah I went to his tutorial and you come where you walk through is enterprise boiler brain so if you search for Chris Fritz enterprise boilerplate you'll find a starter project that has a bunch of his own best practices in built in it is really interesting to take a read yeah and another thing is another thing is you can um you can write your so first you can write your own plugins right so all the plugins can do a lot of things and you can then collect all these plugins and create your own custom preset all right in addition to just like walking through the CLI and save the preset you can manually edit the preset because the preset is just a JSON file a preset is just a JSON file that specifies the plugging that are used so once you create a JSON file you can just put it up on a github repo and then you can use use it as a remote presense your going to do view create dash dash preset my Reap my organisation slash my preset and it will just fetch that JSON file and create the project according to the preset view that that you have had alright that's great had a few questions somebody was mentioning roll-up right versus web pack I guess yeah what's your opinion on that so so a lot of people think roll-up is like simpler easier to use right but in our case like we are trying to provide a CLI that has to cater to the needs of everyone and if you compare web pack or roll up roll up is simply because it has a smaller scope it's intentionally addressing a smaller scope of problem so that it can be simpler right for example roll ups module transform system isn't as powerful as web panics so we can we can write V loader which is extremely powerful it gives you this ability to like individually transform each part and each part is like Trent handled by other web pack loaders as well but in roll-up it's much more difficult to do that because roll-up wasn't it's just like it doesn't expose these low-level stuff that allows you to do that so you have to kind of have to there is a rollup plugging view but over time we've we found that what packs web package is pretty much a system that you can customize expose a lot of very very useful internals allows you to customize it to tweak to very specific needs so I would say like roll up would cover 80% of our use cases however that 20% would be a deal-breaker for us because we can't say that's from views perspective we can't say because we like roll-up we'll just leave the two other 20% of our users in the water right alternative is we'll do we maintaining roll-up and web pack based versions at the same time and that's just too much maintenance burden you have to pick something we have to pick something right someone also asked about your theme I think you're using sublime yes so I actually get you switch between code and sublime but really I use the same theme on both editors what's the food it's called a material theme with pale accent I think pay all night material theme pay all nights all right cool so I think I'd like to get to questions pretty soon is there any last things you want to show us off of you what's what you've been working on it what's new so we do I just want to kind of mention that you loader 15 was a pretty good update for for tooling authors right it may not be that obvious for end view users but it kind of solved a bunch of problems that kind of have we've been thinking about over there a long time some of the legacy problems in V loader we're like you cannot pass options between loaders and it doesn't work well with threading and all kinds of stuff so if you build order 15 kind of solved all of those problems for us and that was like one of the technical things that I'm pretty proud about but it's kind of hard to explain why I like such a there's thing because of like for the end user yeah it actually doesn't change anything about how they work so budget which is good and I think that's kind of a theme of the thing word we're currently doing in recent months because a lot of the stuff we're trying to do is focused on improving the internals improving the long term maintainability without affecting actual usage so we want our existing users to be able to use the familiar syntax we want their code to keep word working while we improve the parts that they may not need to be directly concerned with so yeah I think that's great I think that that whole philosophy of trying to keep things simple is prevalent throughout the whole experience of being a developer and view at least from what I've felt from having these amazing documentation just be really easy to everything you showed me here which is really focused on making it easy to get started and keep the project's easy to even add plugins I didn't that Jason knew is sad that we didn't mention parcel right so parcel is again the the position in the part of parcel is quite interesting because if you think about it web pack is a modular bundler slash build system roll-up is smaller in scale it's primarily a module bundler it doesn't really want to go into a full build system and parcel is is not just the build system parcel is almost the equivalent of the CEO I write it's just one single thing that allows you to just build an app from start to finish so in that sense parcel has an overlap with VCO I but parcel also has the problem in that it tries to support everything at once so that inevitably makes brazing something that we might not need in view see I that doesn't necessarily cater to the specific needs of view users so I think that's just different approaches to the same problem right Partho tries to be the thing that is like one size fits all which i think is a bread goal but I also think that approach would come with its own problems for example trying to please everyone at once is always extremely hard and you will lead to conflicts and in flexibilities in certain cases and it can be hard if your system wasn't designed to be configurable right in the first place right so zero config is is like it's great when it fits your needs but it's not so great when you actually need to tweak things so BCI is the thing that kind of want to we want to be zero Copic for at least half of our users nice but for other users who want to tweak things we still want to make like customization a first-class concept in the sea Ohana yeah that's great should we start answering some of these questions sure if you have questions feel free to add them in there we're gonna go through them one at a time starting with the one at the top so using typescript with view is still a subpar experience the main reason is the design of these API is which make is very hard for a type system to do its job are there any plans to change that so yes we acknowledge that and I think the the time typescript team has already done a pretty good job of helping us improving our typing and one of the things that we wanted to is keep working with the types for a team to improve that and in fact Pawling woohoo works on Vader and he works at Microsoft and pretty much like we we have pretty strong support from Microsoft because they're interested in making sure that the ts+ view story is a good one so you can I think everyone can rest assured that we'll see improve in that aspect in the future so regarding the API design right so it's true that the the current object based API view was designed without typing in mind right we haven't so the API has stayed that way since it's pretty much that way since the early days like through a point X right it's an object based API and so back when the time when we first started working on you typing in the front end world really wasn't a thing so the API wasn't designed with titanium mine but over time we are seeing the importance that especially in larger projects especially at large projects so so we are thinking about that in the next iteration of the design currently we have the decorator based approach that allows you to write a class-based syntax but that's not first-class as people have pointed out so we do want to consider shipping a first-class class-based API or maybe not class-based but we definitely want to ship an API that plays nicer with typing systems and but to do that the challenge is how do we avoid interrupting users that that's on the old API so we have a few options we can do saying 3.0 will make the breaking change and make the new default API a class-based or whatever the new API type friendly API it is and then we provide adaptors that turns the old object basic components into the new ones or you can continue to use the object based format as the underlying implementation but make the current class-based decorator our first class part and makes it bit makes it a bit more performant it makes it more smoother to use so these are the two options we're definitely considering that but as you know changing the API is is a very big change it's a fundamental shift in how the framework works so we need to be extremely careful about that so we don't want to we don't want to taste that so that's probably gonna happen in 3.0 and it'll take some time before we actually do that but yes it's on the roadmap nice at the view Jas Amsterdam conference this is a question from Yancey Evan mentioned the possibility of combining actions and mutations and view X is that possibility still being considered yes so that's one of the things that we plan to do so there is another question that I saw that missioning of talking about the road map so we've yes we've slipped a path the road map quite a bit because this new CI is taking much longer than expected and you press also kind of blew up bigger than we thought so we spent a bit more time on the tooling section so we spend probably last few months all on the tooling part after DCI is CI 3 gets stable most are focusing back on core next step is 2.6 we have a bunch of great PRS lined up and a bunch of new features that will want to shipping 2.6 and after 2.6 we're start looking into view X and this is gonna be a major upgrade to view X and as mentioned we plan to get rid of mutations altogether the challenge is how do we ensure the same dev tools debugging experience that we currently have so that involves so the actual API changing view X the design and implementation is actually not that much work the bigger chunk of work is ensuring finding a good path for existing users to migrate and ensuring we upgrade the dev tool at the same time to make sure it works well with the new version of UX so that's kind of the interlocked pieces of work so it's kind of bigger in scope than it seems so we want to also want to kind of plan it carefully to make sure like when we actually release it all the tooling and things are surrounding it I can't upgrade smoothly as well but yes that'll probably happen later in the year nice alright next are there any plans of allowing es6 classes and annotations is a first-class citizen alternate to the current view object definition asked by Hector so this is kind of related to the typescript question that we just answered and the answer is the answer is we have considerations on that so we cannot say 100% that will do it or not but it's one of the things that we've been thinking about it takes a bit more discussion to arrive at the good compromise because primarily the reason you never used a class-based API as default was because he has six classes in their first iteration wasn't sufficient for us to express everything we needed for the component right so if you want to the first draft of the the es6 classes only allowed you to do class member methods and Static getters that's pretty much it you can even do static properties directly in the class body and if you want to do meta programming on the class you need to use decorators which wasn't even officially part of the language when it first came out right so that essentially forced us forced users to use a transpile transpiling step using a proposal that isn't like it what that was staged to write so for us that seems like you know it's it's risky and also it kind of makes it impossible for us for new users to try view without without bill step so that that place is a great like a barrier to entry and barrier to entry is extremely important to view so we want to make sure use default API can always run a modified in the latest browsers without a bill step and that's that's one of our design constraints we want to value so so this is what like why we didn't like it on the the class-based api train but things are changing so the class syntax is going to improve over over time yes is getting more features one of the more exciting aspects of it is the new decorator proposal we some of our framework authors actually got involved in the new discussion for the new decorator proposal so the current stage two proposal is actually going to change quite a bit when yahudah when they're trying to push the decorator proposal 2 to stage 3 the latest proposal actually makes it quite a bit more powerful and enables a lot of interesting meta programming capabilities and which also would make our the current view class component decorator implementation much less hacky than it is so I think when the new decorator proposal reaches stage 3 that would be a really good time for us to reconsider this because I think the a plane class intact is still not enough so we definitely need a decorator and a more powerful decorator would pretty much solve some of the ping points that we currently have the only reason I know what a decorator is is because I taught angular all right next up is Gary ass I know this gets asked all the time but it bears repeating what are these plans for a view native official platform there are solutions out there but nothing officially supported are there perhaps any plans to bring any of the existing solutions into the v-fold are there any recommendation recommended platforms so for us the question is interesting because when we consider it official right so we have to kind of consider how much work it is to work on a native rendering solution all right if you look at the teams behind react native or weeks or native script you you'll see that it's it's full teams of native engine like native platform engineers in order to build a solution that works equally well on all of all of those native platforms you need engineers that are specialized in those platforms working together right so you started out as a front-end project my specialty is mostly in front-end and JavaScript I wouldn't call myself you know a deep expert in iOS or Android so like even just I want to I probably don't have the bandwidth to actually build a native solution just with one person I mean we have a core team but most of the core team members are also mostly front-end developers so the team structure pretty much doesn't really doesn't really like give us the the proper setup to tackle that kind of thing and for us it's also more it's also makes more sense for us to collaborate with the existing solutions rather than building another competing solution with right so our primary goal is to so if we look at the architecture of these native rendering solutions all of them are pretty much separated into the iOS native renderer enjoy native renderer a web runtime and the and the platform agnostic javis content still huge project goal or our scope is to making sure we provide a solid platform agnostic rendering layer the runtime the view core on time and the virtual Dom layer that that is able to provide a shared runtime so that so that the other teams the other companies like the week's team or the native script View team they can use view as a building block they can they can leverage what view provides from the developer experience side and they do the hard work of making sure everything renders correctly on native devices and I think that's a good collaboration that's people putting strands where they're good at making you know like making a view official native rendering well it isn't really like maybe it sounds good to have something official but we believe in this case is better to collaborate rather than to you know do it ourselves and more importantly we're actually you know some of the design goals say for example in view 3 is we're trying to make things I saw another question regarding like a native renderer or how you can actually that was one of your questions like yeah you see that we have the platform's of web weeks and all that so theoretically you should be able to write custom renderers for arbitrary platforms right it's true right people are already doing that in fact both weeks in a discrete view are doing exactly that they are using the same view source code adding their own platform specific code to build the JavaScript on time for their solutions and there is even a project that uses view as the runtime to render to terminal graphical interfaces whoa so so these are all possible unfortunately we didn't expose them in the first-class API so that so you have to be pretty pretty familiar with views internals to be able to pull something off like that yeah and that's part of what my course so I've got a course on the mastery comm right now that it goes into advanced components which leads you down that road we talk about reactivity we talk about we dive into the view source code we start reading through the source code together and get to that point where we look like what how does a render engine work how does the mounting process work which is what you were talking about getting to that point where you realize like Oh things are separated out into like a web directory does that mean I could create an Android directory and I integrate it so you can tell that the intent and the way things were laid out was to make it so that you could create additional platforms so the current to point X code base is like two years old right so over time we we've learned a few lessons and we believe like in the next big refactoring we'll be able to actually nicely separate out a custom renderer API that allows people to easily just create their own view renderers right so you will have a renderer that can write to the actual browser DOM and you can have a renderer that just like spits out text like a test render or something like that so our goal is to make that pretty first-class API in view so the higher-level API for building applications will remain the same but the tooling layer will be able to expose more power allow people to leverage views internals to do more interesting things yeah and I agree with that a guy I like the idea of the core team and the stuff you're working on to remain true to what you're working on and not get too divided into all these different hope other open-source projects like make it easy for other people to take that on themselves yeah that's great that's what open source is for the next question is Brandon asked when would you recommend a site or project adopt view press versus nook so we kind of talked a little bit about this earlier didn't we right yeah so depending on whether you're focusing on content or you're trying to build an app right exactly Connor you are having a mix of both you can consider using view press for the content and using next for the single page application part of your whole thing right it doesn't you can use both nice next is how would you how would you advise I get started contributing to documentation or source code for you if only there was like a day full of that do you contributor days once you call it up in a browser Oh exactly yes that would be the perfect thank you contributor days yeah I gotta become an upcoming event on June 6th view contributor days is the view one always thought you were there June 6th yeah so you sign up and you've got people giving talks I believe at the beginning of the day right so well do some updates pretty much like what we did earlier today but focus a bit more on the tooling aspect of it so this oriented towards people who are more interested in the ecosystem in the toolings and repositories contribution stuff yeah this would be a good day to get started contributing because basically you're gonna have access to all these people during a good portion today see there are a lot of prominent developers in the ecosystem attending as well so you probably will get a chance to ask some questions we have people from ionic webpack quasar framework weeks next native script view so beautify so a lot of there will be there will be an open-ended discussion regarding so there are a lot of the bad days content will be revolving around how you can make these developers lives easier easier essentially these are developers making tools for other developers yeah alright so we I am making tools for them I'm trying to make their lives easier right and if I can make their lives easier they'll download greater stuff that makes everyone's lives easier and that'll make my life easier too yeah that's right all right I think we're about to enter into the lightning round this is where we try to get through all the questions okay but you have to like what we're talking about like like one paragraph Maxima okay all right all right let's see how far we can get could someone from the core team update view roadmap it seems like things have slipped back a little and be great to know the time frame yeah I talked about this a little bit we were hoping to wrap up CLI in two weeks from now and then we'll do 2.6 unfortunately I can't give an exact deadline because two point six is we still have a bunch of things we are unsure about how long it would take but I would think that would be within two months from now awesome and then update the demon roadmap um hopefully all right what do you expected you to become in the next five years what are your hopes so my hope is I want view to I want to be view to be a good infrastructure for the web like anyone who want to build stuff for the web you can be you can help them that's my goal right how people build more good stuff for the web that's that's my goal awesome you 2.6 comes with a new es6 proxy reactivities but not does that with it does that mean we can make deep Watchers cheaply but I don't think I don't think 2.6 comes with the pro does that approximately I don't know later that's 2.6 the next right that's a fast version that's not 2.6 2.6 not gonna come with breaking changes and to yesterday their proxy actually doesn't make deep watching cheaper it can no it does not unfortunately all right done will the keep a live tag be restricted to component or will it be extended to support the view router it actually already supports router view so done when webpack template is going one is web pack template is going to support web pack for I've seen use the use the i3 the web pack template is only for CI two so CI three comes with web pack for so I'm just use use the new thing okay can you explain what checking off progressive web app support and you CLI provides when would we want to use this feature so P double a would take some time to explain what it is but you should definitely google it because it's you know Google do you they were pushing it appreciate that so the plug-in pretty much adds a bunch of standard files for an app to be considered Pete okay in addition it helps you or generate a serviceworker when you're doing when you're doing a production build and then helps you register that service working that's pretty much pretty much it is cool you press related how do you press hold up to very large now we could talk me yeah got one really get down well if you get something similar to time slicing that is coming to react this is part of the things we do plan for 3.0 because entry point now where we are trying to refactor the internal so that each part of the the whole view system can be individually packaged up so we will have a swappable scheduler for updates we will have a swappable reactivity system or an even a swab a bowl renderer so most of these things will become so views internals will become more composable and that allows us to say ship an experimental scheduler that has fiber line capabilities we don't plan to do something that's exactly like fiber it's whether it's you know the size and the gangs is still something we're trying to gauge but the architecture first three is definitely going to allow us to experiment with alternative ways of scheduling work and that's kind of like a first class design goal Wow that sounds cool well will it keep a live type your shits already answered for view two point five the implementation of next tick was changed to use macro instead of micro tasks this cause various problems and mobile browsers all these problems be solved in two point six yes will revert to micro tasks okay right now what's a recommended framework to do mobile apps and UJS well it's kind of what do you think might be worth considering we're worth considering if you're doing if you really want to do native you can do may this script view or weeks if you want to do hybrid you can do quays it or try on ik four or you can just do peter play using the view COI so it really depends on what kind of app you're building I think each of these have their unique strengths cool can you explain what the idea behind view dot config dot J s yes well the idea is we want to provide a easier interface because like we want to limit the number of options view dhaka VJ s but eventually it has to be there right so some of the options exist solely because it's there to save you the trouble of actually changing like five places in your web pack config just to do one thing right if changing five places in your web pack gothic and making sure they're like correct then we should you know abstract it into one single option nice DUI we can add plugins but which what to extent can we configure them yes this you should ask key on but he actually if you go to our documentation in addition to plugging devta mb you have the plugging UI development guide as well so that's a full guide talking you through how to add a custom panel to the view UI to do your own thing nice so one thing I didn't show off during the session was we we have an webpack add-on for the UI that gives you a real-time dashboard of your web pack don't it analyzes your current build cycle like what module is taking about how much space and all that girl's pretty cool alright when you CLI support the dry run concept we enjoy with angular CLI would output messages crys will be built each use the file set this is something we currently don't have on the roadmap but you're welcome to open an issue and discuss like explain why you think that's a great feature and we won't consider that interesting how correctly reset UX state how to correctly reset the UX state well didn't go away where did that question go oh there it is came across the initial state and JSON methods so you should have a function that returns a fresh object and every time you call that function you'll get a fresh fresh piece of state all right cool Evan consider adding this at the top of the documentation of you sometimes what is this oh god this is like that you come to us I believe they'll everybody dancing yeah and we need to somehow get that they need to see this how do I convince a corporation team of 20 people using react that UJS is a better option I've seen the code they have and it can be done with you as well but it'd be much easier for the upcoming juniors to understand well this is a very like it comes up from time to time and a lot of times it depends on who is actually able to make that technical decision like are you only talking to technical people or are you talking to someone who is the project manager who not only look as a technical side but also at say like what are their priorities do they care about like do they like value say this thing must have a big company backing do they value something like being easy to pick up right like for you need to kind of understand who is the stakeholder who is the decision-maker and what do they care about or they when it comes to choosing a framework what are they afraid of right then you can sort of figure out whether it's possible to convince them like for someone who think that mega-corporation backing is a must for technology then it's really hard to convince them to do something like view but if they don't really care about like say being a big company or even they think Oh independent projects are great like it means we can even potentially sponsor them you know to influence them alright that's different story or in some cases do they do you care about how easy it is to hire people or train people are you trying to expand the team quickly it could be hard because it could be hard to hire we have experts they can be expensive they can be hard to come by but you can pretty much higher any decent JavaScript developer and train them on the spot and they can be productive with view very fast so is the ability to be able to quickly ramp up new developers an important aspect in your current project like all of these things kind of comes into play and you need to find like analyze the problem analyze what this decision-maker is looking for in order to to find the arguments that sort of address their exact needs so interestingly we are thinking of writing a dedicated guide on convincing your boss to use view and we will be welcoming counter arguments from your boss so that we can help you figure out how his idea was the hat that's great how to convince your boss to use you like I've never seen an open source project like even tried it yeah something like that I have an app running on a view web pack template what is the best way to make it SEO friendly now after almost finishing the app integrating pre-render spa plugin do you serve a renderer similar solutions to next let's see a question like after it's all built out right and I need to make an SEO friendly what's this I think pre-rendering would be the safest bet because if you didn't belt it with say server-side rendering in mind you probably have a bunch of places or patterns where you like relied on the Dom API or you use the library that doesn't work in nodejs all of these can be roadblocks when you're trying to migrate it to surf siren or en it can be a lot of pain if it's an afterthought so but pre rendering using say something like phantom Jas or a puppeteer right because those are real browsers so you wouldn't have any compatibility or environment problems so that can be much safer the drawback is pre-rendering kind of relies on your content being mostly static if you have like constantly changing dynamic content it could be you know pre-rendering wouldn't really do that rich your page needs to have like a static State yeah you you kind of have to have a periodic cron job just like reprieve render the page every on an interval that could be you know extra work as well so so I guess that's kind of a unique challenge because you already have it built you can definitely try to migrate it to something like next but because next I think nuts should be your source code if it works in the template you should be mostly compatible in next the only challenge would be whether you have used api's or called Dom API as in places where you cannot if you want to do service our rendering and should that it really depends on how you've built it so I think if that proves to be too difficult you probably should try pre-rendering all right okay let's see if we can super lightning round okay already but I don't want anyone to feel like we can get to the question so let's just try it as far as I'm concerned is it better to do everything jump where can we buy it buy your shirt oh yes whew dodge threat list calm view dot thread list calm I'll lick it nice and tell us about that website how I should show people that yeah you doctor was talking about check that out cool oh here we go yeah what oh did you lock up now - hold on my browser is fine yeah look at that oh maybe we got the question still there we go is this still alive yeah I think we're good is there any possibility to have more documentation how to use build the UGA s at a really customizing installation with some part not use geologic web pack not template loader hmm how do you interpret that question I'm not sure if I understand yeah all right we can just move on oh we answered the tshirt question would it be possible for view see live three provide a way to let third-party plugins configure the web pack dev server config or a way for the server config to be exposed interesting yes I think so we have an API Cod configure dev server so you can already do that yeah cool similar to how you can tweak the web pack server web pack copy you can tweak the dev server convict as well right is there any possibility to have a week that's the one are there plans to support reactivity for maps and sets in a future version of you and if not what's preventing it yes so this will likely happen for two point six so and surely when two points than when we switched to proxy that's even more of a given nice SSR or pre-rendering feels unnatural Google can render Jas do you think will react to state in the web and the attacks won't be eating anymore they realize that recently like that it's kind of a lie the whole idea that the dead think that wrote that Google's SEO BOTS can't run job as good because it can it can only run synchronous JavaScript the trick is if your page loads then it has to fetch asynchronous data Google doesn't really know how long issue wait for the data to come back so pretty much I think the standard way for them to determine the page has finished executing is when there's no activity on the main thread for a given period of time so if your data comes back after that period of time they think your pages is already idle and the biggest the bigger problem is like they can't really say wait until all the pending requests have come back right because there could be more chain requests or you can have a set interval that's making requests like you can't wait for you forever so it's not 100% reliable but like in the end we obviously hope that Google can figure it out so that we don't have to do all of this anymore yeah as far as I am concerned it's better to serve view files verse via HTTP servers but if I have a case when users need to download HTML files but all inline assets inside what can I do actually the behavior is almost exactly what I need well this might be to question sorry Alexi what vias cuz extensions would you recommend while developing with you Vader that's ve T you are yeah or veto or or whatever alright cool are we going to get anime titles for view press releases like with you haha yes we can consider that thanks if you press is there going to be support for with base for images without having to create HTML the image tag mmm yeah maybe you can open an issue Inc we can see how what we can do about it nice suppose I have a CMS that's publishing content to a database and it's stored in JSON could you press render that content server side with hydration basically I make a traditional MVC for you press it's a loading data of a database I guess instead of markdown yeah files currently we only consume markdown files from the from the file system but as we said maybe we can extend it to accept an alternative data sources that's all like technically feasible it's just something we are not doing yet so it depends on how much demand there is right it sounds like that'd be a good launcher for you to contribute to it yeah contributor I remember one of the guys when I got deep into rails caching I found something that needed to be fixed and I submitted an issue and David hunter Mary Hansen replied pdi-p di please do it okay wow that's like I was like here's an issue and he was like PDA please do it like you just said like that's what you'd respond to some requests with like please do it and so I was like okay asked a friend of mine who got on the court like let's get together let's let's try it and so we did it we submitted nice and that's how I got one of my two core contributor badges you know into the real source code the other contribution was actually you know how rails would PluralEyes stuff uh-huh and so you know it would it would take you know what like posts and it would change it to posts all right well you know I taught rails for zombies and it would take the word zombies and it would try to make it zo mby ah zombie right and then it would screwed everything up and so that was my other request was I got zombies into the source code rails great contribution yeah I contributed zombies what is the current status of web components view implementation well so long story short we believe you web components is better used as a encapsulation mechanism for shipping components to be used in non view contexts so you see our i3 comes with that capability you can build your view source files into a web component that is that can be used on other pages all you need is for view to be globally available on that page yeah we there's a story in this week's official view newsletter and podcast but where I think it's Anthony Gore published an article on exactly that being able to wrap your view components in web components so that you could use it across other frameworks yeah will there be any native integration packages for use with graph QL well Gilliam has been working a lot on a polo graph cute view of polo and anything that is related to graph q I'll just follow him on Twitter and you'll see all the stuff coming out and we also covered this week in the news a his presentation that he just recently spoke on I think it was you Barcelona take a look at his presentation his Twitter Hanna is a chrome a cream yeah yeah what are the plans for view press can we wait for a new word for us well that's not exactly what it's trying to be now this is totally different now you'll stay focused given all the effort will it make easy given all the effort to make it easy to add plugins oh gosh I hate it when that happens it's like will there be a view plugins config that we can use to set up plugins we want at the start of a project that's that's pretty much the view RC file in your home directory you can hand edit that file creating your own presets yeah alright when will 3.0 be au that's a hard question right like yeah right not this year not this year not that's a good answer I think it would again talking to David hi my hands and he was like never tell people dates never commit a glee because he'll always have already regretting the roadmap although there's some people that are watching right now that would like want me to like hurt you until you say when yeah I mean I think we've realized I guess it's common for a software engineering right like deadlines never get met oh yeah yeah but they shouldn't commit to a more on the more serious note thing is I personally am the kind of person I want to make sure the thing is good rather than say ship it just to so that we can meet a deadline right we want to make sure everything we actually ship is solid and is here to stay we don't want to rush stuff and then get absolute and in two months or something yeah yeah I can't command-click class names from the template ins s FCS I mean the styles are literally the same file why doesn't this work I don't know you can say I don't know that's okay I developers I know as an engineer I find it so hard to be like I'm sorry I don't know the answers to this question and if we were in like an audience of people we would say like does anyone have the answer to this question all the time are you planning to develop the UJS content to be used for native mobile apps we kind of talked about that earlier are there plans to fix this issue and like roll rock-paper-scissors you know what is it should we look at the issue we have plans to fix all the issues there you go oh look it's already closed do you component can an implement an interface we're not gonna take the time to look at it again another day is there planned to rework UX namespace system to have more synergy with the es6 modules that's actually a good question as well so we probably won't do that in 4.0 but we will likely consider it in coordination with view three when we consider the type friendly API design for all the libraries in the ecosystem so hopefully that's when we'll not just yes six modules but also like how the API can play nice with the latest language features and type checking and I like that answer I understand the mean of just dominionist collaborate with them instead of creative a new one but is there any possibility considering a more core solution that were posts even if native so we're talking about mobile considering a core solution for native script or like a mobile solution like like to be honest the the reason we're not doing it is because first we don't have the bandwidth and second I don't have the expertise like I'll tell you that because I'm not a iOS developer I'm not an Android developer maybe I'll be able to build an iOS app but I'm not the level where I can say I'll build a native rendering engine that can render arbitrary interfaces so don't next to point out what but why you should go to a zoo contributor days and asks Sebastian yeah ask the brothers because you don't work on next I don't any plans to add something like J s talk to automatically create you press documentation oh they're talking about leg documentation inside the code that generates view documentation that's actually an interesting idea we might be able to so that should be doable once we get the plug-in API figure it out the idea is you can extend the web pack loaders the web pack configuration to have a loader extract the GS dock from your JavaScript files and then pass them on to the markdown editor so should be doable once we have plugins cool is there a key event on document element in view or should I create event listeners document element well you have to do that in JavaScript because you don't render the document element with you all right what are Evans thoughts about integrating bjs with asp core applications this is a recommended approach or if you still best using nodejs tax um well I'll be honest I don't use asp.net so I can't really give you a in depth answer on that but as far as I know there are plenty of community users doing that but like the perfect use case is you probably want to have your front-end so I would say if I were doing it if you're but it depends so again it goes back to what kind of apps you're building if you're building a sample page application it really shouldn't matter that much on what kind of back-end you're using because your back-end should be primarily about the data logic the business logic and exposing an API for your front-end to consume if your is thinking about saying doing multi-page winter apps part of it is like rendered by your back-end and part of it is handled by view that is kind of a whole different question but if you're doing if you want to make sure the separation is clean you do a single page application and just let the backend do the API nice precisely how can we help you make you even bigger than it is right now I guess well I can't really say how precisely you can do that otherwise I would have already asked you to do that but I think any kind of support is really great a lot of the a lot of thing is like go to local meetups or create your own tell your fellow developers about it if they don't already know about it create your own library make other view developers lives easier make the ecosystem bigger you can try to learn to contribute to the documentation or the source code or attending the contributor day to learn more about that and just using view to build more awesome stuff for the web I think that's that's one of the most effective ways of support supporting you because how successful view is is really not measured by say how big or how many get star or github stars we have I think it's measured by how many meaningful apps have been built and affecting other people's lives on the web right like if I can precisely collect the metrics about how many human on the planet are using apps built by view I think that will be the most meaningful metric for me right like that's like kind of like what the work I've done is sort of touching other people's lives and I think that's so if you use view and you build an app you've got a great app that house other people that's kind of helping view because you know using successfully come to view contributed days also you know as a teacher personally you know I love when I find something that's difficult when I find something that I run into it I think other problems people are gonna have you know blogging about it writing about it don't just solve problems here and not spread the word you know if you do write a blog post or create a library that you think other people should know about take the time to do a little bit of self-promotion go on to news bjs org and submit it as a story you know that's how you get covered that's how you get people reading your blog post that's how you get the word out is you submit it to us and you know Damien and Adam and I will take a look at the stories and get them into the newsletter and get them out yeah sharing is caring all right all right now for a very serious question and I'm serious at them all Wow Evan what is your favorite anime um I'll give you a hint I gave that as the code name of the 1.0 release okay yeah you have to go look that up like this no I remember that I just like no I'm saying they have to go yeah you have to go look at it I want to know what it is but but I'll have to go look it up what's your favorite do you plug in so far he doesn't play favorites haha I don't you know that I don't have favorite plugins I use them when I need them how about yeah what's what's what's like a useful plug-in that you found yourself using a lot I love you router all right we got the question questions because me doubts about you and Maura Diaz is there anyone we should contact that DJ has to make it official there's no such thing like a fish actually we so Ben Han is in a chat right talk to Ben Han Ben Han is doing a doing a website doing a website that centralizes all the view meetups around the world to make it easier for people to discover meetups in there oh that's area so yeah talk to him I think his Twitter handle is like Banco de zan anyway like look for Ben Han and cool yeah I think we were tweeted some of them yeah cool usf sees is what makes coding G so nice for me it's a great developer experience so that coming up with that so thanks for coming up with that thank you well yeah I have to give the credits where it's due right this is so the vs SFC formats is obviously equal inspired by a bunch of other like prior arts for example I think web components was kind of in very early stages when I get got the idea I was looking at a polymer like zero point something and I'm like so this has to go on the fly in the browser what if I can do it at compile time yeah this is Ben's Twitter yeah I'm gonna put it in there and that would be great and at that time there was also a Google internal thing it was like internal proof-of-concept or just like a deck about an idea say what if we can put things together that was along the same vein but when I did view the single file format it was kind of just like it clicked I was using browserify I was like what if I can just like write a browser if I transform that compile this thing then all the these ideas that I've seen becomes a reality because like those were really like kind of just like talking about what if we could do this but when I was looking into the browser if I transform a pea I was like I can actually do this right so I just did it and then then we had the web pack loader and then I discovered how insanely complicated but powerful web pack is so fuel odor is actually a pretty crazy piece of software any of you think about nice what is the best way to do dollar sign wads multiple data instead of creating a computed property multiple data you can insight so you know you can use dollar watch with a function right so inside the function you can return multiple values as an object and then you can't destruct that object and a call back and do whatever you want with it go and then what do you think about your creature will it rock the world and become one of the most used ok I think main creation okay um I hope it will well actually I mean for me it's really like being the most uses not to go right like the goal is just for those who like it it's about getting better than what it currently is it's not about say getting better than the others it's about helping people yeah exactly right like I mean we have so and also like I think I want to take this chance to talk a bit about like the the competition between these frameworks like there were there are people who like to use warm edifice for these and I hate that right like there was an article like a medium about like the war between frameworks and people are like you taking weapons with logos on it and that's just like horrible alright like yeah like me and say other like framework developers we don't like tweet each other as enemies we are more like we have a common goal of making web developers lives easier and in a sense the competition is something necessary that forces us to do our best in order to write having the competition helps you see what you're lacking what you can learn from them what you can do better than them and that's sort of I take competition as something that kind of pushes you to do something better instead of the goal is to do something better and competition is the fuel of that competition is not the end goal so you you're not getting better so that you can win the competition you participate in the competition to get better right and I feel like if there's any competition here it's about the developers out there that think it might be a good idea to write their own framework if you make if you're not using one of these great frameworks like if you or react or angular and you're still fighting this battle where people don't believe there's value there maybe that's maybe that's what we're fighting together yeah I think like it totally so don't let people like talk you down when you're like oh yet another JavaScript framework like it's fine like you can do it like people will so if you post it on to hack and use people will like scold you people will laugh at you but it doesn't matter right like if you're solving someone's problems yeah mm-hmm it's open source right no one's saying like you cannot publish the library that has already been doing a similar thing like I guess the idea is if you're sure you found something that a way to do this better than the existence solutions then you should do it but do do make sure do your research right like make sure you you've like looked at all the things and make sure the thing you're building is in fact solving something that the existing solution that do not so you do need to have a reasonable value proposition but because there's about a 95% chance that somebody already thought about that problem and somebody already has a piece of open source out there and maybe you should contribute to theirs instead of yeah we contributing is also cool it's it's true that because of the saturation of the space the room for you to actually come up with something that's completely novel is getting smaller it's becoming more challenging but also it it means if you do come up with something it's definitely providing some great value so that I can survive I think it's a good note to end on today sorry if we can get to last few questions but we did like 50 questions that was ridiculous but really appreciate you guys taking the time to watch this webcast I know some of you have been with us from the very beginning sorry if you had any issues I have to thank crowdcast IO our sort of sponsor for this as well as I have to mention new mastery comm which is where I'm teaching and you know I'm also supporting you because basically if you become a view mastery subscriber 25% of the money that you give us goes back to support the view project and all the stuff that Evan and his team are working on so and I know if you go on there right now we don't have a ton of content yet but by supporting us you're supporting all the free stuff that we do the podcast the free content the cheatsy we create and maintain and all the paid stuff that we got out there now and I just produced a new video that just got released today which really takes the reactivity engine and combines that with the rendering engine to dive under the covers with you so you can really see how it all works it will blow your mind I promise so thank you guys for watching any last words
Info
Channel: Vue Mastery
Views: 19,962
Rating: 4.9432626 out of 5
Keywords: vue, vuejs, javascript, Evan You, html, coding, webinar, Gregg Pollack, webdev, web design
Id: 8oFexUl7_DE
Channel Id: undefined
Length: 98min 39sec (5919 seconds)
Published: Thu May 31 2018
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.