This is a question I get a lot. Should Ilearn wordpress to create websites orshould I code them myself with html cssand javascript? A lot of videos aboutthis topic don't really seem tounderstand what wordpressis. There's a lot of misconceptions aboutwordpress. People think that it'sa page builder that's only used to buildsimple websites and blogs,while if you want a custom webapplication we have to code thatourselves.But the reality is that you can actuallycreate any kind of custom web app withwordpress at any level of complexity. I'mnot sure if a lot of people know this,but wordpress is actually just a genericweb framework.It's more similar to ReactJS or Djangofor pythonthan it is to something like wix. And Ialways recommend developers to at leasttry wordpress.It's another framework, but it's verydifferent from the frameworks that wewould be using if we were custom codinga website.Different frameworks offer differentlevels of functionality. On the low endyou have react js, which only rendersyour data.Somewhere in the middle, you have ruby onrails, which sets up a lot more of yourapp for you.And then on the far end of the spectrum,we have wordpress, which offers a ton offunctionality out of the boxthat would save us months if not yearsif we were to recreate thesefunctionalities ourselves.And by learning wordpress, we actuallyexpand the opportunities that we have. Weexpand the amount of projects that wecan take on.Believe it or not there are somewebsites that we simply can't createusing custom codein a reasonable amount of time. If alocal business asks us to create awebsitewhere they or their team can go on andadd content to it,think about how many features that wewould need to implement for them tohave a website that's very usable. So afeature list could look like this.If we were creating this with customcode, it would literally take us years todo it.But with wordpress, this actually givesus the opportunity to take onprojects like this. So to show you whatwordpress can do and how much time itcan save for us,we're going to go through an actualwordpress website. I'm going to walk youthrough and show you, visually, thefeatures that wordpress offers,and try to explain the amount of timeand work that these featuressave us. So let's say that we have anexample wordpress website here.So we have a home page with a bunch ofother pages.Let's say that we want to add a new page.So we're going to go through that flow,I'm going to show you all the featuresthat we're going to encounter whiledoing this flow. So let's say thatinstead of using wordpress we're handcoding our website, and to add a new pagewe would have to create an html file,we had to write the html for our page,and we had to add some css if necessary.In wordpress the process is we log intoan admin dashboard,and then inside the admin dashboard wejust type out the content for the page,and it will create the page for us,without us having to modify any code.So let's walk through that workflow, andI'll show you all the features ofwordpress.So the first step is to go to /wp-adminhere,this is the url to our admin dashboard.And you'll notice that we first have tologin. And you can see already thatwordpress gives us some really usefulfunctionality out of the box.So it gives us user login flows and alsogives us the password recovery flow.If you've ever coded this from scratch,you know that this is actually prettypainful to do.You have to figure out where to put yourcredentials, you have to figure outwhether using JWTs or cookies,you have to figure out how to secure allof your resources from your api,and you have to figure out how to sendthose emails and reset those passwords.So wordpress pretty much takes care ofall of that for usright out of the box. I'm gonna go login right now and create a page and toshow you some other features thatwordpress has.So when we logged in, our credentials arelinked to a userin our wordpress website, and we can seeall of our users here.And we can actually create a lot ofusers and just view them all in ourbrowser.Usually when you create your own websiteand you have users,you don't really have this ui where youcan go through your users and look atdetails of each one.You actually have to build that uiseparately too. Also, when we create anew user,at the bottom here we have differentlevels of access.So this is called role based accesscontrol, RBAC.This means that a user withadministrator access has control to allof the website. We can change the settings,we can change the plugins. And a userwith just a contributoraccess, they can only create new pagesand create new content.So if you've ever written RBAC fromscratch as well,then you know that this is actually alsoreally really painful to create.So even if we were creating a customwebsite with javascript or python,or whatever the latest technology is, wewould eventuallystill want to create this user loginflow, we would want to createthese access levels. So we can't escapecreating these features if we customcodeour website. So I'm going to show you howto create a page in wordpress now,we'll go into post, and we're going toadd a new post, which is adding a newblog post.And you can see right away that we'renot writing custom html, we're notwriting html,we're not writing divs and p tags andbuttons. We have this visual editor.If we were to re-implement this feature,let's say that we have a web appand we want our marketing team to beadding content to that web app,it will literally take us months tocreate this visual editor.So with wordpress you also get that outof the box. And you also get a lot ofdata associatedwith your post or your new page. Soeverything that you create in wordpressislinked to everything else in wordpress,you don't have to manually set up thoselinksyourself in your database. So oneother big feature that I want to showyou is sort of the image gallery or themedia,the media library in wordpress. So if youwant to uploada photo or a picture to your blog, solet's say that I havea graphic here that I want to upload. Andall I have to do is drag and drop intowordpress.So what that actually does is that itsaves our image insidethe media library, and now we can alwayshaveaccess to this image anywhere else onour site. So I don't have to worry aboutwhere do I save the image, you know, howdo I distribute the image,how do I link the image to differentdata types in my database,wordpress takes care of all that for us.And another thing that people don't knowabout wordpress is thatwhen we upload an image, especially a bigimage, wordpress actually createsmultiple copies of itat different sizes, and it will take careof deciding whichsize to show to optimize our load time.So there's a lot of small optimizationsgoing on, a lot of big architecturaldecisionsthat wordpress makes for us and gives usright out of the box,so that we don't have to do these thingsourselves. So that's just a sample ofsome of the really valuable featuresthat wordpress gives usright out of the box, we haven't eventalked about the commenting system, orthe moderation system,and the plugin system. Wordpress gives usso much functionality right out of thebox that if wewere to recreate this ourselves in acustom website,it will literally take us months if notyears to recreatethis functionality. But then a lot ofpeople look at these features and theysay it's nice, but you can only usewordpress to create blogs.If you want to create a custom web appyou have to usehtml css and javascript, and you have tocode it yourself from scratch. And thatbrings us to the secondbiggest misconception of wordpress, whichis it's only used for creating blogs andcontent websites. So back in the day,everyone thought that wordpress was justfor making blogs.And then a plugin called woocommercecame out and all of a sudden you can setup a store,like a complete store with a cart, andcheckout process, and order historyinside your wordpress website. And all ofa sudden wordpress was now known forbloggingand for e-commerce. But then anotherplug-in came out called MemberPressthat turned wordpress into a learningmanagement system.And another plugin came out calledfusebox, which turned wordpress intoa podcasting website. And there'sprobably a lot of real estate pluginsthatturn wordpress into a real estatelisting website.The point I'm trying to make is thatevery timesomeone creates something new withwordpress, the definition of wordpressjust sort of expands.But the reality is that with wordpressyou can actually build any custom webappat any level of complexity. I'm not sureif people realize this but wordpress isactually a generic framework.You can build any web app you want withit. In fact, you can actually buildyoutube.com and ubereats.com the website,all built off of wordpress. And that'show we're able to create all thesedifferent pluginsthat do a lot of different things thatare not necessarily related to blogging.And the way that this works in wordpressis that when you first install wordpressyou havea data type in your database called apost.So inside the post this represents ablog post and inside the post you have atitle, and you have the content,you have a lot of information related toa blog post.And then what you can do is, you cancreate a theme. So the misconceptionabout themes is that it only changes thevisual appearance of your website.But in themes, you actually createsomething called custom post types.So this is just like creating customdata types in your database.You can create a post type for a youtubevideo, you can createa data type for a channel, and create adata type for a playlist.And you can create custom apis for thesedata types in your database.So given that background you're justsort of creating data types in yourdatabase,and you can create any api you want tomanipulate those data types,and how is that different from creatinga web app from scratchwith HTML CSS and JavaScript and someframeworks like ReactJS and NodeJS?There is no difference between those two.So what I want you to realize is thatcreating a website with wordpress isvery similar to creating a website withany other framework.It's a generic framework. Now with thatbeing said, I do want to say thateven though I recommend learningwordpress, I don't recommend getting awordpressjob. The reason for that is that the jobmarket for wordpress is utter garbage.And the reason for this is becausewordpress itself is sort of in a weirdmarket position.So if a company wants to create acomplex web app,they could create it on wordpress, butthese companies have enough moneyto hire a team of developers to createthe web app on some other moderntechnology.And so the companies that actually havea lot of money, don'tspend it on wordpress apps. And the otherkind of companies whodon't really want to make complex appswith wordpress, like your localrestaurants,or your local your local fitness coach,they usually just use the core featuresof wordpress and they don't really gobeyondsort of the blogging features or thecontent management featuresof wordpress. So I hope that made senseto you. We learned thatusing wordpress is actually not thatmuch different from custom coding ourwebsiteand using another web framework. And wealso learned that the reason that wecustom code our websitesis not because we can't create customweb apps on wordpress,it's because there is no market forwordpresscustom web apps. And so that's why westick to learning html css andjavascript,because there's actually a job marketfor these technologies and for theseskills. Thanks so much for watching myname is Simon from supersimple.devI want to make a tech career possiblefor anyone. If you have any questions orcomments please leave them down below.As always you can contact me atsupersimple.dev/feedbackI'll see you in the next one.