On 06/08/2012 01:17 AM, Huw Wilkins wrote: > Hi Launchpad, > > I've been looking at how we can make some changes to our UI, but I'm > hitting a bit of a problem. > > If we want to do anything significant to our UI we want to do it under a > feature flag. However, once I use a feature flag I very quickly end up > having to maintain two sets of HTML and CSS or I end up hacking extra > layers of code on top of existing HTML/CSS instead of being able to > write it cleanly from the start. > > This becomes very apparent if we want to re-skin Launchpad were there > are potentially hundreds of places that would need to be feature > flagged. That means a lot of duplication and the new skin would be > written on top of the existing HTML/CSS structure.
The disclosure work has many thousands of lines of code that we cannot delete until the feature flag is removed. This is the expected behaviour of feature flags for replacement code. > Does anyone have any suggestions about how we could approach this problem? You might reduce the duplication in CSS by introducing a class on the body element if the user is in the test. The CSS remains shared. Every redesign we did before, we froze the code, and last time we put every developer on the issue. This was also a bad experience. We were missing most of the layout designs, we had to extrapolate the rules from a few pictures and apply them to pages that had different kinds of problems. Lp's markup and CSS is very inconsistent. Maybe we can fix the markup first so that there are fewer ways to make sections, tables, lists, and menus. This will fix bugs, reduce the CSS exceptions in the tree (and remove style.css). As this is bug fixing, it does not need to be behind a flag. I expect that removing exceptions in the markup and CSS will also give you a lines-of-code credit. Once the HTML is in place, you can work rapidly in the CSS behind a flag because you confidently know all the markup is consistent. -- Curtis Hovey http://launchpad.net/~sinzui
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Mailing list: https://launchpad.net/~launchpad-dev Post to : launchpad-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~launchpad-dev More help : https://help.launchpad.net/ListHelp