Requiring JSON is just a matter of adding 'json' =>
'http://php.net/json' to $required_extensions in the installhandler.
Are there arguments against requiring it?
--
Michael C. Harris, School of CS&IT, RMIT University
http://twofishcreative.com/michael/blog
If we want the admin interface to degrade graceful for non-JS capable
browsers, then I don't think we should require JSON.
Cheers,
Scott
Do we want that? I don't think we state that anywhere?
How will silos work if we don't have JS? There are also a number of
pages in admin (tags, for example) that as they currently stand cannot
degrade. Should our ultimate goal be complete degradability, given our
cutting edge technology underpinnings? We are talking about the admin,
so mandating a JS browser doesn't seem very different from mandating
PHP 5.2.
> If we want the admin interface to degrade graceful for non-JS capableDo we want that? I don't think we state that anywhere?
> browsers, then I don't think we should require JSON.
Michael C. Harris wrote:
> How will silos work if we don't have JS? There are also a number of
> pages in admin (tags, for example) that as they currently stand cannot
> degrade. Should our ultimate goal be complete degradability, given our
> cutting edge technology underpinnings? We are talking about the admin,
> so mandating a JS browser doesn't seem very different from mandating
> PHP 5.2.
>
Our cutting-edge underpinnings are for our hosting requirements, as a
self-hosted option requires a level of knowledge that I think is
compatible with requiring cutting edge installations on the host. The
user can confirm what the host provide when they install. However the
user cannot always control what browser will be used to access the
admin. Mobile browsers, corporate environments, internet cafes... any of
those could be used by even an advanced user, and not have JS
functional. We need to keep that in mind.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFIT8lnmQpMBUWJpdsRAtPfAJ9AMWsxgf+aUmAcznNrwHUKtjCV6gCgl3qX
5e09Cz+6XHFB5BZkoXGiqOE=
=mjm2
-----END PGP SIGNATURE-----
I suppose requiring JSON isn't a big deal: chances are most users will
use a fully capable desktop browser at least for installation and
primary use of their site.
But as Sean points out, I would like to be able to perform _most_
admin functions from the Blazer browser on my Palm Centro. I don't
expect I'll need to visit the /admin/tags page, but I'd like to post
and manage content, as well as moderate comments.
Cheers,
Scott
Maybe this would be a opportunity for a "Mobile-WG", to create an
alternate non-JS based interface. As an example, GMail has an
alternate html only interface for unsupported browsers, which allows
you to do most of the admin tasks, without the funky ajaxy stuff. I
see no prob with providing such an interface for Mobile, non-JS
browsers.
We might have talked about it but I don't think we've documented it.
Granted there is more in the client-side discussion than just JSON.
However, in the case of JSON, server-side and client-side can't really
be separated. We use JSON to communicate with the client, and that
client must be JS enabled.
> We already have high standards for the server so I think it is
> reasonable to require another required extension. The only reason we
> wouldn't do so is if we decided to abandon AJAX entirely (which
> isn't happening anytime soon).
There seems to be a consensus that access to most of the admin should
be possible without JS, at least for mobile devices.
I propose we include the JSON extension as a requirement.
Additionally, we state that we will make every effort to have as much
of the admin as possible degrade gracefully (we can do a lot better
with the tags page, for example), but state that a JS-enabled browser
is a requirement for the default admin.
Moving slightly OT, using the word 'default' though implies other
possible admins. The obvious 'other' is a mobile admin, which seems to
me to be essential, and I think the mobile WG to work through those
issues is an excellent idea. But how far do we want that to go? Would
it be harmful to offer a very simple JS-free admin as well?
> > There seems to be a consensus that access to most of the admin should
> > be possible without JS, at least for mobile devices.
>
> I agree with this, and would go so far as to say most (all) of the
> admin should be possible without JS or CSS.
>
> > I propose we include the JSON extension as a requirement.
> > Additionally, we state that we will make every effort to have as much
> > of the admin as possible degrade gracefully (we can do a lot better
> > with the tags page, for example), but state that a JS-enabled browser
> > is a requirement for the default admin.
>
> I support this, especially if we include a focus upon degrading
> gracefully. Perhaps a compatibility working group should be formed,
> with intention of working on degrading gracefully *and* making sure
> the admin is compatible with browsers we select. (The WG would be
> responsible for setting those standards.)
Looks like we're taking on the WG idea in a big way :)
> > Moving slightly OT, using the word 'default' though implies other
> > possible admins. The obvious 'other' is a mobile admin, which seems to
> > me to be essential, and I think the mobile WG to work through those
> > issues is an excellent idea. But how far do we want that to go? Would
> > it be harmful to offer a very simple JS-free admin as well?
>
> I think there are two issues here: mobile admin and JS-free admin. I
> firmly believe there shouldn't be a "JS-free" admin. Instead, we would
> focus upon making sure everything still works in the default admin,
> even without JS enabled. This would be for computers without JS
> enabled. Thus, it would fall under the jurisdiction of the
> compatibility WG.
Looks like I wasn't clear, but I was really talking about how we
manage any kind of alternate admin. JS-free was just an example. But
maybe the need is imaginary and we can just have one fully-degradable
admin (and maybe a separate lightweight mobile-focussed one).
I'll just state right up front, as unpopular as it might be to say, that
it will be a long time before I support graceful degradation in Habari.
For the core admin (and that's all I'm talking about) for now we
should require javascript.
This is not saying that I think we should exclude UA-specific admin
themes or work to eventually make the admin functional without
javascript. I just mean to say that we should base our core on an
A-grade user experience, not add js to a B-grade experience.
People should say that the admin works but sucks without the javascript,
not that it works without the javascript and, oh by the way, it has some
things in it that look neat when javascript is enabled. I think we're
fairly clearly in that territory with the timeline already.
Owen
Vague in what way? An ACL system and podcast support. We probably
should have included an admin upgrade. Those are the goals for 0.5,
if we have them, it's time for 0.5.
We had much more in the roadmap for a while - now _that_ was vague.
Vague in what way? An ACL system and podcast support. We probably
should have included an admin upgrade. Those are the goals for 0.5,
if we have them, it's time for 0.5.
I'm not saying that our roadmaps can't be improved, but they're not
the place for these sorts of things. The specifics are in trac as
tickets. If someone wants to help with podcasting, asking here or on
IRC how to get involved will get you pointed to the appropriate places
(for example, ticket #9, the podcast and RSS plugins, FormUI for
adding enclosure data etc).
> Before I did Monolith, I got banged around a lot for the way I wanted
> to do the admin 'on my own', and someone, I forget who, told me that I
> should consider the fact that some people actually write documentation
> for their apps/features before implementing them. That way you know the
> path, you simply have to walk it.
> And so I did that for Monolith, to the extend that it made sense and I
> had time. And it worked. And I suggest we do the same for roadmap
> features.
But no-one asked you to put Monolith documentation in a roadmap.
Good catch ... but at this point we were talking about client side :)
/me wishes he'd just added the one line of code to require json and
never posted to -dev.