• Aug 3rd Pegasus, unicorn, don’t be a horses ass.

    If you’re reading this, you’re probably not a horse. Maybe you code, maybe you don’t. Maybe you design, maybe you don’t.

    In an ideal UX world, everything stems from the design… everything should be brought in to support the design. I have heard over and over again, that “The technology being used should support the design”. I agree, everything should support the design however, in reality, this “order of things” rarely exists. In reality, the product and/or technology has already been purchased or re-purposed, not that I am suggesting that this is the right way to do things, but it happens… a lot.

    In reality, I am frustrated when a designer brings me a design with no forethought as to whether the product or technology being used can support the interactions of the design.

    In reality, I am frustrated when an architectural solution is developed with no regard for the goals of the user, or the types of data interactions that are necessary to support the user.

    That being said… if there has to be a winner… the user must win. If, at any point, the user is prevented from accomplishing their goals, then how well it has been designed, or how well the back end architecture has been developed are irrelevant.

    A good designer understands the limitations of the systems and machines that their designs are slave to. A good developer understands that the needs of the user come before that of the systems. Adhering to system requirements, at the expense of usability, inhibits innovation.

    If you’re not building it for the user, then who are you building it for?

  • Feb 27th HTML Includes

    I’m putting on my developer hat today.

    One of the biggest problems I’ve run into in building browser based applications, is the inability to use includes in HTML.

    As a result I’ve started working on a component based HTML includes framework for browser based applications which can extend into the mobile app world. I call them HyperTextComponents.

    Example: (note the bolded tags)

    <!doctype html>
    <meta http-equiv="PRAGMA" content="NO-CACHE">
    <meta http-equiv="CACHE-CONTROL" content="NO-CACHE">
    <meta http-equiv="EXPIRES" content="Tue, 31 Jan 2012 12:00:01 GMT">
    <title>Hyper Text Components</title>
    <link type="text/css" rel="stylesheet" href="css/body.css"/>
    <div id="page">
    <component id="header" htmlsrc="components/header.html" csssrc="css/header.css"></component>
    <component id="nav" htmlsrc="components/nav.html" csssrc="css/nav.css" jssrc="js/nav.js"></component>
    <component id="content" htmlsrc="components/content.html" csssrc="css/content.css" cssclass="content"></component>
    <component id="content1" htmlsrc="components/content1.html" cssclass="subcontent"></component>
    <component id="footer" htmlsrc="components/footer.html" csssrc="css/footer.css"></component>
    <div id="loading">
    <div id="loadingani">loading...</div>
    <script type="text/javascript" src="js/HyperTextComponents.js"></script>

    Yes, I realize that the component tag does not comply with HTML standards… but we have to start somewhere.

    Next steps for the project:

    1. add tests for recursive components to determine impact on performance
    2. try to optimize inclusion with fewer AJAX calls
    3. browser compatibility



    On GitHub: