comparison www/about.html @ 1597:15b4fc37d5f7

Minor tweaks to about page.
author Rob Landley <rob@landley.net>
date Tue, 23 Apr 2013 19:13:02 -0500
parents 455f8dec31a0
children ff283fe54626
comparison
equal deleted inserted replaced
1596:59156cd2301a 1597:15b4fc37d5f7
292 <li>Make Android self-hosting</li> 292 <li>Make Android self-hosting</li>
293 </ul> 293 </ul>
294 </td></tr></table> 294 </td></tr></table>
295 295
296 <a name=hairball> 296 <a name=hairball>
297 <li><p><b>Untangle hairball build systems into distinct layers.</b></p></li> 297
298 <h2><b>Untangle hairball build systems into distinct layers.</b></h2>
298 299
299 <p>The goal here is to separate what packages you can build from where and how 300 <p>The goal here is to separate what packages you can build from where and how
300 you can build them.</p> 301 you can build them.</p>
301 302
302 <p>For years, Red Hat only built under Red Hat, Debian only built under Debian, 303 <p>For years, Red Hat only built under Red Hat, Debian only built under Debian,
356 becuase they never tested anything but the config they ship. Making 357 becuase they never tested anything but the config they ship. Making
357 something like that work on a Hexagon processor, or making their 358 something like that work on a Hexagon processor, or making their
358 root filesystem work with a vanilla kernel, is a daunting task.</p> 359 root filesystem work with a vanilla kernel, is a daunting task.</p>
359 360
360 <a name=selfhost> 361 <a name=selfhost>
361 <li><p><b>Make Android self-hosting (musl, toybox, qcc).</b></p></li> 362 <h2><b>Make Android self-hosting (musl, toybox, qcc).</b></h2>
362 363
363 <p>Smartphones are replacing the PC, and if Android doesn't become self-hosting 364 <p>Smartphones are replacing the PC, and if Android doesn't become self-hosting
364 we may be stuck with locked down iPhone derivatives in the next generation.</p> 365 we may be stuck with locked down iPhone derivatives in the next generation.</p>
365 366
366 <blockquote> 367 <blockquote>
548 distinct failure modes:</p> 549 distinct failure modes:</p>
549 550
550 <p>1) Endless discussion that never results in actual code, because 551 <p>1) Endless discussion that never results in actual code, because
551 nobody can agree on a single course of action.</p> 552 nobody can agree on a single course of action.</p>
552 553
553 <p>2) The project forks itself to death: everybody goes up and codes their 554 <p>2) The project forks itself to death: everybody goes off and codes up their
554 preferred solution, but it's no easier to agree on a single approach after 555 preferred solution, but it's no easier to agree on a single approach after
555 the code exists so the forks never get merged.</p> 556 the code exists so the forks never get merged.</p>
556 557
557 <p>3) Delegating the problem to nobody, either by A) separating engine from 558 <p>3) Delegating the problem to nobody, either by A) separating engine from
558 interface and focusing on the engine in hopes that some glorious day somebody 559 interface and focusing on the engine in hopes that some glorious day somebody
559 will write an interface worth using, or B) making the interface so configurable 560 will write an interface worth using, or B) making the interface so configurable
560 that the fact it takes a week to learn what your options are and still has no 561 that the fact it takes hours to figure out what your options are and still has
561 sane defaults is now the end user's problem.</p> 562 no sane defaults is now somehow the end user's fault.</p>
562 563
563 <p>Open source development defeats Brooks' Law by leveraging empirical tests. 564 <p>Open source development defeats Brooks' Law by leveraging empirical tests.
564 Integrating the results of decoupled development efforts is made possible 565 Integrating the results of decoupled development efforts is made possible
565 by the ability to unequivocally determine which approaches are best (trusted 566 by the ability to unequivocally determine which approaches are best (trusted
566 engineers break ties, but it has to be pretty close and the arguments go back 567 engineers break ties, but it has to be pretty close and the arguments go back
571 572
572 <p>In the absence of empirical tests, this doesn't work. By their nature, 573 <p>In the absence of empirical tests, this doesn't work. By their nature,
573 aesthetic issues do not have emprical tests for "better" or "worse". 574 aesthetic issues do not have emprical tests for "better" or "worse".
574 Chinese food is not "better" than mexican food. But if you can't 575 Chinese food is not "better" than mexican food. But if you can't
575 decide what you're doing (if one chef insists on adding ketchup and another 576 decide what you're doing (if one chef insists on adding ketchup and another
576 bacon and a third ice cream) the end result is an incoherent mess.</p> 577 bacon and a third ice cream) the end result is an incoherent mess. (At
578 best you get beige and the DMV. Navigable with enough effort, but not
579 appealing.)</p>
577 580
578 <p>The way around this is to a have a single author with a clear vision 581 <p>The way around this is to a have a single author with a clear vision
579 in charge of the user interface, who can make aesthetic decisions that are 582 in charge of the user interface, who can make aesthetic decisions that are
580 coherent rather than "correct". Unfortunately when this does happen, the 583 coherent rather than "correct". Unfortunately when this does happen, the
581 open source community pressures the developer of a successful project to 584 open source community pressures the developer of a successful project to