Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building Things

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for architexture architexture
March 29, 2013
110

Building Things

An overview of my process building a simple Wordpress theme.

Avatar for architexture

architexture

March 29, 2013
Tweet

Transcript

  1. The overview • My background • Project goals • Planning

    • Process • Tools • Outcome Thursday, 28 March, 13
  2. My background • Passions for learning, understanding and creating •

    I love to reverse engineer and see how things were built • Wordpress and me • Custom themes • The past, the present and the future • Blog/journal/notes/words • Professional diary Thursday, 28 March, 13
  3. Project goals • Dont get overwhelmed. Break things up into

    smaller bites. • Long term resource, both personal and public. • Accessibility. Here there and everywhere. • Setting constraints. • Growth, change and evolution (ease of use). • Future friendly. • Mobile first boilerplate focusing on readability. Thursday, 28 March, 13
  4. • Inspired by japanese watercolors • Uses nice typography •

    Large responsive images and video • Progressive enhancement • Fully accessible • Fully tested and browser compliant • Mobile first • Wordpress cms • Iincludes: social media links • Swiping pages / nav on sides • Proportional Grid Project design notes Thursday, 28 March, 13
  5. Truths • Content and form are lovers, their love-child is

    design. • “Content precedes design. Design in the absence of content is not design, it’s decoration.” - Zeldman • “Design processes—Everything depends on the context and the needs of the project. There are no absolutes. You do what needs to be done.” - Jbrewer • “Solutions have flaws. Not every flaw can or will be discovered before implementation. Keep experimenting, keep improving.” - Snook Thursday, 28 March, 13
  6. Planning • Who, what, where, when, why, how? (context) •

    What are my needs? What are my audiences needs? • What tools and resources are available? • What are skills and capabilities? • Should I push the limits and get out of the comfort zone? Thursday, 28 March, 13
  7. Process • Defining what needs to be done, project requirements.

    • Planning, research, learning and data tools. • Sketching and concepts, generating ideas. • Design, photoshop, code. • Develop and implementing, database, theme, navigation etc. • Testing, browser testing, performance and optimization. • Deploy, share with the world. • Extend, learn from what you built and refine. Thursday, 28 March, 13
  8. Tools • Like any good crafts(person) • Tools to accomplish

    the job • Web standards • Accessibility and speed • Long term • Ease of use Thursday, 28 March, 13
  9. The front-end • HTML & CSS • Frameworks • Grid

    Systems • Boilerplates • Javascript • Helpers: Normalize, Modernizr, CSS Reset • Media Queries • Resources: images, retina, Thursday, 28 March, 13
  10. Frameworks definitions • A structure for supporting or enclosing something

    else, especially a skeletal support used as the basis for something being constructed. • A real or conceptual structure intended to serve as a support or guide for the building of something that expands the structure into something useful. • A set of tools, libraries, conventions, and best practices that attempt to abstract routine tasks into generic modules that can be reused. • Frameworks can come in different varieties. A css reset for example is a really a type of framework all it’s own. Other things css frameworks aim to build a structure for include: Thursday, 28 March, 13
  11. Grid Systems, Frameworks & Boilerplates • They can help you

    learn CSS. • They provide code that you just don't need to write from scratch every time, like resets. • Enforce consistent design patterns. • Lends to design consistency. • They relieve cross-browser concerns. • Provides a more organized approach to css • Community support. • They encourage grid based design. • Lots of styling built-in. • It helps you build good habits. • They come with documentation. • Comparison: http://usablica.github.com/front-end-frameworks/compare.html Thursday, 28 March, 13
  12. The down side • In order to really benefit, and

    actually save time, you'll need to use one framework over and over. • It changes the way you write your HTML. • They can be bloaty. • You need time to fully understand the framework. • Could lead to a lack of understanding the underlying css. • Not all code is used. • Square peg in a round hole. • Laziness and dependency. • You might inherit someone’s bugs or mistakes. Thursday, 28 March, 13
  13. What to look for? • Agnostic starting point. • Your

    framework should be speeding up your development process. • Your framework should make things look nice and presentable with minimal effort on your part. • Your framework should allow you to quickly wireframe or prototype sites, putting little focus on the actually styling. • Your framework should be responsive or at least include mobile alternatives. • Browser compatibility. Thursday, 28 March, 13
  14. Advice • My best advice in choosing a css framework

    is to learn to use several instead of relying solely on one. • Choose the framework that works best with your own coding style and more importantly that works best with you current project. • And if you do use any regularly, spend some time looking through it to see if you can find a way to improve it or fix any issues you encounter and then contribute your fixes and improvements back to the framework for everyone to use. • Organize your own framework(s) for a starting point. Thursday, 28 March, 13
  15. Side note - CSS organization • SMACSS (pronounced “smacks”) is

    more style guide than rigid framework. SMACSS is a way to examine your design process and as a way to fit those rigid frameworks into a flexible thought process. It is an attempt to document a consistent approach to site development when using CSS. And really, who isn’t building a site with CSS these days?! • Base — These are your defaults (html, body, h1, ul, etc) Layout — These divide the page into major sections Module — These are the reusable modular components of a design State — These describe how things look when in a particular state (hidden or expanded, active/ inactive) Theme — These define things like a color scheme or typographic treatment across a site Thursday, 28 March, 13
  16. What I used? • HTML & CSS • Wordpress •

    Parts of the HTML5 Boilerplate • CSS based on a typographic scale (em based layout) • Simple single column grid • Modernizr • Javascript • Typekit: FF Meta Serif Web Pro, FF Meta Web Pro and Ratio • Google Analytics Thursday, 28 March, 13
  17. Wordpress • WordPress is publishing software with a focus on

    ease of use, speed and a great user experience. WordPress is blessed with an active community, which is the heart of open source software. • Awesome and easy • Strong community • Blank slate starting point • Themes • Starkers Thursday, 28 March, 13
  18. My Tools • HTML & CSS • Coda • Chrome

    and web inspector • Transmit • Codekit • Github • Gitx • Terminal • Adobe Photoshop & Illustrator • Typekit • Alfred • Dropbox • Google Apps Thursday, 28 March, 13
  19. Outcome • A simple, flexible and readable journal that can

    be easily changed or adapted depending on my needs and available time to dedicate to updates. • Its strong, stable and dependable. • Its simple and solves my need for an online notebook. • It was fun! Thursday, 28 March, 13
  20. Inspiration • Front-end performance for web designers and front-end developers

    http://csswizardry.com/2013/01/front-end-performance-for-web-designers-and-front-end-developers/ • Mobile First http://www.lukew.com/ff/entry.asp?933 • Designing With Context http://cennydd.co.uk/2013/designing-with-context • The Slow Web http://blog.jackcheng.com/post/25160553986/the-slow-web • A Dao of Web Design http://alistapart.com/article/dao • Front-end design principles http://clearleft.com/thinks/front-enddesignprinciples/ • A Front-end Engineer's Manifesto http://f2em.com/ Thursday, 28 March, 13
  21. Extra Learning • http://learnlayout.com/ • http://hackdesign.org/ • http://browserdiet.com/ • http://www.abookapart.com/

    • http://usablica.github.com/front-end-frameworks/compare.html Thursday, 28 March, 13