Jump to content

[ WIP ] Processwire Video Course


3fingers
 Share

Recommended Posts

🚨 [[ UPDATE December 6, 2022 ]] 🚨

I prepared a small landing page to validate how many of you would be willing to take the course, so that we would have a rough estimate of how many people would be willing to take the course.

🔗 Show me your interest here 🔗

-------------------------------------------------------

Hello to the entire wonderful Processwire community!

I am here to announce my willingness to create a video course for beginner/mid-level developers interested in learning more about the main aspects of our beloved CMS.

I have been working with Processwire continuously for years now, so I feel confident that I can share what I have learned to other developers interested in becoming faster and more efficient in their day-to-day work.

I have noticed that lately many people here in the forum have complained about a lack of material and tutorials for taking the first steps, and although so many resources are already present within the board, I understand how complicated it can be to be able to connect the dots and have a clear reference on how to get started or how to find clear answers in a short time.

As you know Processwire is a very broad tool, very flexible and able to be adapted to any need, so it will not be possible to dissect every aspect in this course, especially the more advanced ones that can help in rarer cases (at least in my personal experience).

🎉 But don't worry, I plan to explain with many practical examples many tips and tricks that can help you in developing sites, even particularly structured ones! 🎉

So I am here to test your interest and ask you what aspects you would be most interested in me covering, even those related to design (css, scss, postcss, tailwind) or javascript libraries/frameworks integrations (vue, alpine.js, greensock for animations,etc.).

My idea would be to create together a magazine with a restricted area for users, newsletter integration, catalog filtering according to different parameters (year, author, topics, etc.) and much more.💣

It will be a paid course, I have not yet decided what the price will be, but it will be affordable for everyone 👍.

For a small period of time, I would be pleased if you would give me pointers and ideas, so I can see what your real interest is (if any!) and also motivate me 🙂

Let me know! Thanks! 🙏

  • Like 17
  • Thanks 1
Link to comment
Share on other sites

Sounds great. There are some PW video tutorials out there. But nothing structured or consistent like you are planning to do.

10 hours ago, 3fingers said:

My idea would be to create together a magazine

Do you mean that others can contribute videos as well?

10 hours ago, 3fingers said:

It will be a paid course

You could use a platform like https://www.codecademy.com/ to publish your courses. Will propably reach a broader audience than a custom made solution.

10 hours ago, 3fingers said:

I would be pleased if you would give me pointers and ideas

10 hours ago, 3fingers said:

even those related to design (css, scss, postcss, tailwind) or javascript libraries/frameworks integrations (vue, alpine.js, greensock for animations,etc.)

I wouldn't concentrate too much on that because there are tons of tutorials out there already and PW is flexible enough to let devs implement frontend stuff in so many ways. But the basics of where you can place your source files, and how to include assets in template files might be helpful.

Go for it and good luck!

  • Like 5
Link to comment
Share on other sites

Hey @gebeer, thanks for taking the time to answer 🙂

Quote

Do you mean that others can contribute videos as well?

I realize that I did not explain myself correctly in fact. I'd like to teach how to create a medium-complex site like the one for an online magazine might be, because I think it could cover a variety of aspects that would be useful for many other projects, even of a different nature.

Quote

You could use a platform like https://www.codecademy.com/ to publish your courses.

This could be a solution; I am evaluating different platforms and their pros and cons. Thanks for the suggestion!

8 hours ago, gebeer said:

But the basics of where you can place your source files, and how to include assets in template files might be helpful.

Certainly they will be topics covered in detail.
So in your opinion it would be better if all the design part of the page components were already in place and later implemented through the different strategies available.
This could easily be one way to go without any problems, I would also like to have other opinions to consolidate, or not, this idea.

8 hours ago, gebeer said:

Go for it and good luck!

Thank you, I will do my best! 🙏

  • Like 2
Link to comment
Share on other sites

14 minutes ago, 3fingers said:

So in your opinion it would be better if all the design part of the page components were already in place and later implemented through the different strategies available.

That sounds like a good way to approach it.

  • Like 3
Link to comment
Share on other sites

Hello @3fingers,

31 minutes ago, 3fingers said:

it would be better if all the design part of the page components were already in place and later implemented through the different strategies available.

+1 to this approach.

What I think nowhere demonstrated in a nice and concise tutorial is the broad topic of search. One can take a look at Ryan's Skyscrapers demo profile but other than that there are just scattered bits of info on the topic. There is also @teppo's SearchEngine but that is a 3rd party module and I am not sure it can be used for Faceted Search or not, for example. With all that ecommerce raging these days, showing how to implement Faceted Search would be invaluable (along with listing products, sortable by categories), I think. Also, frontend autocomplete is another valuable topic, and what I have not yet tried but looks useful to build upon is InputfieldTextTags: https://processwire.com/blog/posts/pw-3.0.177/ See this related quote from Ryan: "...InputfieldTextTags works on the front-end, such as in FormBuilder or LoginRegisterPro forms, or any other InputfieldForm on the front-end."

I have done some of the above over the years (built on ProcessWire of course) and I had to dig up ideas from source code of modules and from this forum of course. However, a guided tour can always speed up the learning process.

Good luck with your endeavor!

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

17 minutes ago, szabesz said:

Also, frontend autocomplete is another valuable topic

Frontend forms in general would be a good topic. There's so much to find scattered around the forum but still people seem to struggle with it, especially when it comes to frontend file uploads with WireUpload.

  • Like 5
Link to comment
Share on other sites

Hello @szabesz!

1 hour ago, szabesz said:

showing how to implement Faceted Search would be invaluable (along with listing products, sortable by categories)

I recently implemented this feature for a project done for a client, and I am very pleased with the result. Unlike how Ryan did it for the Skyscrapers profile I used ajax (through js's native fetch() functionality) to communicate with the filtering logic. It works very well and is very versatile.
It will definitely be a topic of discussion. 💬

1 hour ago, szabesz said:

looks useful to build upon is InputfieldTextTags

Why not? It is one of several alternatives and/or combinations for categorizing data along with Page Referece Fields (they can also be used together). I will take this into consideration! ✌️

@gebeer

1 hour ago, gebeer said:

Frontend forms in general would be a good topic.

It is indeed and it's going to be treated with proper attention 🙂

...and yes, I'm using some Emoji's to grab your attention too (I usually don't) 😺

  • Like 4
Link to comment
Share on other sites

This could possibly become a course all on its own, but there are often questions on how to manage navigational structures (header/footer/on-page) in ProcessWire. Covering how to (try to) plan around it, either based on the layout design, or based on the architectural design (or the client need?) are all potential topics. Sites with simple structures (and few templates) are usually fairly easy, but if you were to design a website for a university that holds many different departments all with unique needs and content, things can get quite complicated; often times there is the primary navigation, a sub-navigation (that may break into child-navigations per department), and custom footer navigation areas per section!

If aimed at beginners, something that should likely be covered early on is templates/themes and ProcessWire's Site Profiles, and how unlike other solutions, downloadable site profiles contain not only the layout and design, but also the underlying architecture and fieldtypes, so switching templates is not (currently) a thing with ProcessWire. (We'd need something like WordPress' various theme builders [ex: Divi] where it's a theme framework, so the framework is the profile, and themes/templates/styles could be swapped within the framework...we just don't have that [yet?] for ProcessWire.)

...oh, and also that files and images are associated to the pages they were uploaded to (instead of a centralized media manager, unless one is setup [through a page] in your magazine website example).

Also of note, and this took me awhile too: It's "ProcessWire", not "Processwire". 😅

I'd probably sign up just because I enjoy taking courses. You can always learn something new. Video courses are a lot of work (to keep updated) so I wish you the best of luck on this!

  • Like 5
Link to comment
Share on other sites

A few months back I had the urge to try a lot of new things and one thing was a SSG (static site generator) called 11ty.dev and there was one channel and one website that made it super easy to start.

https://www.youtube.com/@11tyRocks/videos
https://11ty.rocks/

I liked it because it showed everything from start to "sure you can build an app with that".

What I want to say is that even guides on how to install ProcessWire, make it more secure, or about hooks or how to "write your own module" would make perfect sense. There is more than enough courses could cover.

As already mentioned... there are few bits and pieces out there, most of them are quite outdated or at least the ProcessWire backend already looks totally different which makes it awkward in some kind to watch those videos.

A new fresh approach sounds really good.

There are tons of topics your course or maybe even courses could offer and talk about.

See @bernhard's videos. They are really great and in full detail while only talking about a specific module.

Haven't thought it through but I personally would provide some basics at least (installation, file and folder structure, some best practices), then maybe something like building a blog or magazine (as mentioned already) and go from there. A blog could have a RestAPI, a custom RSS Feed, and, so, on... oh and there is always: SEO, Online Marketing and Affiliate Marketing.

There could be courses about "Why ProcessWire is perfect for (or) How to do SEO, OM, AM with ProcessWire".

Just outlined a few ideas out of my head.

  • ProcessWire Basics
    • Installation
    • Security
    • Migration
    • Updates and Maintenance
    • How to structure your project
    • Dos and Dont's
    • Import a HTML Template/Theme
  • ProcessWire: Your First Real Project
    • Blog/Journal/Magazine
    • Member Area
  • ProcessWire Advanced
    • User, User roles, Access rights
    • How to Hook
    • How to Customize
    • How to Whitelabel
    • How to RestAPI/GraphQL
    • ProcessWire as Headless CMS
    • Use VUE, Angular, Svelte, AlpineJS with ProcessWire
    • Your very first ProcessWire module
    • How to structure your backend, fields and templates
  • ProcessWire SEO
    • PageSpeed
    • Caching
    • SEO-related Modules
  • ProcessWire Setups
    • Multi-User Setup
    • Multi-Instance Setup
    • Multi-Domain Setup
  • ProcessWire Master Class
    • ...
    • ...
    • ...

 

My 2 cents for now.

  • Like 11
Link to comment
Share on other sites

On 12/2/2022 at 2:39 PM, szabesz said:

There is also @teppo's SearchEngine but that is a 3rd party module and I am not sure it can be used for Faceted Search or not, for example.

Short answer is "no", at least not for now 🙂

SE populates a search index for a piece of content (page) and compares provided query string against said index. It's a tool for handling "regular" site search, from indexing to front-end rendering. The index is a textarea field, so complex queries (advanced text search) and a few special cases ("link:https://www.processwire.com") are supported, but the module has little to do with facets/filters.

On a loosely related note, in recent projects I've been leaning towards implementing filters/facets on the front-end based on static data generated by the backend and cached on disk. The main reasons are performance and scalability: real-time search using ProcessWire can be pretty quick, but won't achieve the speed of a front-end only implementation. This is especially tempting approach when the amount of data is relatively small (i.e. you don't have to deal with tens of thousands of pages (or more) with numerous searchable properties each.)

Which approach makes most sense — and how vigorously the search should / needs to be optimized — depends on the case at hand 🙂

  • Like 4
Link to comment
Share on other sites

Quote

It will be a paid course, I have not yet decided what the price will be, but it will be affordable for everyone

Good Idea but if it is going to be paid then please only exclusive content, just for example applied api usage
starting from a certain level such as building forms or applied arrays ... etc. etc. and going up level ...
please not how to install processwire, output strategies, css frameworks and more of the same that is already
out there all over the place and chewed over

  • Like 1
Link to comment
Share on other sites

1 hour ago, pwired said:

please not how to install processwire, output strategies, css frameworks and more of the same that is already
out there all over the place and chewed over

I agree. However, to make a tutorial series complete, one needs to introduce the basics as well. Perhaps a concise but not too long overview would do the trick (especially if it links to all the official docs and blog posts in order to point out where to learn more about the basics).

@3fingers In order to teach as much as possible in the shortest possible time, you might want to provide your learners an installable site-profile which does all the basics already, and you "just" finish it off by implementing the rest (which is everything beyond the basics). I would also pay for such a course, so that I can think outside of my box (and to support your efforts, of course).

  • Like 4
Link to comment
Share on other sites

I've had a conversion with @3fingers over the last few days regarding that topic. I contacted him via PM because I am planning something similar and I did not want to give the impression that I was torpedoing his plan (or that he spends much time that in the end does not pay off because there is a similar free course by someone else).

To be more specific, what I have had in my mind for quite some time now is to make a ProcessWire version of this video:

ProcessWire from Scratch 2022 | Laravel Alternative? (on processwire.rocks)

I thought that might be a good idea for several reasons:

  • While watching that video to get an impression of laravel I thought so many times: "That would be so much easier in PW", so I wanted to show that to others
  • I thought such a video could maybe catch brad's attention and he might be willing to share the video across his audience or even try PW and make a video about it himself
  • I thought it's a good starter project with a good structure that shows a lot of the most important concepts and it would be nice to have a side-by-side comparison

@3fingers asked me to post this publicly to get some feedback from the community so that we can then decide how we should proceed so that everybody benefits from it.

  • Like 8
Link to comment
Share on other sites

7 hours ago, bernhard said:

While watching that video to get an impression of laravel I thought so many times: "That would be so much easier in PW", so I wanted to show that to others

A nice, clean and short comparison with Laravel might attract even more people right from the start.
At least as an opener to attract keen Laravel user.

I like that idea.

Link to comment
Share on other sites

Sure... redoing the whole video isn't short by any means, but key concepts of Laravel... Routing, Components, Templates, Auth... maybe. That wouldn't take "that" long I image. Or maybe something different that might give Laravel users a WOW-effect.

What was it in your case what made you think "In PW that's way easier!"?

I'm not that deep into Laravel but from what I saw and know... there is way more in Laravel you have to take care of which is already backed into ProcessWire.

Link to comment
Share on other sites

2 minutes ago, wbmnfktr said:

What was it in your case what made you think "In PW that's way easier!"?

I think the main thing is that you have to build all the CRUD stuff and GUI on your own which is just ready to be used in PW. File upload? Just add a files/images field. In Laravel it seems you have to do that kind of things on your own. Everytime. Or am I missing something?

Link to comment
Share on other sites

I'm now at 1 1/2 hour from the laravel video and he's still copying database entries to php-files to import it... 

I think the videos should be split into (short) comparisons to other frameworks/cms and an introduction (longer) to processwire. That way, users of other systems could be attracted to watch the introduction.

For the comparisons, it would be great to have experts from other systems doing the same things someone does with processwire. But one could also take videos like that one from laravel and do the same in processwire.

  • Like 2
Link to comment
Share on other sites

Thanks for all of your responses! 🙏

Quote

Just outlined a few ideas out of my head.


@wbmnfktr 
This is a very valuable feedback from your side. Kudos for all the insights you gave me!

Quote

Good Idea but if it is going to be paid then please only exclusive content, just for example applied api usage
starting from a certain level such as building forms or applied arrays

@pwired
As I mentioned at the beginning of the post, my course will be for the benefit of those beginning and/or intermediate developers.
So I think the sweetspot will be to not leave out the basic aspects of approaching processwire but at the same time focus on somewhat more advanced aspects, such as the ones you suggested, which seem to me to be excellent and absolutely doable.

So, let's try to get serious here:

I prepared a small landing page to validate how many of you would be willing to take the course, so that we would have a rough estimate of how many people would be willing to take the course.


🔗 Show me your interest here 🔗


It goes without saying that if, a month or so from now, I see a small number of consents perhaps I will understand that it will not be the case to proceed further.
In any case, go visit the page and leave me your contact information (it is mentioned on the page but I would like to reiterate: none of your contact information will be retained by me, each e-mail is salted and hashed and handled securely by the newsletter service I have hooked up -- Mailjet in this case).

Let me know what you think, let's keep comparing ideas. 💪

  • Like 3
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...