APPROVED
We Finally Fixed The Candidate Window
YES, BUBBA. IT CAN BE BIG WITHOUT HAVING A CONTROL PANEL WITH 317 SLIDERS.
For more than twenty years, Macon Web Systems has been writing software for people who have actual work to do.
That is why we are pleased to introduce the Cherry WebKit IME UI, a modern-for-2009 input method interface built around WebKitGTK, CSS, and JavaScript.
It has borders. It has buttons. It has panels. It has a configuration system. What it does not have is a 47-page manual explaining which number makes the fourth border slightly more Georgia.
Developed by Cherry, Our Actual Hacker Girl
Yes, Cherry works here too.
She is still the young technical wizard who apparently understands computers better than most executives understand their own product brochures.
We gave her one instruction: build the interface the way you want it.
Cherry chose WebKitGTK. Then she used HTML, CSS, and JavaScript to build the interface instead of asking an executive committee whether the border should be parameter 317 or parameter 318.
We considered stopping her. Then she demonstrated the prototype. We decided to get out of the way.
| ITEM | THE OTHER GUY | CHERRY WEBKIT IME UI |
|---|---|---|
| Candidate Window | Needs several hundred parameters. | CSS controls the presentation. |
| Customization | Find the correct checkbox. Consult the manual. Call somebody named Gary. | Change CSS. Done. |
| Layout | DividerRatio 400. DividerRatio 401. Computer makes noise. | width: 700px; margin: auto; go home. |
| Colors | Parameter 183. | background: #dce7f2; |
| Behavior | Configuration tree. | JavaScript. |
| Freedom | "Freedom" means having more settings. | Freedom means changing the UI without begging the software. |
| Technical Philosophy | More things = more power. | Fewer things = fewer things to break. |
THE 2009 MACON FREEDOM PRINCIPLE
We believe a user interface should be configurable.
We do not believe that configurability requires a government census of every pixel currently displayed on the screen.
CSS already knows how to handle spacing, borders, colors, alignment, typography, dimensions, shadows, and layout.
JavaScript already knows how to handle behavior.
Therefore: let CSS and JavaScript handle it.
This saves the user approximately four hours and seventeen minutes.
A Letter From Earl "Mac" McRae
I am sixty-two years old.
I have been fixing computers since most of the people selling "enterprise solutions" today were still trying to figure out which end of the keyboard was the important one.
So I have earned the right to say something about old Bubba's software.
Bubba, I know you mean well. I know you like Georgia. I know you like big windows. I know you like borders. Nobody in Macon is trying to take your borders away from you.
But a candidate window is not a county.
It does not require a fire district. It does not require an HOA. It does not require three historic districts and a gentleman who has lived there since 1978 to approve the padding.
If Cherry wants the window to be 700 pixels wide, she types 700 pixels wide into the stylesheet.
That's it.
We call that engineering.
You call it a lack of parameters.
That's why we're in Macon.
Keep the porch. Keep the B-52. Keep the 400 sliders. Just stop asking my daughter to explain what DividerRatio means.
Regards,
Earl "Mac" McRae
President
Macon Web Systems
"We changed the CSS once and the interface looked better. Nobody had to schedule a configuration meeting."
"I asked Cherry how many parameters the UI had. She said 'none that you need to care about.' I nearly cried."
"The candidate window is large enough. It does not have its own chain of command. This is an improvement."
"I tried setting DividerRatio from 400 to 401 just to see what would happen. Nothing happened. This was extremely refreshing."
"My computer has not asked me for administrative privileges since installation."