Blog
We're going to start having a twice a month virtual meeting to review what's next on our agenda in Git. This will also open our process up a bit so you can influence how the core matures.
- Face-to-face online - we'll use google hangouts, skype or something similar so it's not us talking at you, it's a two way discussion.
- First Wednesday of the month at 8:30 PM Pacific (great timing for our friends in Asia)
- Third Wednesday of the month at 9:30 AM Pacific (great timing for our friends in EU)
- Recorded and shared on youtube later.
- Likely has limited slots, so if you have a question and want to be part of the live aspect - fill out the form below to let us know you're attending.
We've launched some new developer documentation today!
This section has more to come, specifically around the need to create block types. That's not quite done, but what is there is a comprehensive look at creating custom templates, including defaulting to a custom template in a package, overriding core block type views, including JavaScript and CSS with custom templates and more. We've also put together a detailed screencast on overriding a core block type view layer, and why you'd want to do something like that.
Additionally, we've consolidated some documentation sections in the header navigation, and cleaned up the Documentation landing page.
The first pass at Concrete5 5.7 Developer Documentation is now available. This includes background, a full glossary, installation and upgrade information, request and dispatcher lifecycle information and our complete theming guidelines. These theming guidelines contain three new screencasts, detailing theme package creation, custom grid framework creation, and the complete process by which you can make your Concrete5 themes customizable.
There's much more to come, and you can see the roadmap on the documentation page.
Good Monday everyone, we are pleased to release the brand new editors guide for concrete5.7. Over the course of the last several weeks, we have been hard at work not only releasing marketplace intregation with 5.7, but completing the grueling task of 5.7 documentation. Today, we published the editors guide with our sights on completing the developers documentation in full within the coming weeks.
Please take a tour through the new editors guide and let us know what you think! Again, we look forward to publishing the developers documentation in full very soon.
We just released concrete5 5.7 last week (and updated it this past Monday!) We're encouraging everyone to dive into the next generation of concrete5, and, to make that a little easier, we're compiling how-tos, articles, and guides from our own site and around the web focusing on all things 5.7.
## 5.7 Architecture
Here's a video we put together on concrete5's architecture. Some of this may be old news to existing concrete5 developers, but there is plenty of 5.7 info in here as well:
[Watch Architecture Video >]()
## Add-On Development
I originally wrote the following how-tos several months ago, in which I update an existing add-on to make it 5.7. compatible.
### concrete5 5.7 Add-On Development, Parts 1 and 2
[Read Part 1](http://www.concrete5.org/documentation/how-tos/developers/concrete5-5.7-add-on-development-part-1/)
[Read Part 2](http://www.concrete5.org/documentation/how-tos/developers/concrete5-5.7-add-on-development-part-2/)
### concrete5.7 Upgrade Packages
Here's a helpful guide from community member Remo on how to update your add-on packages for 5.7.
[Read Article @ codeblog.ch](http://www.codeblog.ch/2014/09/concrete5-7-upgrade-packages/)
## Theme Development
Here is a series of four screencasts on how to convert an HTML template into a concrete5 theme. This, paired with the add-on guides above, should give marketplace theme developers everything they need to make compelling themes for 5.7, including information on new 5.7-specific features like grid and asset support, and custom area, block and editor classes.
[Part 1: Converting an HTML Template to a concrete5 Theme](http://www.concrete5.org/documentation/5.7/developers/themes/converting-an-html-template-to-a-concrete5-theme/)
[Part 2: Enabling Grid Support for Areas and Layouts](http://www.concrete5.org/documentation/5.7/developers/themes/enabling-grid-support-for-areas-and-layo/)
[Part 3: Registering CSS and JavaScript Assets](http://www.concrete5.org/documentation/5.7/developers/themes/registering-css-and-javascript-assets/)
[Part 4: Adding Custom CSS Classes to Blocks, Areas and the Editor](http://www.concrete5.org/documentation/5.7/developers/themes/adding-custom-css-classes-to-blocks-areas-and-the-editor/)
## More To Do
You'll notice that these four screencasts link in to a new, empty 5.7 developer documentation section. We're going to be adding new developer documentation here, covering everything that's new in 5.7 as well as existing topics, in the hope that this is the best resource for implementing concrete5 sites and solving problems using concrete5.
Start working on getting those add-ons and themes updated, and let us know what topics you want to learn about next.
Just a quick official word...
5.7.0 will release on September 12th.
This will be a stable production ready version of 5.7, with no marketplace integration. We're getting it out there for our add-on/theme developers to build towards knowing nothing major will change. We also want our larger clients who may be solving their web challenges with the core and custom code more than the add-ons/themes we sell to be able to start working on their big projects with 5.7 sooner rather than later.
5.7.0.1 will release on September 30th.
This will include marketplace integration, bug fixes, and whatnot. We will be working frantically on docs during this period as well (editors guide has already started coming together) so expect that and some more site improvements here to support the maturing ecosystem..
Happy labor day all!
-frz
5.7 beta's release is just a week away!
We could really use some help in GitHub.
There's lots of dashboard pages that need to be reskinned and Evan's juggling quite a lot in there. His new personal hero is Job who is grabbing issues that we've assigned to Evan and getting them done first! What a hero! We owe Job a beer or two, but he just got some karma points and free add-ons.
Lets everyone thank Job for his time. If you have any time to spare, we could really use your help on github.
Just a face lift, but a much needed one. Here's a discussion thread to chat about it.
We started many moons ago with a little marketplace of just our own add-ons. It was exciting to have found a revenue model for our free software.
As we looked for ways to differentiate ourselves from the sea of other CMSs, the idea of a clean, supported marketplace like Apples App Store made a lot of sense. We started accepting submissions from 3rd parties. With the excitement of Christmas morning, Andy and Ryan would personally review each submission as we had time, of which there was plenty of to go around.
Then things grew, and grew, and grew - and we couldnt keep up. So we added the PRB as an open source inspired committee of reviewers who could collaboratively help alleviate some of the initial poking around at submissions, letting us just be the final approvers. For a while, it worked great. We knew which add-ons to look at first, and while everyone wanted things to move faster, the marketplace maintained a level of excellence far above our peers.
As the marketplace grew, there were struggles around serving both the developer and site owner side of the equation in one environment. (e.g. What impact should difficulty level have? Whats the best way to install themes on existing vs. new site?) Theres a disconnect between our original vision and the reality today. We hear from our 3rd party developers that they feel like theyre putting great effort into providing support, and we hear from customers that its not always delivering the experience they thought they were getting. For example, just this week I was told:
"...In my opinion you guys should rise bar with quality control. This is second time in three years that I'm seriously thinking walking away from concrete for exactly same reason. Poor quality of the apps and bad support. I think you should rate developers for support so before we by their item we know who we deal with..."
Its natural for something important that is growing to have adolescent pains as things change. We believe there are two major problems with the PRB and marketplace today:
- We are trying to serve a diverse customer base with widely different expectations for what a finished product and good support means with a single experience. Is our marketplace a code repository for concrete5 developers who want to share with each other and maybe make a buck? Or is it more like Shopifys app store, with add-ons that are all safe, tested and running against a consistent environment in the will that always works no matter your technical ability? While we still believe we can serve everyone, we need to make some changes to speak more directly to the extreme ends of the spectrum.
- Due to demands on our time, we are unable to keep up with approval of new work in anything close to a timely fashion.
Its time for some well considered changes to improve the processes of the PRB and give different types of marketplace customers the experience they need. Heres whats happening
Submission to the PRB and getting a listing live quickly
1) The automatic checking system (called linter) has been improved. It now runs both on new submissions and new versions of existing listings.
2) If your new submission passes all the tests, you are given a launch date of 1 week in the future. Your listing will go live in 1-week even if no one on the PRB approves it. It will have a Has not been approved by PRB member! message on the listing, you'll have to flip a check box to get them to show up in the marketplace, and it will not be shown in concrete5s in-dashboard shopping UI.
3) The PRB will now have a small administrator group. They can approve add-ons and themes without anyone from the core team signing off. This adds their personal endorsement to a live listing, and/or launches the listing right then with their endorsement.
4) If your new submission did NOT pass all the tests, your listing will not go live until one of the PRB administrators or a core team member launches it.
Submissions will be rejected with limited cause or explanation. (e.g. wouldnt install, code looked sloppy in first file I opened spend some time working on this and resubmit plz. ) The PRB is not a free school, thats for the forums.
5) A new public Submitting to the marketplace forum area will be created for the entire community to help people get their code right.
6) Issues with version updates that fail linter tests will be worked out in that public forum, and not in the existing PRB interface.
Governance
1) PRB administrators and regular members have term lengths of 6 months. At the end of that period they automatically lose their PRB membership and have to request it again.
2) It takes 3 PRB administrators agreeing to accept a new PRB member.
3) It takes unanimous PRB administrators and the core team agreeing to accept a new PRB administrator.
4) To start we appoint: JohnTheFish, Mnkras, GoutNet, Tallacman as the first PRB administrators. For this special situation, their terms will be staggered (9, 8, 7, and 6 months respectively. ) Everyone else has had there term end and should re-apply now if they're interested in being part of the new PRB.
5) To request to join as a PRB member, submit your concrete5 user name to this google spreadsheet where PRB admins will review submissions on a monthly basis: (http://bit.ly/1vSIRZ3)
Technical
1) We will have a linter server you can just throw stuff at and get results from sans PRB. Dont abuse it or it will go away.
2) If the community wants to build additional checks for the linter to run, weve open sourced the framework and an example test. The PRB administrator group will decide if your check will be added.
3) The PRB interface has changed to be more usable. Were collapsing information that was getting in the way and were adding some filters/status to help keep things organized.