Click here to register.

I'm a YUI Contributor!

Design Squid
I'm a YUI Contributor!
preaction · 9/4/2009 0:44 am

A while back I was posed a question: Why doesn't WebGUI have a syntax-highlighting code editor for templates and such? Later that night I was evaluating existing editors for inclusion in WebGUI, and by the end of the week WebGUI was using one.

Things did not go well from there. The code editor barely worked when put into WebGUI's environment, and did not have even the feature set of our old resizable text area (resizing). Eventually we ended up disabling it by default, and even that caused problems.

So when Graham pointed me to Dav Glass's prototype syntax-highlighting code editor based on YUI Editor, I was skeptical. Then I looked at the code, a mere 100 lines of JS to add the code editing functionality to the existing YUI Editor. Armed with my YUI knowledge, Safari's JS debugger, YUI's Logger, and an intense desire to stop hearing JT, Frank, Graham, Steve, and everyone else whine about the code editor, I resolved to improve on Dav Glass's prototype.

I e-mailed Dav about getting his prototype on Github. Within 6 hours he had it up there and ready for me to fork. He also pointed me to the YUI CLA, which would allow him to look at and use the code I contributed. It would also allow me to contribute code back to other parts of YUI, like bug fixes or features I might contribute. After printing, signing, and mailing in the CLA, I got to work.

After some code cleanup, I came across my first feature/bug: YUI's Editor could not handle a toolbar with no buttons. Luckily it was a simple fix to initialize a property to an empty array instead of undefined, though it was not simple to find (being my first dive into the code of YUI's editor, which is very nicely commented and organized). I fixed the editor in my YUI2 fork, and submitted a pull request through Github, and no more than an hour later I was informed that it was being assigned to Dav for review and acceptance.

Today, less than a week after I submitted my bugfix, I've been notified of my patch being accepted. I am now officially a YUI contributor, and not just a belly-itcher. The entire process was nice and smooth, and everybody I've worked with so far has been extremely helpful and friendly (Dav Glass, Eric Miraglia, and the people at #yui on freenode).