 Hi everybody, I'm Ben Dunkel and happy to be here at WordCamp Rochester. Thank you to all the organizers and sponsors and I'm going to talk about how, my title is How Close Are We To No Code? Just a little bit about me, I live in Buffalo, I run a Buffalo or I help organize a Buffalo WordCamp and Meetup Group. We're on meetup.com. If you ever want to jump on our meetup, it's every Thursday, first Thursday of the month at 7 p.m. on Zoom, we used to do it live but we've been doing Zoom lately. So let's get right into it. So when I say this word, I'm referring to our people that make communication designs. That's always been designers, business owners, marketers, people that make publications, magazines, brochures, people that put things out there that are used for mass communication and in this case for us, we're WordPress users that are at this conference. So that's who I mean by we. So a little bit about the way this talk came to light is at the last WC Buffalo which we had back in April and we're going to try and run it again next spring so look forward to April or May. I did a talk called The Death of Child Themes and what I was trying to figure out was as I keep making more WordPress websites, at what point do I not even need to use Child Themes anymore? At what point are the themes that you use capable of extension without extra coding, without extra folder management and files that go into it? And now that I've been thinking of it that way, I almost could have named this talk The Death of Themes because I've been on a mission to build websites without ever doing anything beyond installing WordPress and that's it. And I'm trying to see how far I can go. So the last few websites I've designed have taken that approach. Let's see what we can do out of the box with WordPress and once we get to a point where we can't go any further, that's when maybe we need to put in a different theme or a child theme or maybe we need to install plugins or maybe we need to install non-native WordPress blocks. So I called this, how far away from no code, but it helps to talk a little bit about how I'm referring to code in this case. So code goes with websites, traditionally HTML, CSS, particularly for WordPress, PHP and more currently JavaScript as ways that we code websites. But I want to think of it in a broader terms as anything that goes beyond what you can do with WordPress. What comes in and you install WordPress and you log in, anything that you have to do that requires additional installation or customization or coding, I'm going to call that coding code because we're talking about no code. We don't want to do those things in terms of how far can we go. And so a little more about the word no code. It's kind of a buzz term in the development community for ways to make apps and other very complex systems without touching code. Can we do that? Do you need to be a developer to make something? Do you need to know how to edit, write, debug, fix and create code? I've always likened that term to WYSIWYC. What you see is what you get, no code. So that as I'm doing something visually on the screen, I'm seeing it take place and emerge in real time. I don't have to take that code and look at it through another window or put it into a compiler, make it into an executable app or something. I see it as I get it. So what you see is what you get. That never works. What you see is what you hope you get because you never really get 100% of what you think you're going to get. So it's not really a standard. It's a loosely defined term, no code. And I group in the word Gutenberg, which we hear all the time, and blocks and full site editing. Those things are all in my mind, no code. There are ways of building stuff without having to lift up the hood, to make things using the tools that are provided for you by the WordPress system. Why do we want to pursue a no code world? Because we want people to be empowered to do things whether they're good at coding or not. We want your design sensibilities, your creativity, your brainstorm. This should be able to be realized without that extra layer. That's I think the dream of no code that someday we'll be able to do that. It's an empowering term. It makes us able to make things without relying on other people's skill sets or having to pay other people, being able to do it ourselves. Making the process easier, essentially. No code is not a new term or whatever you want to call it. The programs that I'm showing up here represent ways that we pursue that dream of making things ourselves. Back in the days of print, there was no web pre, early, mid-90s, everything was print. You used PageMaker or Quark, InDesign, which is still the industry standard for print design. I think it's one of Adobe's most successful products. There's been some unsuccessful products under the legacy web column here. I don't know if anybody remembers GoLive, but that was my first WYSIWYG web editor that I used, which was kind of taken over by Dreamweaver, as well as Fireworks. These were ways to make websites without coding in some ways. Front page was Microsoft's piece of junk, and then they tried to follow that up with Expression Web, which was another piece of junk. I have a funny story about Expression Web. I don't even remember what the conference was, but they were handing out Expression Web install CDs. I had like five of them by the end of the thing, and I put them on eBay, and I sold each one for about $250. I was like, this is the most easy $1,250 I've ever made in my life because I'm never going to use this garbage anyway. I don't know what happened to those installs, but whatever. Then we look at the modern web of the world of no code. If you want to make a website, you can use Wix or Squarespace. I think those are very commonly known sites, Weebly. And now if you're a, there was one I wanted to put on here, which is Webflow. If you're more of a coder or more of a somebody that's got more development skills, and you want to use a more WYSIWYG approach, you can use something like Framer, Webflow, or WordPress. I think WordPress, though, kind of the way you use it, it could be considered more of a Wix or a Squarespace, or it could be considered more of a developer's tool. And there was a time when if you were a print designer, you had to know code too, or at least you could use code effectively. This is an example from Stack Overflow of somebody asking how you would code something in PostScript. And PostScript is like HTML for print. So you could open up a text editor, write that code, and create a basic printed page. So it's not that print is that much different, but it was really easy to take print and go to a no code world. Because in print, we have constraints, we have, we know how big that somebody's going to be seeing that ended the final document. We know how the context that they're gonna be looking at it in. And we don't know those things when it comes to web. So WordPress is like many tools, it's not perfect. But WordPress is less perfect than a lot of tools that people use. And over time, it's why WordPress has seen some migration to these other platforms, or when people are onboarding onto using making websites, WordPress is becoming less and less of a popular choice. And I think that's, I don't know if that's true or not, but it's a sense that I get, that people are being told, don't use WordPress. It's so antiquated that they just don't have the tools like Squarespace does, like Wix does. You should really build your website using those things. And that's because there have to be really rigid constraints in a WYSIWYG environment, in a no code environment. You need to be able to test and roll out features that aren't gonna break people's existing sites or apps or whatever they're doing. And you can do those things with proprietary systems like Squarespace or Wix. You're not gonna break a million websites like, every time WordPress releases a new version, it's just all over the web, all the things that people were using that are broken. And that's why they're very hesitant to put new features into it because that's a big concern. There's a big net there. When I say OSS here, I'm talking about open source software, which WordPress is. Open source software has a lot of challenges to keep up. Open source is great because people volunteer and make it, it's free, and you're able to learn from it and use it for your own purposes. On the other hand, open source has to serve a lot more people and has a lot more responsibilities in that way. For a long time, WordPress used the tiny MC editor, which is when you look at your older websites that need to be updated, you'll see the classic editor, there's another way that people talk about it. And that was it, what you see is what you get sort of, if you wanna look like you're text bold, you hit the little B button or if you need some list items, you can click one of those two lists. Very limited capabilities. You can't do much beyond making your text have a little bit of formatting. And so that was where PageBuilders emerged. Is everybody familiar with what a PageBuilder is? It's some, okay, so it's say, just a way of making WordPress more powerful and do things that people wanna do, like have their own custom layouts and have a slider that actually they can see working as they edit the page. And PageBuilders emerged like BeaverBuilder and with Divi and Elementor, because WordPress wasn't accommodating that need. It wasn't meeting the needs of people that wanted those things. And that's why Gutenberg emerged. That's where the Gutenberg was in addressing this problem. So is Gutenberg no code? And it isn't and it probably will never be, I don't think anything can ever be truly no code. And when I say no code, remember, I'm saying wizzy-wig. I'm saying full-site editing. I'm saying not ever having to do anything beyond the core set of tools that you're given. But it's good to look at how close is WordPress to that because that should always be the goal. That should be where we're heading and we should strive to bring it closer as much as we can. So I thought about how you can describe any communication interface, print, web, anything that we're using to communicate an idea or interact with a user. And these are the core parts of it. Layout, how we divide up a space, color, how we fill it with colors and establish contrast. Image, how we incorporate images within a layout or an interface. Typography, how we use text. Interactivity, how we allow for people to perform actions on our website. And accessibility, how we make sure that the content that we're serving is reachable by the widest amount of range of people. And those are areas that WordPress has some, Gutenberg has some great tools, but needs more. So let's take a look at each one of those. So as I've been working in Gutenberg and trying to do as little coding as possible, these are the what I want and what I get wizzy-wigs that I see. And this is just three columns. Each one of them has sort of a card with a panel. I've got a title in here and then I've got some text below it. And WordPress lets you do that. It has rows, it has columns, it has stacks, which is kind of like columns. But when you, if I was gonna try to make this in Gutenberg, I would create a three column layout. I would fill each of my columns with white and then I would put text in each one and I would get something like this where the column would expand upwards to fit the size of the content inside of it. And so I would, most people, they see this happen, they go, oh, I hate blocks. Let's install a cadence row or that's a, and now when I say cadence, I mean the new thing in WordPress as I'm seeing it are extension blocks, blocks that fill the gaps in a way that plugins used to. Not that they're any that much different but you don't really need to do a plugin a lot of the times. All you'll need to do is just add an extra block that doesn't come inside of WordPress to the start. So that would be what most people would do. At this point, I would probably do that too if I didn't want to code. If I had to though, I'd open up my CSS file and just tell them to all line up using code. Layers. So a lot of times people look at pages built with Gutenberg or and they go, why is everything just, why can't I do this? Why can't I take my words and put them a little bit over on top of my image or how do I shift things around and put things exactly where I want them to go? And there's a lot of page builders and plugins that'll let you click on that little dog and move it over to the right so that the text is over top of it. And people want that. When you do a print layout, you're doing that all the time. You're making a poster, you're putting layering in there. There's this three-dimensional. This is part of that layout thing. I think of it as like the Z part of it, X and Y are rows and grids and layers is that third layer. So those are things that are lacking. If there was a better way of handling that, we'd be good. Colors. WordPress has made some great progress with colors. There's a really good color editor. There were bugs with it. It gets better and better and better every time. But I want control of colors. I want my gradient to have little stops along the way. And Eric back there's in my design class right now. And you're dealing with this gradient editor with your latest project and it's really powerful. I can add stops along the way. I can change the colors of them, move them around. And in WordPress right now, I can pick a gradient. Sure, I can have a start color and an end color. Other than that, beyond doing that, there's not a lot I can do. So I want to see better gradient handling for one. Other than that though, I think WordPress has got the no-coat thing down with the colors. I can't think of everything. But that's where I, if you, you can either wait for the discussion part or you want to chime in. If you see any of these things that you could say, oh yeah, I don't like this or I wish WordPress did this. That's what I want to hear too. So, right, yeah, filling my box with that color. Yes, right. You can fill with a basic gradient but you can't do much more than that. And I don't know if you can do much more than that with other popular page builders because I don't really use them that much. I know that's right. This one right here, after I'm done stick around for the page builder side of this. Yeah, and we go at it too. It's fun. Imagery, so where are we with imagery? Putting images as backgrounds is a core part of no-code. I want my image to go where it's supposed to go. I want it to line up. And if it's bigger than my container, I want to control how much of my image and where that image is being displayed. And InDesign does it beautifully. You draw a picture frame, you insert an image in there and you right-click and you have this fitting option where depending on your choice, the image is going to get cut off the way you want it to get cut off. There's just no way of doing that in WordPress. So what people end up doing is either not using an image or maybe trying some kind of a plugin. This one really, really has to change. The SVG support, I don't know. Some of these things could be coming up around the corner in WordPress, so I can't imagine that SVG support won't be soon. But when you're designing a logo and you're in an editor like Figma here, your logo looks beautiful because it's built out of vectors which are mathematical coordinates describing the size and shapes of things. You can't upload that SVG scalable vector graphic as your logo. You have to upload a PNG file which is a bitmap-based file and although it might look fine, I took a screenshot of InstaWP which is a really cool website, but again, look at the softness of that you can't really see up here. I just notice edge is really, really obnoxiously and anytime I see a website that has a PNG logo, I go, ah, I wish it was just SVG. I need the crisp edge. So there's no edges there. There's soft edges there because you can't upload an SVG file. Yeah. And they might be sharp and they might not be sharp, but when they're three and a half inches wide, only somebody who is an imaginary person who's looking that critically could see that it's not a thousand percent sharp but all of them uniformly don't care. I know. I mean, it's the cell phone rules everything in terms of layout and everything else and that's where the no code thing falls down all the time, at least with the stuff that I work on. It's not a problem for me, but the client being able to handle what that looks like on the cell phone screen by themselves is a 0.0001% that they could ever figure it out if they wanted to. Most of them are busy selling their widgets or their services or whatever it is that they do and they have absolutely no interest in using WordPerfect as a business tool. Right. The cell phone is the first thing and the second thing is they don't want to fix their fleet of trucks themselves because they're not mechanics and they don't want to fix their website themselves because they're not developed. Yeah. That's a good thing. Right, that's kind of what I'm trying to tackle is should that, is that a bad thing? And I think it is. I think you can fix your website. Obviously you can't fix a truck, but why shouldn't you be able to fix your website? Anyways, I'm gonna keep going, but let's shelf that discussion because it's a good one. Imagery, so in a no-code environment, I would have access to libraries of stock imagery and actually there is a really great WordPress services. What is it, WP Photo or something? It's part of the org. It's a repository of photos that volunteers are taking and submitting. So that's a good thing. But iconography, icons, if I wanna put an icon on my webpage, I need to install a plugin or I need to hand code it. And so more access to more libraries of imagery or some things that WordPress needs to work on. So let's keep moving along here. Typography, so this is another one of those areas that what I want in Figma and Figma just finally fixed a huge problem which was that the font menu showed all of the fonts in like the system font that you had. So they all looked exactly the same and now I can see them in their actual font. But, and all of the Google fonts, WordPress should have that same interface. I should just be able to pick whatever Google font I wanna use for my website. But right now with, depending on the theme that you install, 2023 the default theme gives you five choices. That's not enough. We need to be able to have as many fonts as we want regardless of what theme we have, regardless of what plugins we're using that those things should be part of it. Sorry, this is... Yeah. Why can't? Cause Figma's making money on it. You know, that's, it's proprietary, right? Right, right. They'd have to, you know. Except for they would sell the plugin. Right, they'd have to do that. And how hard would it be to write a plugin that does, there might be, there probably is plugins out here that do these things. But getting those plugins to become part of the core is the problem. Yeah, I know, I wish. See that's, that's what I'm loving about this because every new version of WordPress that comes out it seems like I'm getting closer and closer to this no code. Yeah. So interactivity, the page builders all do this. You have your phone view, your laptop view, your desktop view, and I can quickly swap between how it's gonna look on a phone. Now, you're never gonna, that's what you see is what you're gonna get is not gonna really work until you actually take your phone out and go to there. And even then, do you have every phone that possibly could be used being used? But in general, this is good to have. We just have this right now out of the box. Hopefully we'll change again. So interactivity. Is there? Okay, let's just delete this slide. No, I'm sorry. What is it? It does execute it. Preview it in mobile, right, after you. Okay, right, no, yeah, that's a good point because you are able to, there is some huge benefit to doing that. But yeah, actually switching to mobile as I'm editing would be, I think a good thing. Right, yeah, like you could squish your window, yeah. Right. So buttons, for example, I wanna be able to change the button state based on user, and I just did a screenshot from Google Inspector here, but, or DevTools. I wanna be able to change the state for hover, active, visited, and so on. And I don't have any of that yet in WordPress because all I can do is default and outline. There is no rollover state that we can do without coding in CSS. So if you wanna write CSS all day, you can do all these things. But that wouldn't be no code. Other forms of interactivity that people switch over to a page builder or to, you know, cadence blocks or, you know, an additional block library, things like slide shows. WordPress has a gallery built into it as a core block, but it doesn't do light box. It doesn't open imagery up into a modal window, which is really what you want with a gallery. I don't see why you would just wanna look at a grid of pictures. Animation, being able to tell something that, you know, it should respond to a trigger like a scroll and animate up or down or do something. Forms are interesting. I think could you have a forms block which would be kinda nice instead of having to always use contact, or yeah, contact form seven or gravity forms. I mean, if you have a very complex form you're gonna need to use a plugin, you can't do everything in core. But I think a basic form plugin would be nice. And cards are another UI feature where you have paneled groups of content. And I think cards are part of the Gutenberg plugin so that might even be there or coming up. But these are just some more interactivity items that I wanted to list out. Accessibility, so as I'm editing, I want language support. I wanna know how well I'm doing with WCAG, the worldwide, it's the WCAG. I want real-time auditing telling me, you know, this is too light or dark. And I want, Michelle was saying this earlier that you should be, all text should be defaulted to being there for every image, not being something that you put in optionally. I wanna know how my site's gonna perform as I'm building it. And, you know, if I have problems with something, I want help to be right there through a link to a WordPress.org resource. All right, so I'm gonna leave it at that and then just open it up for discussion. What else do we need? Yeah. Yeah. Yes. Right, and that's, what I'm saying is, how close are we to just, I only need WordPress. Like, I only need Figma to make a prototype. I don't need, oh, there are plugins in Figma. That's true. But, I don't, okay, what's the good... Plugins add code, so that makes sense. Right. But it's an average user. I think pretty much every system, every application has plugins, you know, and there are, but there seems to be such a big reliance on plugins in the WordPress environment that we don't have another publishing environments. Is there a need for that? Yeah, definitely, like that's what can happen is plug and bloat, you know. Right. Is that fair? Yeah, right, that's totally fair. So, that's why when I was thinking about this whole talk, I was going, maybe the better way to put this is, you know. Right. Yeah, right, right, yeah, right. How, or maybe even like theme-less. Like, how close are we to just, WordPress is, there's no longer this theme. 2023, 2023, you don't need that. I, yeah, I always have like seven, like 2010 stick around. Like, get out of here. Like, why do we even need themes? Maybe that's my next talk, is how close. You got JSON. Oh. Yeah, that's right. That's maybe where we are, so. Plugins you need. Right. But you don't need it. But if your client says, well, I need my font to be in Curls MT. And then, oh, okay, well I have to now install a plugin or I'll have to write it down. It's like when you install a Figma plugin or a BS code platform. Right. It's not really, that only then does it bring it in. Right, so. Only getting what you need. Right. It's for outside. Yeah. For outside. No, I'm like right there in the fonts, in the text box and I'm choosing my fonts and then it's like, you know, I don't see Google Fonts here and I can just click the button to install that. I hit a button and it takes two seconds and things spins up and then boom, the thing refreshes all my Google Fonts. Yeah. Make it Corp Commence. Others would have to be in Corp if you wanted to be no code. Right. That's a good point. It also depends on what you're trying to do. I mean, if you have a complex WooCommerce website, I mean, that's just code. Right. No matter what you do with WooCommerce, it's such a big plugin anyway and then you're gonna need some more plugins if you want to be able to pay for stuff because that's not really built into it in any reasonable way anymore. So like a lot of this just hinges on what are our base expectations for WordPress and how do we meet those? It's this enormous thing that a lot of people don't need. So the way I look at it is I get a non-profit client that needs a site that's all text and maybe it's live show in the front. Well, that's easy because I'm only gonna need I'm gonna need Contact Form 7 and a couple of other things and that's all. You don't even need Contact Form 7. You can build the format of the chat or the comments. I've done that. Yeah. Don't spam and everything else and it's all built into the system and I'm done. Yeah. And for me at least as someone who's not an IT person by training or anything I'm a designer and developer I don't wanna spend a lot of time doing the same thing over and over again or figuring out how I can code something if there's a good plugin that's in the repository I'm gonna load it. It's the same reason I use a page builder for a lot of stuff because it's fast. So but what do you ever run into issues where you wish you could you're like why do I have to put this dumb plugin in? I wish WordPress just did that. Like yeah, that's what I'm curious about. Yeah. Okay, I'm forgetting to re-ask the questions. So what's our next question? Yes. Sure. So I think to summarize that point that the need to know code comes into play in a situation where you have content being marked up by one system now being forced into the WordPress's system and being able to decipher that and clean that up and you can't expect somebody without some kind of coding knowledge to be able to do that, which is a good point. Yes. A lot of the users don't have any interest in the tool itself. They just wanna look at their website and see that their widgets are displayed properly and that people can buy them or join their organization or whatever. But WordPress is unusual and that if they wanted to, they could go and do that. The interface is there. It's not really rocket science, but if you're a baker or a painter or a non-profit organization, you're not really interested in what creates your website image. You just want it to be there. You're interested in making the bread or painting the house or whatever. So WordPress is kind of lumped into cleaning services or mechanic services or insurance services or the other things that you don't do yourself. There's two perspectives. There's one as a creative person who wants to use WordPress to do something and there's the other who has a commercial reason for using WordPress and they really couldn't care less if it was WordPress or some other thing that they don't know about because they're gonna hire somebody else to do that. So there's two perspectives. Right, so about the two perspectives, my counter argument would be, but that person is interested in being able to hire the widest range of people to fix their site and to have a system or a platform that encourages more people to be able to do more with it is a good thing. That's the biggest selling point of WordPress. If I should get hit by a bus, you don't have to worry because there's a lot of other people out there who can help. Did you have a question? Yeah, it was actually no code portion of it. So would you rather supplement the things that we need to do with plugins or would you rather have like bloke the main beat of the features? So the question is, yeah. So is it better to bloke the core or to keep things as plugins that we install as needed? So I think the core should not be bloated with anything that isn't needed and we have to discern what is needed and that's where the debate can come in. Do we really need this feature? And so what I've listed here are features that I think we do need. At least I want them, maybe I'm being selfish but I really want to be able to define a color for my rollover on my button and I really want to be able to have my columns line up vertically and I mean there's probably many more examples that I think are and I don't think that these are novel. I think that there's probably a lot of people out there and on track, which is where you submit these things to say, can we do this, I haven't looked but I guarantee you people are saying the same things I am but somebody has to make a decision because yeah, you do not want to bloat it but it has to grow too, so yeah. So what each of those pages would happen I don't know, I get it on my stuff but they would have their own imagery and their own look and feel. So how is that done, like in a theme, what I would do is just create a page, a page template for each one, there's probably better ways to do it. I think you can, I think with the query block there's more and more power being added to that so like what you're talking about is having, right and so right now you can write so yeah, you could have a template for DC and a template for Marvel and each one would have their own media query. No, it would be a query block because you could create your page and then add a new page, choose the template that you wanted to use and then that template would have a query block specifically for DC. So would it have an image, like a banner? Yeah, yeah, I think so, yeah. Yeah, all right, I'd like to look at it, yeah, yes. Yeah, yeah. Logo, is that whatever? That's, yeah, like we were talking about this and that was the point is just something to better organize the media library in folders or something of that nature. Yeah, media library. I have one that I want to do. Yeah. Do you want to see mine? There's my, no. Yeah, yeah, yeah. No, I know what you mean. Wait a second here. I wish I could just pull open a quick. So here, a lot of times we group things. Like I think groups is one of the most powerful things that you can do. I want to name that group. I don't want it to say group. I want it to, because for me, this is like a layer in Photoshop or Illustrator. If I could name this latest post or attorney bios or something instead of group, I think that would be a really good one because sometimes I'll have about 20 of these groups and they says group, group, group, group, group, group. It'd be awesome to, but I love talking about like what ifs or I wish lists. But really, yeah, I think that one is much more practical being able to, the organization, yeah. Organization, okay. All right, I think I'm kind of out of time. So thank you everybody for coming and I really appreciate it. And I'll be around all day. Stick around for Ron Brennan's talk. It's gonna be good. But all of these talks are great because we're amazing, so, all right. Thanks.