Contributing to Open Source

The last week has seen some movement on a couple of the open source projects I’ve been involved with in the past couple of years. I’ve already spoken about the first one but now I’m going to talk about the other project that I had such high hopes for which have been washed away and effectively thrown back into the faces of those that actually devoted their time into producing the goods, I am of course talking about Shuttle.

For those in the dark I’ll give a brief history of the WordPress Shuttle project. The idea first came to me after I had just finished my work on the Manji theme. I had so much fun collaborating with people online and producing something that could be used by other people (and thus giving back to the software that runs my site), that I really wanted to get back into the game straight away. I talked to Joshua and the Chris, both of whom I have the greatest amount of respect for, both of which were completely up for the project. By sheer luck Michael was having thoughts about this of his own as well. He was more than happy to join the team and in doing so brought Matt’s (Lead WordPress developer and Automattic head honcho) attention. The endeavour was now considered more than just hot air. In a very shrewd move Michael brought in Joen and thus the initial Shuttle team began work. Because a picture paints a thousand words, this is the screen shot of what we had to work with when we first started:

WordPress 1.5

If you’re interested to see more, you can have a look at a .

We started work in earnest and the emails began flying between us. We were talking about everything and anything that came to our minds. We did research of all the existing blogging software tools (and the time those that hadn’t been released yet). We talked about usability, advanced users, novice users how things should work, how things should not work, what areas we should concentrate on. Seeing as we’re all bloggers we decided to give the call out to people to find out what they thought as well:
  1. https://brokenkode.com/archives/shuttle-development/
  2. http://binarybonsai.com/archives/2005/02/01/wordpress-shuttle/
  3. https://brokenkode.com/archives/shuttle-workshop-01-dashboard/
  4. http://www.chrisjdavis.org/2005/01/31/the-cat-she-is-out-of-the-bag/

My initial thinking was heading towards something completely radical to what we had. Just strip the walls down and start implementing things in a completely different way. I don’t know if I can find the very initial mockups I started flirting with but you can check out the a lot of the initial design development. This is where working in a team is paramount. I remember Joen distinctly pointing out that the fundamental structure of WordPress was fine and that we shouldn’t be rocking the boat for the sake of it but rather finding what works and what doesn’t. Making things simple for the user. I’m completely paraphrasing probably a couple of weeks worth emails beings fired between the ENTIRE design team, which of course included Matt at every step of the way (we didn’t have a mailing list until Matt set one up for us). It was agreed that we wouldn’t move to anything radical unless we felt it served a specific purpose.

I should have seen the writing on the wall to be honest. As the design went forward Matt seemed to implement things he liked and not bother with things he didn’t. So the blue hues made it into the design, as did the pods on the side, but little else. To be fair to him at this stage we really hadn’t moved every single aspect forward as you see it in the final mock ups.

The days went by and action on Shuttle was sporadic at best. We’d go through these massive bursts of creativity and energy and information sharing. Every once in a while one of us would prod the team to get it’s finger out and continue with this project. You might think it should be easy but people have lives and many things to do get in the way and it’s not like any of us didn’t have other projects on at the time.

Lets make one thing clear here. I am a finisher. I complete the projects I’ve actively put my name down for. I’m not in the business of making a claim for something and not going through with it. I’ve proven this time and time again. Even when things get tough, even when it seems like it’s not even worth it, I will continue to plough forward even if it’s only me, with the hopes that those around me will feel good enough for them to contribute as and when they seem fit. Contributing to Open Source should never feel like a chore. It should be fun, it should be something you actually want to contribute towards.

So in a last attempt before I completely gave up on the project I dived into the designs. For two weeks straight I would come in from work and spend 4-5 hours implementing the designs. I tried hard to keep with EVERYTHING we’d discussed in the past. The dos and dont. I tried to find solutions to design aspects we hadn’t really covered. I’ve not had that massive creative burst of energy in years (and this was done on the back end of creating the FOFRedux redesigned UI). I tried taking into consideration things that although I didn’t agree with I had to make concessions to allow for.

A prime example is the dashboard. We were told not to go too far with this because lots of discussions were going on in the hackers mailing list and it would probably be the one place that we didn’t have much say in. This is all well and good, so I tried to come up with a solution I could at least stomach. It’s easily my least favourite page of the entire design.

Once the mock ups had been completed I left them with the rest of the team for comments to be put on the table for them to change whatever everyone felt worked and didn’t work. We then proceeded to discuss how we were going to implement the designs. Matt was NEVER truly forthcoming about how this was all going to be implemented. We discussed the issue further, but once again he was as elusive as ever. When a response finally came back I didn’t know how to react. Thankfully other members of the team did. The designs were not some chicken to pick and choose at what you like and what you don’t like. They present a certain level of uniformity across the pages. They follow a specific design thought, and a great deal of thought and attention to detail has gone into them.

After we talked about it a bit more, and we were promised by Matt that things would get incorporated into the WordPress core, however it would take some time and it was mainly to make sure that people didn’t get jarred with the changes in one go, this was a solution I could honestly live with. The design wouldn’t be hacked but implemented gradually. So I went forward and released the mockups because they were the culmination of our active involvement in the project as things would now begin to get integrated into the core code. Of course things would change or be tweaked as the design was implemented but by and large it would remain the same.

Any which way you cut it that’s why Shuttle never made it into the design of WordPress. It has nothing to do with us being lazy or that we couldn’t be bothered to do anything but the photoshop files. Joshua had begun implementing the design on his own machine, we were discussing the logistics of how this project would be implemented into the code. However as it turns out there doesn’t seem like there was/is any commitment from the WordPress Dev team to incorporate these designs. If there was a commitment it would take 3 guys 4 weeks TOPS to deal with it all. There are well over 100,000 WordPress users, many of which are pretty capable with both CSS/PHP/JS. Hell there are people out there that are already implementing this off their own backs.

It doesn’t seem like the WordPress development team (and by definition Automattic team) are keeping to their word because the latest addition to the Automattic team is now going back to square one to start over, asking people the same questions we did when we first started the project.

Bryan joined the shuttle team late in the game and in some ways I think he didn’t feel as comfortable jumping into the design. He’s a fine addition to the Automattic team, and more importantly I like the guy, so none of this is aimed at him. He has been given new directions by the powers that be. Strip it down, build it up again from the ground if we have to. Why is it called Shuttle:Atlantis? Maybe because Matt didn’t like the first one? That’s what it boils down to to be honest. The alarm bells started going off when I read the first things to come from Bryan over of the WordPress.com blog.

… see that Shuttle finally makes its debut in whatever form we as a team see fit.

So I’d like to address those that didn’t like the Shuttle mockups. You (the collective you) got 5 people (plus 1) devoting a massive amount of their time to make your blogging experience more enjoyable; more usable; more fun. We didn’t ask for compensation and we didn’t ask for anything in return. We didn’t rush into this and we certainly didn’t hack through the designs. We did this because we believed in the sotfware. We believed in the people behind it and the people using it. None of us on the team are new to open source contribution. Michael’s contribution doesn’t need much introduction (Kubrick and K2), similarly with Chris (whose contributions extend far into the past of WordPress, Persian, plugins galore, K2), Joen does this for a living and has contributed for the admin panel on Zenphoto (including the default theme) and his wordpress theme Fauna. I have given the open source world Manji & Rin and contributed in the redesign of the FOFRedux UI. Joshua has answered enough support questions to make my head dizzy. Bryan has contributed to the world ChaoticSoul.

Open source is great because you can contribute to the source in a positive way, otherwise none of us would be actively giving to it so freely. That however is not the universal truth. At least that doesn’t seem to be the case in the WordPress world. This is a shame because part of WordPress’s success is the people involved with the world it surrounds. I have said many times before that is one of the things that elevates it above other open source initiatives.

It’s a shame really. Has WordPress really gotten so big that those in charge of implementing it no longer care for those that devote their time? As long as you’re creating a theme or a plugin that’s great, just don’t even bother thinking about contributing to the final product in any way. That kind of contribution is obviously not welcomed. There was a time when the Shuttle mockups, created exclusively for making WordPress prettier, would have been taken in with grateful arms. It seems that time for WordPress has passed.

Compare the current admin panel with those presented in the Shuttle mockups. Once you’ve done that go back to the top and compare it with Version 1.5.

current.png

Write.jpg

Do you see something different. One was designed and thought through. The other is an ad hoc implementation of core ideas. I could go on at length to discuss the design decisions to be honest with you however I tend to allow the work speak for itself.

Ultimately I’m extremely proud of the work we did in TRYING to make the WordPress admin a better looking more usable place. The online friendships I’ve forged with the Shuttle team are thanks enough, even though the work we did was ultimately not appreciated. This is probably the very last time that I talk about Shuttle, unless of course someone implements the design aspects of the work we created as a plugin or in another way.

28 Comments

  1. You should be proud of the work you’ve done. Been following the progress and am impressed by the result. Why shuttle isn’t implemented in wp is a mystery to me. With so many talented people having put so much time in it, looking at the result, who would deny the quality of the result. Well, that’s a question you probably want to see answered as well. Great job and keep up the great work.

    1 Matthijs
    Quote | 13/8/2006
  2. I also have to say that I think you should be proud of what you and the team have done. But, I think the questions being asked at Avalonstar are also important. People should always ask for feedback as everything can be improved. I think a lot of what you and the shuttle team did is very good, but some of the things being pointed out on the Avalonstar post were missed in the shuttle design, mainly the position of the categories, I have never liked their location.

    2 Phil Bowell
    Quote | 13/8/2006
  3. It is a shame that the Shuttle adminpanel never made the street. It looks fantastic and by not following through on the project they kill any chances of creating a growing opensource community. I hope you won’t stop using your creativity opensource though, and that the Shuttle gets implemented some time!

    3 bza
    Quote | 13/8/2006
  4. All of you who worked on shuttle did a great job. It looks amazing. I personally haven’t used Wordpress because I am a big textpattern fan however I would think about making the switch if Shuttle was implimented into the Wordpress admin. Anyways, I’m stoked on your design for FOFRedux and I think I’ll be reading my feeds out of that very soon instead of my current Bloglines set up. Keep up the great work because there are many of us out here that do appreciate it.

    4 Glenn
    Quote | 13/8/2006
  5. Hey Khaled being someone whom doubted the project in its early stages i found myself highly anticipating every minor update hoping it would finally include Shuttle but to no avail.

    “… see that Shuttle finally makes its debut in whatever form we as a team see fit.” That for me is taking the biscuit!

    What the Wordpress team did i feel was a little bit disgraceful. I feel perhaps they are getting too big for their boots? Wordpress and open source is ment to be for the people by the people. At least they could have given you a straight forward reason not matter how much it might have hurt its the least they could have done.

    Anyways i for one don’t think this is the end of Shuttle…

    btw if one wanted to code a plug-in of Shuttle where would one gain the main resources needed etc?

    5 Zain
    Quote | 13/8/2006
  6. You know the great thing about Open Source software is that it’s Open Source: You can do whatever you want with it. I’m not going to speculate on why Matt and the rest of the Dev team decided not to implement Shuttle. Who knows and until you sit down and have a conversation with Matt and talk things through you won’t either. I do understand the frustration of working on something and putting sweat and time in it and not having it go anywhere, but I’m not sure that subtly suggesting that Matt is the reason why things didn’t go down is the right way to go. What I will say though is that if you feel that Shuttle truly has some things to offer, implement it and release and let the public choose.

    Thus my original statement about Open Source: You can release it, if you so choose, because Wordpress is Open Source. Just look at what the Lyceum Project is doing. You don’t have to claim that it’s a totally new product, just say that it’s Wordpress with a different Admin layout, one that you think people would find more productive. Or instead of releasing a re-hashed version of Wordpress, release Shuttle as a plugin that can be activated like the Tiger Admin plugin. All I’m saying is this: If you feel that you’re doing can truly be useful to people that use Wordpress or other products, put it out there and let the leaves fall where they may.

    6 viperteq
    Quote | 13/8/2006
  7. I sense your frustration and disappointment and sympathise with it. As I have said on my own site before now, there is an arrogance within the WP dev team that is not conducive to co-operation or suggestions from outsiders. And the smallest hint of criticism brings down the wall of silence.

    However, my reading of this is that what the WP team are actually planning goes beyond Shuttle. Shuttle took the current admin panel collection and largely placed a consistent skin around it and a good UI. Sure items were relocated and moved about to make things easier and better but the core remained. What appears to be the proposal however goes beyond that to actually revisiting the nuts and bolts of what the UI contains and how it interacts - what is there and what should be there. The UI layer goes on top of that process and from that point of view perhaps the core of Shuttle may still see the light of day.

    If this is what they are doing then I for one applaud that decision as it is much needed. If it ends up using the elements of Shuttle then even better.

    7 andy
    Quote | 13/8/2006
  8. Khaled, I’m a little surprised to read this. I wish you had emailed me first and perhaps we could have talked about this.

    If you remember when the Shuttle process finished we all recognized it had been in some ways a failure. It took several years (two major WP releases) to get anything out in the public, and the “final” version reflected mostly your interpretation of the team’s views because I think other folks were too tired at the end to help out.

    Finally, you tossed it over the wall so to speak, saying “this is it” and saying you were done with the project. We were already well into 2.1 development and some core parts of WP had changed enough that some mockups didn’t even apply anymore.

    There was an email at the end where we recognized a few things that would have made Shuttle more effective:

    Discussions happening in the public, not a secret mailing list.
    Frequent releases and iterations.
    Working code, not mockups.

    At the end of the day open source decisions happen through a hundred small decisions every day. There are plenty of coders who have the motivation and humility to contribute to open source projects day to day, but very few designers, perhaps because the best ones are just so darn busy all the time. (It’s not just WP that lacks design volunteers.) However the absence of daily design input into the WP development process is one of the things that led me to seek out hiring someone to focus on that full-time.

    Bryan has a great deal of autonomy in how he goes about things, and I’m absolutely certain he didn’t mean to offend you or anyone else by talking about some of the things he was working on publicly, but I’m sure when he makes it to the comments he can speak to that personally. Even though he’s an Automattic employee, he still goes through the open source process. Note that his contributions go into Trac as patches, just like anyone else’s, and they can be commented on, critiqued, improved, and possibly rejected by anyone (including you).

    8 Matt
    Quote | 13/8/2006
  9. I thought the addition of Bryan Veloso to the WordPress team would be the catalyst for Shuttle to be implemented, if not in whole at least in part. I don’t think you should expect every aspect of Shuttle to make it into the final cut; as you have criticisms of the current WordPress setup, I’m sure the Automattic team would have valid ones of Shuttle as well.

    What I was hoping for was the good bits of Shuttle to make it into WordPress, and I thought Bryan was beginning some form of implementation with the new login page. And he does credit the project on the WordPress blog.

    Nevertheless, I can understand your frustration after all the effort invested that scant attention is being paid to this project. Shuttle looks great and regardless of whether it’s implemented, I’d like to thank you and the rest of the team for all your contributions to WordPress.

    9 weisheng
    Quote | 13/8/2006
  10. the “final” version reflected mostly your interpretation of the teamâ��s views because I think other folks were too tired at the end to help out.

    I don’t want to fuel a fire here, I’m still genuinely hoping Shuttle makes it into Wordpress, but I would like to respond to this particular comment. I was genuinely impressed with Khaleds final work-over, and I honestly support it 100%. I wasn’t too tired to help out — I’ve worked on LEGO Mindstorms for a year and a half now and we’re still not through. When I didn’t have any edits to Khaleds final suggestion (I had one or two minor comments I remember), it was because Khaled had hit the jackpot. He had actually kept all our discussions in mind. The simplicity, the color scheme, the general layout, the pod functionality, the unstyled UI widgets… Best of all, it was designed in such a way that most of the design could be achieved by simply re-doing the Wordpress admin CSS.

    In the end, I love Wordpress. So much that I’ve developed a theme for it. So much that I help friends of mine install Wordpress when they want to blog. I never worked on Shuttle for Khaleds sake, nor yours to be honest, I did it for them — and myself of course. I’d really like a nicer and more effective admin section.

    I have good confidence that Bryan can implement Shuttle in a way that’ll please all parties involved. It’s not rocket science… adjust the fonts, tune the color theme, switch out the tabs and style the pods. There. Shuttle.

    10 Joen
    Quote | 13/8/2006
  11. Matt, while I agree that 2 years is a long time, I can’t really see the wisdom in your list of “effectiveness” comments.

    Discussions happening in the public, not a secret mailing list.
    Many cooks spoil the broth. The initial, fundamental design fase is best done in a clean and fast environment.

    Frequent releases and iterations.
    Yes, because confusing people about your direction and getting tons of feedback on stuff you’re going to change anyway is a great help.

    Working code, not mockups.
    So you want the designers to code instead of having the coders code?

    Having someone to work on the Admin Interface fulltime is a good move, but snubbing the team and going back to square one? Hmmm.

    11 James AkaXakA
    Quote | 13/8/2006
  12. I don’t think anyone is being snubbed.

    12 matt
    Quote | 14/8/2006
  13. No one is being snubbed.

    Kahled has come up with a fantastic design looking for a home, not a home looking for a fantastic design.

    The problem isn’t so much shuttle, it’s that the dev’s will always be focused on core design and fixes. New or improved features are being added to the trunk every other day.

    Matt, if you were serious about this you would invite Khaled into the core dev team and allow him to start work on the implementation of the design ideas. Obviously the dev’s do not have the time or inclination to put ‘eye candy’ in front of fixes and updates. That’s not their fault, either.

    Part of running an Open Source crew is understanding that to move forward you need the “right mix” of people. The current dev’s are a great group of people who have honestly achieved quite some imho, however it’s pretty obvious ‘the design aspect’ isn’t included in that group. :)

    It’s your team, however WordPress will never be a terribly nice product to use while form and function race on ahead unabated whilst design is relegated to the basement.

    At the end of the day it’s your call, however I would suggest Khaled would be an ideal candidate to spearhead development of the WordPress administrative interface.

    Does anyone else agree?

    13 brendan
    Quote | 14/8/2006
  14. Isn’t Bryan already on board to do just that?

    14 weisheng
    Quote | 14/8/2006
  15. weisheng said:

    Isn�t Bryan already on board to do just that?

    That may be, but this post wouldn’t exist if things were just rolling along swimmingly now, would it? :)

    15 brendan
    Quote | 14/8/2006
  16. I’ve spoken with Matt and we might have some good news (hopefully). In the meantime I’m just going to address a couple of points to set the record clear:

    1. I read Matt’s comments above that he thought Shuttle was a failure. He told me that’s not exactly what he meant (because that would be very hurtful), but rather the process which we carried out was a failure. We all agreed that the process we progressed to get to the mockups was not the correct one and we’ve all learnt from the process itself.

    2. Work on Shuttle began (and by that I mean serious discussions on the mailing list) in February 2005. We issued the mockups in the middle of May, having sat on the designs for a month. That’s roughly 1 year and 2 months after the project started, not 2 years; having missed one major update (1.5 to 2.0), with elements from the design being incorporated into that particular update.

    3. I said that I had effectively given everything I had to give, however if there were any elements to the design that needed revisting I was more than willing to come back out of retirement and aid in any way.

    4. I don’t expect every aspect of Shuttle to be implemented. I’m fully aware that many issues about functionality are completely out of the design’s hands. However I believe that the work done in Shuttle should be the basis from which you move forward and go through the open source process. You need something to work from. You don’t start a design without some basis. Why are we reinventing the wheel, when we’ve already designed the car?

    16 Khaled
    Quote | 14/8/2006
  17. Looking as an outsider, and so by definition missing a lot of the facts, it seems perhaps that creating one Photoshop mockup was the wrong way of delivering the product. It hides a lot of the details and design decisions, and it seems fundamentally incompatible with the OSS process of small, incremental change. It’s great as this sort of future point in the sand, as a vision for people to strive towards, but I’m more inclined to see OSS as a blind process, akin to evolution, that creeps through the unknown little by little. It knows what direction it’s headed in, but never quite knows where it’s going. If you’d offered up a set of incremental improvements, complete with design reasoning (at the moment it all seems a bit opaque), it seems like that would’ve been a format more appropriate to the OSS process.

    Another thing I would note is that I think people are attracted to the OSS process because of the creativity and freedom it offers its participants. That’s what’s fun about it. By presenting your work as a Done Deal and then inviting others to implement it, you are asking other people to give up their freedom and their creative input. In those terms, I can understand why people wouldn’t be that keen.

    I kinda get the feeling I am stating the obvious, but I’m gonna go ahead and hit Post anyway. Hopefully I have managed to be more respectful than normal too. :)

    17 SpiderMonkey
    Quote | 14/8/2006
  18. “Looking as an outsider, and so by definition missing a lot of the facts, it seems perhaps that creating one Photoshop mockup was the wrong way of delivering the product.”
    What about twenty photoshop mockups? Go check out the Shuttle project page.

    I get what you’re saying about programmers not having freedom when implanting stuff like this, but UI design is really something that should be handled by artists and usability folk, not programmers*.

    *Unless, of course, those programmers overlap into the previous two groups.

    18 James
    Quote | 17/8/2006
  19. The shuttle project is fantastic — no two ways about it.

    In the end, i don’t find any major flaws in the current WP design. It’s functional and not cumbersome. If the WP team is going to foucs on anything, I’d rather see them pour weeks into the core program over beautification.

    In theory, couldn’t this all be accomplished through some sort of a plugin (similar to the OSX admin theme)? It’s a shame to see the work go to waste.

    With all of that said a done, I think Matt and co. have the right to pick and choose where their focus is. Personally, I’m excited to see what’s in store for WP in the future. I’d love to see Shuttle included but, even if it isn’t, the work is superb.

    19 Ryan
    Quote | 18/8/2006
  20. I’d like everyone to think about something for a minute - from their own perspective…..

    Bryan was hired to do something - design for wordpress. After reading these comments, I don’t think anyone means to say anything hurtful about Bryan - I do sense a lot of frustration. That generally happens when people assume things, little to know communication between said parties, etc…

    However, the fact is, Bryan is hired. I think it a great thing. I also think it a great thing the shuttle team has done. As Khaled stated, some mistakes were made… but the great news is that some “lessons were learned” from the whole process.

    Now, getting back to Bryan. Put yourself in his shoes. He’s basically getting “ripped” and I think instead of making noise about “what we all think should happen” and via extension, thinking what Bryan should do, maybe we should just support Bryan and let him be his damn fine creative self.

    All I’m saying - Let’s give Bryan a chance and support him instead of bitching about what is wrong with this or that? Know what I’m saying?

    20 Scott
    Quote | 21/8/2006

Leave a Comment