[wp-hackers] Re: New Posting Screen
Owen Winkler
ringmaster at midnightcircus.com
Thu Jun 23 19:16:37 GMT 2005
After an evening to reflect on the position of things and hear Matt
defend himself from all comers, I want to present my thoughts to the
group for comment.
Matthew Mullenweg wrote:
> The current implementation ("unpleasantly long" load times) is
> something that can be improved with time and iteration. (Much like the
> original code for Kubrick was nearly unusable, but got much much better
> with iteration even though the general concept stayed the same.) If
> something *can't* be improved or iterated on, then it is worth
> discussing the validity of the concept itself.
I'll admit to being the one responsible for the initial "unpleasantly
long" comment. I did test the code, and this was one of the things I
left out of the report I posted on my blog.
It is very important to note that the underlying changes (which Matt
points out) that prompted the javascript/collapsible interface are
**such a good development event** that the collapsible panels are almost
a footnote. We can make the collapsible stuff better - prettier or less
intrusive. But something of this nature is going to be a requirement to
support the underlying improvements in the posting interface.
For the uninformed, the new interface unifies the advanced and simple
posting pages into a single code path. This reduces the overall code
used, which makes the code more stable and readable.
The major objection I have to the current codeset (not that it can't be
improved) is that the interface is largely unusable until the collapsing
javascript executes. These extra javascript modules (Dojo, if used,
will be a big offender) are rather large, and take a "while" to process
even on my heftier desktop system. It's a sore point in the code
execution. If we're looking for constructive criticism on the trunk
code, my initial thought is that this needs to be much faster.
As far as the look of it goes... I'm certainly no design expert. The
chief idea behind the javascript code seems to be "retain the old
functionality". This entails hiding the advanced interface by default
and allowing the user to set their preference of what appears. Indeed,
the new interface does this *better* than the old, since you can hide
and show the parts by default as you require, and these settings "stick".
> Before you get excited here, I haven't seen the code either! Someone
> poke Owen. ;) I "delegated" that part of 1.6 to Owen because he had
> already written a really excellent plugin for WP for media handling and
> he was also able to grok the media model for WP. (The post/sub-post
> thing that was discussed on this list ages ago but lost now because it
> wasn't archived in a wiki or blog.) This is also part of me letting go
> of aspects of development to third parties. As soon as I know more about
> the code or get a peek at it, I'll let people know.
I actually sent Matt an email a while back with a few questions on this
that I hadn't received a response to, and I stalled. If you like, Matt,
I will gladly write up the concept and present it to the list for comment.
I feel mostly responsible for keeping these feature additions under
wraps, since I agreed with Matt's idea of having something to play with
before letting everyone here pick over it. I'm sorry that I've been a
party to keeping potential players out of the loop. If you have
specific ideas about the media management components you want to discuss
or suggest (and I am sure some will attest to my openness on this -
skippy, mdawaffe, et al), please email me and I will happily discuss
them with you.
>> If I want to "discuss" some major overhaul of WordPress, it's a little
>> harder for me to get everyone to download and test it, regardless of
>> the possible merits of my suggestion.
>
> See and touch doesn't need to be core code, it can be graphic or HTML
> mockups, or even just ASCII drawings like the other Matt used to do. In
> theory plugins could do this as well, but your point is taken.
At this point I would interject a few items. First, I disconnected from
all of these WordPress lists and meetings for a few weeks while dealing
with many issues, and I'm still not convinced that jumping back in now
is a great idea. But I see that WordPress the community needs some
bolstering, and as it's really (sometimes sadly) the only cause I've
been able to stand behind, I'm here right now.
That said, it should be obvious that I didn't get the memo about not
writing about 1.6. Oh well. (In my defense, I wouldn't even have known
about it if I hadn't seen Ryan's post in the Dashboard.) I've received
a lot of good comments about the new interface based on the animated
screen shots I took. To my recollection, nobody commented negatively,
and I only received one question of, "Release date?" As if I would know
the answer to that!
I agree with the simple idea that Mike presents about sharing the idea
of, "Here's what's going to happen with WordPress." A 'heads-up', if
you will. That's why I didn't see any problem in writing my post, with
all of the added caveats that a pre-alpha requires. Although everything
that I discussed was obvious from the SVN mailing list, it's often not
apparent what a chunk of code does, and the notes that go with committed
code are often too short to describe what is really going on and why.
After reading the replies here, I believe that Matt intended the commit
of the new interface as a discussion point, not as something firm in
stone that we'd have to live with. There have been instances in the
past where committed code has seemed to be beyond discussion, which is
why I think everyone took the code commit as gospel.
Can we all possibly agree that the current 1.6 in SVN is a prototype
rather than the actual deal? That we're all going to get our chance to
debate its merits? It's better to see actual working code and
understand what is in mind than discuss hypotheticals unendingly? I
don't intent to be snarky, but if you want the code to be different than
how it is, you need to not only defend your position, but provide at
least as much working code as your opposition so that others may weigh
the merits of both options.
Assuming the SVN list/Trac describes an evolving prototype, and that it
is still possible to rollback these changes, is that enough of a
description of where the project is going? What suggestions do you all
have for monitoring the project direction?
Some minimal effort to get ideas flowing would be more than useful.
"I'm starting to code X now, and here's my plan..." Even I find this
distracting from my style of just coding the solution freestyle, but a
simple message like this would sure be useful to people who want to be
in the loop. Who knows, you might even get some great suggestions about
implementation that you hadn't even considered.
Also, devs need to at least seem willing to roll-back changes based on
thoughtful debate. If it turns out that this collapsible thing is not
feasible, we're going to need a suggestion to take its place. Someone's
going to have to code that. I can understand the unwillingness to
consent to roll back such significant changes, but provided that civil
discussion results in good arguments against it, the option should
always be available, at least until a Code Freeze (a topic for another
time). The idea for official polling on these contentious ideas is a
good one, as long as we can all live with the poll results.
Is that enough commentary for today? Why do I always write a book?
Owen
More information about the wp-hackers
mailing list