Fast Enough How fast is fast enough? I’m asked this question a lot. Page weights and load times vary so much from site to site and industry to industry. Basic Web Design Video Course - Wireframing, Photoshop Tools & Panels, and Designing [Part 1] Hello everyone, this is Mike and welcome to my Basic Web Design Video Course. In this course I will walk you through the very basic steps on what to do and what to learn before, and during, building a website. You’ll learn all the steps I use including:
Separation of concerns The value of separation of concerns is simplifying development and maintenance of computer programs. When concerns are well-separated, individual sections can be reused, as well as developed and updated independently. Of special value is the ability to later improve or modify one section of code without having to know the details of other sections, and without having to make corresponding changes to those sections. Implementation Separation of concerns is an important design principle in many other areas as well, such as urban planning, architecture and information design. The goal is to more effectively understand, design, and manage complex interdependent systems, so that functions can be reused, optimized independently of other functions, and insulated from the potential failure of other functions.
Mobile design: Avoid these 4 common user experience fails This is a guest post by mobile design consultant Mariya Yao People downloaded over 30 billion apps in 2012, yet the average smartphone owner only uses about 15 of them every week. Even worse, a study by Localytics estimated that 22 percent of apps are only opened once. With all the money and effort being poured into mobile right now, why is engagement so low? While the answer to that question is certainly complicated, a number of common mistakes companies are repeatedly made in the app on-boarding process.
GRASP (object-oriented design) General Responsibility Assignment Software Patterns (or Principles), abbreviated GRASP, consists of guidelines for assigning responsibility to classes and objects in object-oriented design. Larman states that "the critical design tool for software development is a mind well educated in design principles. It is not the UML or any other technology." Image Compression for Web Developers Introduction As images continue to be the largest part of webpage content, it’s critically important for web developers to take aggressive control of their image sizes and quality in order to deliver a fastest loading, responsive site for their users. Hitting this sweet-spot is not free; you can automate a ‘good enough’ value most of the time, but for the best savings, you need to test quality levels using your human eye. This article will provide a bit of reason, history, and technique to understand and properly address image compression issues for your website. TL;DR : Image Compression Checklist Why Small is Big
DevTools Extensions For Web App Developers The past year has seen many leaps made to improve developer productivity through better tooling. We're paying increasing attention to our workflow and many of us have spent time optimising our usage of tools like Grunt, Bower, Yeoman and the terminal. Another important area worth spending time on is your debugging workflow – if you're like me, this starts with the Chrome DevTools. When building an application with a specific framework or language abstraction, there's actually some additional tooling available to you in the form of recent DevTools extensions. In this post, I'll share a quick summary of the latest developments in this area, ranging from the recent Ember extension Yehuda Katz presented at EmberCamp through to less well known extensions for Backbone and KnockoutJS developers.
SOLID (object-oriented design) In computer programming, SOLID (Single responsibility, Open-closed, Liskov substitution, Interface segregation and Dependency inversion) is a mnemonic acronym introduced by Michael Feathers for the "first five principles" named by Robert C. Martin in the early 2000s that stands for five basic principles of object-oriented programming and design. The principles when applied together intend to make it more likely that a programmer will create a system that is easy to maintain and extend over time. The principles of SOLID are guidelines that can be applied while working on software to remove code smells by causing the programmer to refactor the software's source code until it is both legible and extensible. It is part of an overall strategy of agile and adaptive programming.