ah hi everyone thank you for coming to
our session this is a session that is a
little newer to May tonight but we did
it last year at bad camp and everybody
really liked it so we thought we'd make
it a little more official we're gonna go
through everything that's happened in
the world of backdrops since the fork up
to the present and then we'll talk a
little bit about our plans for the
future and this should be really useful
for those of you who are coming from
Drupal and are wondering what have we
been doing for the last four years
you'll get to see all the great stuff
that's been going on in the backdrop
world and why this is a pork and not
just long term support for Drupal 7 well
first of all how many people are not
familiar with backdrop at all like you
know this is kind of the first
introduction for them okay four people
or so okay excellent
well we how many of you are running
Drupal 7 sites currently everybody
almost that's great yeah so well-well be
covering a little bit about how backdrop
actually was created as well but mostly
we're gonna be covering all of the
progress that backdrop has seen over the
last five years for nanu sure all right
let's go so I get to push the buttons oh
there was doing about us
who are you oh yeah I'm Nate Lambton I'm
one of the project founders along with
Jen I've been doing Drupal for 12 years
I think felt like a half years and I'm
most well known for doing things like
the web form module in Drupal 7 and I
was also the file and image system
maintainer and I were at the dialog
system that's in Drupal 8 and was
advocate for putting ckeditor
integer play so got a long history with
Drupal though during that process I kind
of find myself diverging mentalities
around where drip was heading versus
where I had always wanted Drupal to be
heading and that's how we ended up
where we are with backdrop I'm John
Lampton I am a little younger in Drupal
years than native only been around for
have a little bit of involvement in
Drupal core and later to that then nate
is I was involved in usability team I'm
doing a couple of studies early in the
nurple 7 cycle all the way up to early
in Drupal 8 and through that process I
got really passionate in about making
the software easier for people to use
and easier people for people to learn
and by doing that I somehow ended up
core initiative lead for Drupal 8 and
started organizing people to put Twigg
into core and it was through my work in
that trying to make Drupal easier to
learn that I realized that it wasn't
ever gonna be the product that I wanted
it to be and so that's how we ended up
making in fact I've been said don't
where we are today
I guess backdrops five years old I was
saying four and a half but somewhere
around there depends I guess when you
start counting we'd really start teen
versions so I'm like Drupal backdrop has
a very strict schedule release cycle so
every four months we have a new version
whether there's new features in it or
not again it comes out like clockwork so
since the 1.0 version we've done that 13
times in every single time it has been
delivered on time though with varying
amounts of functionality so one version
as to how backdrop got started so let's
yeah five five years twelve versions ago
we kind of poorly executed this
manifesto that said why we were doing
what we were doing and it was largely
created kind of out of frustration at
the time which wasn't you know we'd been
toying around with the idea and trying
it out at various camps saying if people
were like hi how would you feel about
this and it the the stimulus for it was
actually my work on ckeditor when I
posted up a full version of the module
and it was ready to be committed and
then it was like actually huh not
anymore because we don't write modules
that way anymore and they rewrote the
whole thing and I continued rolling
along with that for a little while but I
realized think this again this is gonna
honestly it's gonna cost a lot like
changing every module that is an
existence from what I'd written to what
was being proposed or what the new way
of writing things from a purely
technical perspective I was like oh my
gosh is this gonna cause so much trouble
and so we made the fork in
September 2013 which actually yeah well
that was like really starting to be
getting people found the fork much
faster than I thought and that was
unexpected because we didn't have our
plans fully formulated and written down
so if you guys ever fork a software
project I suggest you write down your
thoughts first and then create the
github repository so because if people
find a fork with no explanation they
freak out
well in everybody and everybody jumps in
bringing their own ideas like we got
everybody from Drupal coming over and
saying that's great Drupal 8 didn't do
what I wanted it to do so let's try
again and I was like no no that's this
is not not what we're going for it's not
so that we can rewrite Drupal
differently a new way that's not what
we're going for we're not rewriting
things and everyone's go well that's not
what I wanted let's see and yeah yeah
exactly
anyway so the manifesto it's kind of
like this everyone's panicking yeah
despite our big bold letters up at the
top so don't panic thanks like but if
you read through the manifesto you can
still find it I think it's actually a
blog post the first blog post on backup
CMS org now running on the backdrop
instead of just being an HTML page these
are the points that we made in the
manifesto of preserving the Drupal
audience or some Drupal audience that
Drupal historically had been catering to
like a wide audience but small sites
were a large part of that hobbyists had
driven Drupal from its origin story and
nonprofits and political campaigns
actually were really Drupal's bread and
butter for a long time
small-scale Drupal being accessible to
individual sites small teams being a
product end-users catering more towards
user interfaces and making so the end
users could manage their sites
themselves without the help of
developers a different release cycle
because Drupal 8 was I think and it's
like 60 year of development at that
point
and it would be another two and a half
years before Drupal 8 was actually
released and so this the the release
cycle was at the forefront of our mind
and we we did a call to contribute on
github so yeah can we go back one more
time just a recap like really this is
not too far off of where we stand today
the biggest thing that we have to
address why backdrop exists we brought
up the philosophy I think we actually up
slides for that don't we but the big
driver is that we have some serious
philosophical differences around what
we're trying to do with what was then
Drupal and now we're calling it backdrop
but we were imagining Drupal was good
for versus where Drupal headed and the
big driver today is that the audience
has now officially been defined that
backdrop says that it's for small medium
sized businesses nonprofits education
small sites small budgets that is our
target target audience and Drupal is
defined its target audience finally
officially as ambitious digital
experiences which many people translate
as big budgets or enterprise and so that
alone is enough reason to justify a
different product because they're for
different people so anyway we're trying
to make it so that this very first point
preserving the Drupal audience we're
trying to make it so those people that
are within the not target audience now
but historically it may have been within
the target audience have somewhere to go
and so that's our objective with
backdrop still is today point number one
still valid so the software launched in
January but the website didn't get
launched until April we're like oh we
should I guess put up my website and
have information some people know what
we're doing but that backdrop wasn't
vector I didn't really exist it wasn't
any different until it was 2015 in
January when it launched so we're like
well we need to put up a website but we
don't have soccer yet so I guess we'll
just build it on Drupal seven because
that's what we're doing here we set up
Vector temesta org and we set up an api
website to parse our code based on was
interested in seeing what we were doing
with the code even though it wasn't out
yet we're welcome to look at the API
site and take it first minute we also
ended up hiring a couple of different
designers to make up some assets for us
we needed a logo we hired a designer to
help us with that he also helped us with
a style guide for the website in general
brand guidelines which is great and then
we hired another designer from I think
some weren't nearby to make us a dragon
and part of that was really important
because we thought a huge part of the
Drupal community was the truth look on
and in particular how different camps
and various different organizations
could take that icon and turn it into
something that was their own they could
put on it change its color make it up
feet or wings or hair or whatever it was
and it became a recognizable thing that
people could use for their own purposes
and we wanted to have something very
similar in the backdrop community and
we're like oh we should have some kind
of animal there's a lot of debate about
what it would be and eventually we were
at Drupa corn camp and somebody was like
oh guys usually dragon and I was like
ooh we definitely need a dragon
everybody at the table wanted to do like
some barbecue place or something and
everybody around the table is like yes
yes yes we need a dragon except for this
guy
[Music]
ten Drupal developers think backups
should be a dragon surely that's enough
yeah so I was looking around at the very
least I I do appreciate one of the
Dragons name being drop so he's dragging
drop way up stickers for everybody if
you didn't get one thank everyone
check-ins even if you know it was Becca
okay so after fifteen months of a
development we decided to release
backdrop one this was January 15 2015
which coincidentally we didn't realize
was also the ritual release date of
Drupal once per day so we accidentally
for real may backdrop 1.0 come on the
same day as Drupal 1.0 so we have the
same birthday so every January 15th
what doodle birthday parties are
happening there is also the backdrop
yeah pretty good set for me so yeah
we've released it on January 1st and if
there were some people in our
communities like January 1st is not a
good day to do anything publicity why
cuz everybody's busy with New Year's and
the holidays you should push that like
will do the 15th we're like okay and
about the 10th we realize we had a
little conflict and we're like that's
probably fun yeah yeah it's like a
little brother born on the same day okay
Mina Oh what did I do wind it up at the
end
Oh reveal how did he do that I don't
know I think I hit the track yeah
it's Linux's fault oh geez and it hit
the we can type in this line number I
think it was like five okay
yeah not sixty-five that's for later no
we were like there we go okay number eat
everything sign okay spacebar alright so
what's in backdrop one a drupal
compatibility layer so this is one of
our big things about preserving the
existing audience we also want to make
it really easy for any of who's running
a triple7 site to be able to run a
backdrop site so we included a
compatibility layer so that things like
functions that used to start with the
word Drupal now start with Route
backdrop but still work this is probably
the big driver for 1.0 that was like
actually one of the to keep killer
features new layout system so a backdrop
out of the box in 1.0 years ago had an
equivalent of panels built in and
removed the idea of themes having
regions and said now everything is
driven by the layout system we've given
lots of presentations on LED system it's
definitely the biggest functional driver
difference between Drupal 7 and and
backdrop high does but does still
provide an upgrade path moving from out
of a region based system to a lay-up AC
system views module built in it's kind
of like a given like a not very actually
not too difficult for moving in but that
also means things like views bulk
operations had to be moved in the
listing said to be converted let's see
what other kinds of things
oh yeah the action system got changed
the dialogue system is now used lots of
changes that we're all combined together
to make it so that would happen
we also a dialogue system than they just
mentioned is something that would easily
part of see tools so it emerged in a lot
of see tools as well and the big reach
to the management this is something that
people were so excited about
improvements in Drupal 8 config
management we knew if we were gonna
release a comp or mold product it needed
to have the same feature so we
introduced a really early version of
configuration management and then we've
worked a little bit from how Triple E
ended up doing it so though we have the
same feature it's implemented very
differently anyways it's a little bit
more in line with our philosophy so hey
we have a product we should use it so in
January 24th so this is like nine days
after we released backed up the product
we got our API website updated and less
than one month afterwards we had our
main website upgraded from Drupal 7 to
backdrop so this is just kind of a we've
thought we wanted to do a demonstration
of how easy it is to get from Drupal 7
backed up and using our own properties
to do so it seemed to make the most
sense
be able to do an API for Drupal aids
well it's the same the same indexing
yeah yeah it's I mean the API website
I'm to flip on drupal.org is Drupal 7
yeah and we're running the port of the
same module yes so dad can into a site
yeah I can index all we the same same
code okay hey so it may came out and
guess what that's four months after
January so it's time to practice what we
preach you come up with a new version so
backdrop one was released what do we do
in backdrop one we change the look of
the administration theme so we used to
use this theme called seven we actually
still have it in backdrop but now it
looks different sorry the colors are
totally blown out and all of the
screenshots but it's a slightly
different color
we made the links with bigger the links
bigger so they work with your finger on
a phone or tablet everything is
responsive just a bunch of usability
improvements but we wanted to make it
feel different than Drupal other things
we added more tokens at Oakland user
interface half auto and other stuff
minor things
all right September what do we do the
next four months so we found that Oh
okay yep so vertical tabs are made
responsive we were slowly like going
through iterating making all of backdrop
core more mobile-friendly
we added ckeditor decor kind of one of
the rich ironies of backdrop is that we
released 1.0 without the main feature
that I put into group allayed so but we
we followed in there not too shortly
after the original release with CK
editor in core we also had eight all of
this most all the date sub modules
except for date repeat Lincoln email
module
rounding out kind of the core field
functionality and I guess in general
just that our approach to putting
modules in core it varies kind of
substantially from Drupal 8 and that our
primary objective is making so that you
can upgrade easily from Drupal 7 running
those same modules so in the process of
porting the modules and making the core
compatible we're trying to maintain as
much as possible but also have it be
more you know tightly integrated into
core without it being kind of like feel
like it's been bolted on and that makes
it so that those people moving from
Drupal 7 all of the equivalent
functionality from those Drupal 7
modules moves over directly into the
drupal era into the backdrop version of
them because the entire point is to make
it so you can get easily from Drupal 7
into back it works I built an upgrade
path so you don't have to worry about
the module going in but your date are
not getting upgraded which is what
happened with the fields in Drupal 7
anything that got put into backdrop core
has a built-in upgrade path in court so
you can just get to it quickly so one
point to also included the first use of
our packager drupal.org is similar kind
of packaging mechanism but because all
of our code is hosted on github way to
build a new kind of system for packaging
and so when github we still do all of
our issue management and all the code
hosting is on github but now we
integrated with web hooks and github
system that it sends pings over to
backdrop CMS org when you create a
release and this works for contribs well
as core
backdrops nuanced auto
and packages it does some slight
modifications to like the dot info files
inserting that the virtual information
zips it up and then posts it back to get
hub for hosting all right
one year later this was a great example
of release where we didn't get a whole
bunch of big fancy features in because
everybody was really busy over the
holidays but really that's okay we've
got it released anyway what do we have
in it and we looked at what was in it
and there were a ton of little tiny
fixes that improve the user experience
we're like we're just gonna call this
user experience focused release and
we're gonna get all the rest of that
stuff done and we're gonna create a more
polished product so one release has 32
enhancements specifically to improve
these our experience oh it beats X I
love this feature this is like one of
those like obscure things that we hardly
ever talk about but is really cool from
a technical side of things we added
background fetching in backdrop 1.3
background fetching and background
processing which makes it so that when
backdrop finishes the page requests and
has to do additional tasks afterwards it
returns the page to the user it suffers
the the open connection on the Apache
side and returns the HTML to the user
and then runs background processes after
returning the page back to the user this
is most noticeable when doing localhost
development where you haven't set up
cron and the first time you load up your
website in the morning it just like is
loading and loading and loading they're
like we'll say that Drupal site yeah and
you're like what is going on then you
hit control art comes up instantly right
and what that is is that's cron running
at the end of the request because cron
hasn't run in 24 hours since the last
time you loaded the page and so Drupal
doesn't return the page requests until
that all the cron tasks are finished
even though it does it in a shutdown
hook and all these things it doesn't
return the page properly and so we added
this background processing capability
that intentionally moves that stuff
after the request has been returned and
it makes it so that we can do stuff like
generate the the paint the the page
cache but we don't actually right
to the database until after we've
returned it so we're only reading and
then we're doing the writing after we've
actually finished generating the page we
also have background fetching Zemin yeah
background fetch that's the page cache
that makes it so that we pull the page
out of the varnish playbook
varnish this explore varnish for
playbook that varnish is the caching
software that when you're generating the
page cache when the page cache is stale
you go ahead and you you note the fact
that you need to regenerate the cache
but you go I can return the stale copy
right away and then you generate a new
page after returning the stale copy and
then the next person that comes in gets
the fresh one so there's no slow page
load after your cache expires it's all
it's just one stale page load and then
the next page load is fast again and so
and fresh yeah so it makes it so that
you can you can trade off like one page
load being extra one extra page load
being stale in exchange for never ever
having a slow page response and a big
key thing about integrating something
like this I think it'd be unlikely you
might say contribute you'll do this in
in Drupal 8 if it was possible it might
be but it's unlikely that Drupal would
pursue this as being core functionality
instead they would probably refer you
over and say you should use varnish
Josie's varnish but that's a difference
in in target audience that varna that
Drupal is made Enterprise you should
just use another layer have your DevOps
team put another layer on your software
stack use a CDN and we're targeting
specifically for people that don't have
a CDN or don't have a DevOps team and so
this kind of functionality we think is
highly critical important for backdrops
audience
alright one of these ability and
percents that I love may be one of my
favorites as we've put in a big red dot
into the administration bar
so there's anything wrong with your site
you will know immediately this game
comes from Drupal where sometimes that
admin message is only visible on the
back end of your site and you can do
something like apply update without
running the update script and click
around your site for a while before you
discover that there's something wrong or
like which doesn't put this dot
everywhere and as you all know from
using Facebook if there is a red dot
somewhere you cannot help but click on
it so that's worked really well in our
favor we're getting people to know
there's problems we changed the node
create node type creation form to
include a bunch of different things like
your permissions being able to set a
pattern for your URL aliases we
basically took everything that has a
setting for a node type and put it on
the node type form so that you don't
have to go to more than one place in the
administration to perform a single task
like creating a know type and we're
trying to create this pattern all
throughout course so anywhere that
they're in more than one place that you
can do anything we can make people's
instinct so like I'm going to go here to
do something be the correct place to
find it even if it's that same setting
is in lots of places we also included a
transliteration module field blocks
custom text blocks logging in with email
address or email login module login to
logged in
[Music]
improved interface for adding multiple
values with multiple field Remove button
module there's like a bunch of little
modules that were improvements to the
triple UI that we just kind of did the
same thing in fact yeah this is Wow at
the same time as we were doing all of
this software work we also started
thinking about how we wanted to organize
the overall management of the project
for the first year it was basically this
is the gen and Nate show which we didn't
ever want it to be that we specifically
but at least I I don't like management
positions very much like I'm I
acknowledge the fact that I'm a
developer and running a project is not
going to be my strong suit it's writing
software and we started looking at
models to make it so that this project
could survive and be managed by people
that were not us beyond us and we
adopted the model from the Apache
projects or Apache community called the
project management committee project
management committee is basically just
distributing the authority to a group
the project management committee do we
have the description now the project
management committee sets the direction
of the project the principles the
mission and handles conflict resolution
so it's the overall guiding group for
result they're like making it so that if
there's a problem like you can escalate
to the project management committee they
vote on it and then that is then the
where where authorities derives from
within the backdrop project it's it's
been really successful I really
appreciate this this model and yeah it's
been rolling really well
so next version was backed up 1.4 came
out in May 2016 this would include the
project installer this is I think one of
Angie's favorite modules it exists for
triple7 if you want it but it basically
takes the previous field on the modules
page where it was like randomly pasting
a URL it's something that might explode
your site here and instead of doing that
we provide a browser so you can search
for the module you want the browser will
look through a list provided by backdrop
CMS or find the module and the list give
you information about the module and you
can click install without ever having to
leave your website and find a URL we
also added a little additional
protection and buried that URL box
really far away we're knowing we'll find
it unless they're really looking really
hard hopefully to make the kinds of
people who need to use a point equip the
module installer much safer yeah I mean
all Drupal 7 sites have the ability to
install modules which is kind of crazy
if you have update module turned on
which is like also great you want update
modules but maybe you don't want them to
be able to paste in URLs of arbitrary
code and run it on your site we
separated our update module from
installing modules so you can keep
update management and update module and
this is now installing module so you can
turn off installer separately if you
don't want that functionality we also
added a whole bunch of new layouts in
backtrack 1.4 and these were using the
bootstrap corporate system still are but
at the time bootstrap 4 was not out yet
so we were super cutting-edge although
I've been in development for like four
years so that's questionable but this
basically made it so that all of the
layouts that are in core really easy to
just copy and change the classes and you
can change your column widths you can
make new rows it makes it super easy for
people who need to get something done
quickly to take what's there use it as
an example repeat and get their work
done oh and it's also backwards
compatible for old layouts so if you've
been using an older version a backdrop
your old lives would still work but the
new ones are also there so it gives you
something else to choose from
I made a bunch of improvements to the
layout user interface as well including
changing the way visibility conditions
worked and I think we did some
provements to the dragon dropping after
we installed path auto we realized we
need to include redirect module so we
added that one in the next release we
also took what was functionality from
menu block module in Drupal 7 can trim
and merge it into the core menu blocks
in backdrop and we made it so that if
you're on a mobile device trying to
create a node if you clicked into the
image field it'll give you access to
your camera which is something there's a
control on tool for that as well triple
yay this is very exciting a new
front-end dean by call basis that was
made by Westerville Kaba so backdrop no
longer looks like Drupal yeah that was
very exciting for us we're like look
you're running back job it looks just
like Drupal and then finally Oh finally
it's like its own product this is really
greatness this is using the layout
system to edit a block on that the
front-end and this is just featuring the
hero once it comes out of the box just
an easy way to put a hero
that's background image and some text on
the on your site that Inglot is included
right on the front page out of the box
we have sided responsive drop-down menus
we used a library called smart menus to
make it so that out of the box you have
hierarchical responsive drop-down menus
family better touch friendly whoo yeah
they keep navigable yeah just one of
those super confusing things about like
as a new user you tried to make a
hierarchical menu and it's not
hierarchical on outputs and Drupal it
just like just shows you the top level
links and so it's very natural to assume
that you're going to get a hierarchical
menu if you drag them into a nested
structure so that's great they also
included a default home page layout this
is the most common use case where you
have a different layout on your site and
every other page that differently on
your home page needs to be there so we
put them in beben vault
and we put an existing content block so
you can reference any piece of content
that's already on your site you can
place it as a block with any of you mode
and we included emoji support this is
the same this release came out the same
time as emoji support for Drupal 7 so we
coordinated that yeah
but different yeah another difference
like this is crazy like the small things
that it's all about audience here that
if you guys had Drupal 7 sites how many
people upgrade their sites to include
emoji support there Drupal 7 sites no oh
well it turns out anyone for you turns
out it's kind of hard actually
you have to use address command in order
to update your database tables to make
it so that they support emoji but in
backdrop we integrated the upgrade path
into the user interface so it shows you
a sadist message indicator saying hey
you're capable of supporting emojis just
put this in setting so that PHP and then
you come back and it's like okay now you
need to run the upgrade and the button
with a button and does batch process you
know so it's highlighting that
information that you can support a wider
character set and in the status report
and then providing you an opportunity to
upgrade it through the user interface
a button as opposed to a developer
command-line tool it's a different
different audience they're all right
backed up 1.6 backed up is now two years
old this is where we put in file entity
module or most of file into B module we
put in the file entity part some of the
user interface is still not quite there
and this is because we knew that we
needed a better media solution than
what's in triple7 so we're currently
moving towards lots of media
improvements you'll see as we go through
here things you can do but when you
insert an image into the body of the
page it hasn't reference from the files
table so they look like what cleanup
there you can change it in one place and
have it update everywhere same thing is
true for PDF files all the great stuff
you get with having thousands entities
is in that report now we also added a
hamburger to our fancy mobile-friendly
menu again this is iteration later we
realized if we're going to put in this
menu looks out looks like everybody
wants a hamburger number one question in
the forum is how do I put a hamburger on
my fancy new menus like oh we should put
that in court so there's your hamburger
and we also added entity View mode
module but this wasn't something that we
just took the module and shoved it in
this was in addition to an existing
course system so there's a couple of
different ways that we take contribute
modules from triple7 and put them in
backtrack or things like date email link
you just take the module stick it in the
little clean up user interface a little
cleanup in other ways
things like token entity View mode they
become part of system modules so token
is a part of system and anivia mode is a
part of field UI so there are things
that are just sort of missing pieces of
subsystems that we put them where we
thought they should be and then there
are things that we just left them
exactly as they were a little module
on/off button
um we added translation support so this
is where we set up our localization
server it was the start of the
localization server still working in
progress to make the localization server
fully integrating with backed up core I
know and automated and and automated I
know it's great in Drupal 8 that you can
install alterable with a new language
without having to download the
translation files separately still
working on that because like it requires
integration between multiple servers so
we do have essentially a multilingual
lead who's hang up making the site and
we have backup translations in a couple
of languages now that are fully
translated which is very exciting to us
but right now it's all still manual
processes including like installing out
of the box but we're getting there this
is exciting
yeah so we got forked and we've got your
the the press flow of backdrop was
created and so this was one of our heavy
core contributors made a fork of
backdrop that wanted to support more
more database systems and make some
performance optimizations that we've
been pulling on in the backdrop for
queue and he's like that's fine you know
I'll just make my version that it was
like the optimized ones that he'll use
on his platform so I he we removed just
in case you guys missed it so he removes
support for any database that's not my
sequel because I was less than 1%
after pleasers so we're again we're
trying to cater to like look largest yes
and he's like wait I have a need for
running on an on my sequel database and
we're like well we don't want to support
that it doesn't need our use case he's
like fine then I'm gonna I'll support it
myself
and so now we have a fork and he's
actually continued to maintain his fork
in parallel with ours and he's been
super helpful on most of our court
releases too so having this work has
been really beneficial
- the backyard project alright
may 15th back deck 1.7 comes out it
includes new redesigns of several of our
administration pages it's really pretty
I promise this missus projector doesn't
really show you all the fancy colors but
we've put in icons and color-coded it
and we removed all the like giant green
stripes and stuff we also added I don't
remember what this module is called
ckeditor
link it like it I think it's the common
link in it yeah so just making it so you
can link to various Pat's on your site
with autocompletes
uh drag and drop Oh No
copy paste then go and copy paste copy
paste upload so there's a there's a
triple module for that too that's only
an alpha vertical seven that's pretty
exciting
lanten improvements so again the pickle
that system is new we tend to iterate
and improve on layouts with every
release so we included per box per block
placement options in the views module
and we made a bunch of page elements
placeable as blocks there's a
contributor that the fuse box was part
of the c tools views comment module back
up one-point-eight comes out in
September this is another user
experience release guess what we care
about user experience because most of
our users are users as opposed to
developers we represent progress bar in
different color and kind of pretty we
add a color coding into our dip so this
is for configuration management we stole
the colors from github I believe and the
pattern so we just took what they did
when you do a diff on github made it
match what you do when you get a dip on
backdrop we added an unpublished
indicator so that was very clear and
basis when the content you were looking
at hadn't been published yet we redid
the admit admin listing page so this is
just kind of use of icons and better fit
for our style we included screenshots in
the practic buzzer so if you're going to
install a theme you want to be able to
see what the theme looks like before you
install it so browser now includes
images and then
backdrop the King three years old I know
it's just just keep rolling so
previously you can upload files but you
couldn't or you could delete files but
you couldn't actually edit them and so
we had the ability to manage in 1.9
this is more of file entity oh I guess
that was it might have been our only
right so in May backdrop 110 came out it
includes the comment closer module this
is something that comes in corporate
WordPress this is when we started
looking at wordpress annoying what does
WordPress doing right that we need to do
as well and this is the ability to
create a post and say hey closed
comments after two weeks that prevents
excess spam issues which is nice and
decreases the need for constant
moderation on a site we also added
scheduled publishing so this gives you
the ability to create a post and say hey
let's publish this tomorrow morning at 6
a.m. I don't have to get up at six am
and push this publish button on my
website this is something else that's in
WordPress core and it's called the
scheduler module for triple7
we also included inline file uploads so
instead of just being able to drop in an
image and you read text editor degree
you can drop in a link to a PDF file and
upload it right there many new items
became translatable and block's game
translatable so this is after we have
the multilingual initiative people
started translating stuff imagine that
and we started improving translation in
core September vector Quentin comes up
color module so we ignored color module
in the first version of basis because
we're like oh that's kind of old and
crufty maybe we'll find a better way to
do it and then guess what people needed
color module so we're like okay well
let's make color module work with faces
so we had someone else come in and
colorize basis which was great color
module also got a little clamp because
it was old and crafty right so we redid
the user interface we use html5 elements
for color just stuff that had been
ignored for a while got a little love we
have an image browser this is also
catching up with media right trying to
get more of that stuff for media module
in core so giving people the ability to
see image thumbnails naka load them into
their content we put back on content
preview so in backdrop 1.0 we deleted
content preview because it didn't work
but then we realized the people like
reviewing content imagine that so we put
in a version that does work and this is
a little different than most of the
preview solutions in Drupal and then it
shows you a live rendering of your
actual website including placement of
blocks and layouts in addition to just
the content you're looking at so I think
there's something called a live preview
a module that does the same thing that's
what we've got something similar in in
fact rip also gives you the ability to
preview different view modes of your
content if you want to see is a whole
page or is it either you can see those
differences
also rabbit-hole module went into court
this is because in backdrop our blocks
are configuration and not content and so
we wanted people to be able to have
content style blocks and so because we
have the ability to place existing
content you can just use notes as blocks
as long as their packs can be hidden so
we made it so packs can be it in a court
we also did a whole bunch of
improvements to contact module speaking
of things that are old and crusty we had
someone who was super passionate about
making that work and look better for
everyone I don't know where the client
set up his progress bars I didn't work
on that used to have to it required a
PHP extension or get a progress bar
while uploading a file but that's
totally unnecessary this day and age
JavaScript can do all of that so we
removed the requirement and actually
even the recommendation that you install
the PHP extension and just say no
client-side everybody now has progress
bars just nice and then this is the
biggest one we put in the ability for
backtrack or to update itself so we
didn't actually make it usable because
we wanted to test it first in order to
test it I had to exist so first we put
it in so it existed and then we were
able to do some testing as a core team
and then later on we turn it on so it's
hidden from end users by like a
configuration flag so although it was
possible to self update you really had
to know what you were doing in order to
turn on that ability not a lot of stuff
one release 111 and then the subsequent
bug fixes to actually test back drop
updating itself with the whole thing all
the whole system combined so guess what
happens in 112 we turned on the updates
so yeah now there's a checkbox where if
you want people to be able to push a
button and say up Drake or you can check
the box and then the button will appear
when updates come out which is great so
this is part of update module where you
same thing you use to update your themes
and layouts you can
of course and to be clear this isn't
automatic updates no just it's just
manual core updates it can be done so
you have to push the button yeah they'll
actually is a checkbox here that's right
below it you can tell you some
checkboxes on the screen but it says
automatic self updates as a disabled
checkbox
says coming soon because ultimately that
will be supported but we want to test
this for a while yeah one one step at a
time
yes at least as far as this is concerned
yeah well we're also behind in some
areas yeah yeah we have a kind of a
large advantage in that we're a lot
simpler like we can we're not composer
based and so composer is both blessing
and a curse and as far as automatic
updates yeah I mean giving having Drupal
control composer is probably the
direction that they're heading but that
it's a whole can of worms and so
backdrop doesn't have any dependency on
composer whatsoever and so updating core
is no more difficult than updating a
contributor so Drupal 7 has had the
ability to update its own contributes
although not is commonly used by
developers making it so that that same
system works encore was practically
trivial so there's it's very simple like
download new tar ball replace it so very
simple direct updating mechanism ran
update update
yeah and then and then director update
up page thank you we also added a
kinship module called option it's
element this used to affect only web
form components at Drupal 7 but we made
it work on field UI so that you no
longer have to type key pipe value into
a massive text area this gives you a
nice key value entry system you can hunt
the keys you can make custom keys you
can make them carry numeric
youth a little more user-friendly
because our users are not developers we
think hi we live icons so does Drupal
they were way ahead of us in this area
they had nice fancy icons in their admin
bar we wanted fancy icons in our admin
bar so we added them uh we also
implemented CSS grid so if you use a
views grid display you now get a CSS
grid for that unless you have a box
check saying use legacy table which
might be useful if you have thieved your
tables we also took those contact module
improvements and made a block you can
place in any region on any page it's
pretty common these days you see a
contact form in the footer now it's
really easy to get that done on your
backdrop site and we continued including
translation so taxonomy terms are now
translatable now I just said that twice
and tags for modules so this is a really
long standing issue in back chocolates
issue number 37 and there's a lot of
bickering and different opinions and
who's this page for and what are we
trying to do for it and so we just
decided those coming to know there's
something everything everyone agreed on
is that the package is not sufficient
like you have a module that might be
several different things maybe it's a
statistics module and its commerce
module and it's an add-on or whatever
and so you can put however many times
you want to categorize that module
someone searching for it later they can
search for commerce your statistics and
I'll come up with both it's a little
improvement to the modules page what are
we doing right now
so in just under a month the next
version of backdrop will come out oh
well very much I guess it seems soon
we're working on a bunch of new features
we took out Drupal 7 dashboard module
because we did not like it nobody used
it and we are gonna put in a different
deck dashboard module that we hope
people will both like and use this is
based on a kinship module in Drupal
called total control which is panels and
views and since we have panels of these
sort of the same thing in we're also
planning on putting in a telemetry
module and this is based mostly on
what's in Joomla about what information
any given site will report back to
backdrop so what marches you have
enabled what your settings are in your
given site it'll give us more
information about what do people
actually want their backdrop sites to do
in the future what are they using now
what is safe to remove what is not safe
to remove what should we improve because
right now we've got a lot of sites been
a running back drop but the number of
people in the queue of working on it are
much fewer and so how do we know how to
serve those people who don't yet have a
voice in our community and this will
help give us a lot of valuable data at
the very least like the main key thing
that we would like to collect is like
what version of PHP are these backdrop
sites running on right because I
compatibility is 5/3 and forward so we
support wide breadth of them because
even even though PHP 5 is officially not
supported anymore it's still like the
default PHP 5 4 is still the version of
PHP you get in the current release of
red hat for example and so anybody
that's using Red Hat Enterprise Linux
like right out of the box like you can't
install Drupal which is you know kind of
a big deal
because PHP lasts a lot longer than it
may seem based on the official support
because of vendor supports and so
figuring out what versions are actually
being used is really important to us we
also added a cup
more kinship modules from Drupal 7 save
draft is something now that we have
fancy jets and scheduling people want to
be able to save them
so that'll clean up the node edit form a
little bit and field for matters module
which is field formatted from Drupal 6
that were excluded from triple 7 we're
gonna put back in and a lot of that is
because most backdrop users today we're
coming from Drupal 6 or most a lot of
them and so they have features they feel
like I'm missing because they were
missing in Drupal 7 and more there's
obviously a bunch of little tiny issues
that we get into every every release
that aren't like exciting enough to make
our big bullet list but if you're
curious about everything we're working
on every release we work on our backdrop
has a milestone on github and issues
that were working on scheduling for that
release going to that milestone if they
get done that's great if they don't
think it kicks to the next one for
things that are big core features they
get kicked twice and if they go to get
kicked at their time they get removed
from the milestone queue because we feel
like they're not important enough to get
worked on in a year then they're maybe
not a priority for our community keeps
our issue queue and I censure
my next so within the one dot X branch
and just in general the one that I
experienced we previously had been
talking about backdrop to like years ago
saying know what's gonna being backed up
to what's gonna react or to and you kept
coming up with all these features that
were like oh this feature definitely is
worth calling it backdrop too but then
we kept finding that wait we can put
that in now yeah there was no reason to
wait and no reason to break API so why
bother with backed up to when you can
just keep going right so as long as we
can maintain backwards compatibility it
doesn't become overly onerous there's no
real reason to create a 2.0 that would
potentially introduce a bunch of
backwards compatibility breaks so more
and more things just keep getting at it
- 1 dot X basically so automatic updates
you know we've been talking we're
progressing towards that end goal
centralizing the config translation
system right now we're still basically
doing the same thing as Drupal 7 that
we're running variables through T that's
the way all things like field labels
were translated in Drupal 7 it's a way
to translate again backdrop and we're
centralizing that to make it a config
files can say these things are
translatable to make it more friendly to
translation extraction so that things
can be translated but start out in
config references we still don't have a
core like version of entity reference or
user reference or references references
just in general so that's a big item
that's been plaguing us for a long time
that we would like to solidify that we
do have those three modules yes we have
the conversions so which is useful for
upgrading because it's gonna be the same
module but it's not great for like
having one quantity standard thing and
we need something in course so we have
to figure that fully filled with cloud
types files or entities and they're
managed to such but they're not filled
well currently so we've got some things
that we're still working on for the
foreseeable future for we're not X
but what about to us Nate mentioned a
minute ago that we were thinking that
too much tuna ex would break api's but
that doesn't necessarily have to be the
case anymore we've been talking to a
bunch of other people managing other
projects about how they handle major
version updates Symphony for example
with every new version just removes
everything that's marked is deprecated
and since we're getting really good at
adding in new stuff and marking all the
stuff that's deprecated we could choose
to make backdrop to our release it just
removes everything that's deprecated and
carries on with its API compatibility
we've also had some crazy harebrained
ideas mostly mine about making backdrop
support both 1x and 2x modules when two
types comes out so anyone who had a 1 to
X module would still be able to run that
module with no upgrade on backdrop 2
that would require some significant
changes to core itself and some
protections in the modules to make sure
that everything will work smoothly but
it is theoretically possible and then
also we could stick to the old-school
Drupal 7 and traditional pattern where
backdrop 2 comes out and maybe
everything is broken so we've got some
thinking to do about ways that we want
to make upgrades easier on our community
knowing it they're less likely to be
developers and so we're looking at
Symphony style is being very attractive
running two versions of modules giving
people more time to get update is being
sort of attractive and the current style
is easiest because we don't have to
change anything is maybe not the best
fit for our audience
and that's it for the general I know
that was like five years of action all
at once sorry it was a little monotonous
at times but we've got six minutes here
if you guys have any questions so we'd
love to answer so we currently have 350
contributed modules ready more than 64
of them are now in course so those are
not contributing are there now just part
of backdrop and if you look at the
backdrop - chicken trip github group
there's a hundred more that are in
development that aren't currently out
with official releases we have web form
okay with an upgrade path we have most
of the top modules for Drupal we have a
different slide and different
presentation that shows like hard top
what does it track 50 modules or
something and there's two that aren't
ready for backdrop one of them is a
localization update which is underway
and the other one was views PHP which we
hope not to have but we probably will
thank field collection oh yeah we're
gonna feel collection but we do have
multi field and paragraphs yeah so there
are upgrade paths how are you doing like
sitting on backdrop what are the things
like install the prime Softaculous the
backdrop is in both install Tron and
stalked oculus unfortunately those are
not open source projects and we can't
contribute to them so if you click a
one-click installer to get backed-up
installed you'll probably get a version
that's several versions old like 1.4 or
something every time we have a new
version I go and be like
hey we have a new version how do I
update the thing and then there's like
crickets on the other end so I think
they're they they don't we do release as
much faster than they do so it's really
hard for them to keep up on top with our
version but you're making a good point
that Softaculous and other things are
used by shared hosts to install open
source projects and that's that's the
audience that we're trying to serve and
so making it so that you can spin up a
backdrop side easily on any Namecheap
site or GoDaddy hosting or whatever
that's definitely our goal and making it
so that the automatic updates are
available out of the box we'll make
those kinds of monies more viable and
safer to use it'll install it click
update and on our site we'll keep them
up to date
even if installed tron doesn't know
there's new there so our head is in that
space but it's not the implementation
right now isn't where we want it to be
out of people like myself contacting
them instead once you give us a current
version or backdrop yeah maybe
board more popcorn all right apparently
bugging them is the way to make things
happen
[Music]
yeah yes of it so that would be hot
so we're using exactly the same testing
framework in the core as says the
question the question was what's the
status of testing frameworks and what
are we doing - how are we doing testing
in backdrop so we're doing the same
thing as Drupal 7 in in core we are
using a service called Zen CI which is
equivalent to I guess Drupal test me
where it was every pull request against
core we get a sandbox where we can test
things but we do not have PHP unit
testing or JavaScript testing yeah we're
still still saying this Drupal 7 running
along with simply tests
they're simple tests we do have our test
running is really fast really fast we
can run the entire test suite 4 which is
equivalent to all of Drupal 7 test we
have deacon to us views and all the
controls that we put in it runs in 5
minutes
then a complete test suite which is
which is pretty amazing but that's
actually due to optimizations in the
testing code rather than like it's not
it's not actually backdrop theme like 50
times faster than Drupal 7 testing but
the tempo tests are yeah any other
questions is there any interest or
reason
so we are more object-oriented than
Drupal 7 but we have not decided to
eliminate all non object-oriented code
so we use it where it makes the most
sense to use it but we don't just change
it for the sake of making it consistent
yeah and some things that we've added
yeah the entire layout system is all
object-oriented views obvious is
object-oriented previously and that kind
of serves as a model for not quite a
model because views object-oriented Ness
is a little crazy but there's the mix of
procedural and object-oriented code we
have no problem with all of our entities
are true objects not so there's no like
node arrow save but we didn't eliminate
the procedural one say there's still no
to underscore save we sort of took a
page from PHP where they have like both
the procedural date functions and the
object-oriented date functions and we
figured that audience is going to be a
better map to our audience anyway so we
have procedural wrappers around yep and
in many cases like blocks for example
there's still hook based blocks book
block view and hook block form which is
weird with the switch on Delta but you
can also in hook block info you can use
the class instead if you want but the
old procedure on that that is actually
not just wrapped in a class so it does
so it still works so that the backward
compatibility in there so if you have a
Drupal 7 module you want to run in
backdrop that uses up so it'll still
work but if you want to write a fancier
new style block module you can do it
that way - yeah well yeah so just in
general we like object-oriented code
we're just not wholesale ripping
everything out to replace it with
object-oriented
yes excellent question yes so we are on
the drupal security team and by we I
mean me we co release drupal back to our
security releases the same day as your
poll so if there's a core release
Richard cool there's a core released or
backed up on the same day that same
thing holds true for a lot of the
controls they're in backup core so if
there's a security release for use in
Drupal 7 there's going to be a security
release for backup on the same day so
all of our core stuff is is coordinated
the contribs stop we do proactively or
reactively instead of proactively so we
have a backup security team that watches
all of the releases that come out for
all of contributor poll and if there's a
Drupal module that also has a backdrop
equivalent it has a security release our
team will contact the maintainer of the
backdraft module and say hey there's a
scary release this module are you aware
of it are you working on it and if we
don't hear anything we are empowered to
make that release on their behalf so all
of our King trips tuck will be staying
secure even if the contributors are on
vacation ok well we're all out of time
thank you guys all very much and we
appreciate you guys being here today
[Applause]