If you want users to take action on the web page content, add a "banana" - something that makes it obvious what the user is supposed to do.
For example, if your page is selling software, make it easy for your users to make a purchase. People don't have a lot of time to read your entire page and find the right link, so it is important to grab their attention by using a "banana".
When resources are limited, companies often blur the lines between design and development roles in an attempt to maximize efficiency. However, maintaining a clear distinction between disciplines is crucial for creating cohesive and effective user experiences.
For many developers, especially those early in their careers, the risk of making design decisions that negatively affect the overall user experience is high. When Product Owners delegate design work to developers, they may unintentionally accumulate significant UX debt. UX debt, like tech debt, accumulates when design shortcuts are taken, leading to user experience issues that need to be fixed later—often at a greater cost.
Ensure your websites and apps are responsive (mobile-friendly). While you might have a high-resolution monitor at your workstation or home, it's important to remember that many users access content through their mobile phones or tablets.
Your goal should be to create designs that seamlessly adapt to various screen sizes, from small mobile displays to large desktop monitors.
"An image is worth a thousand words" is a timeless saying that underscores the power of visual communication. Images can convey complex ideas, emotions, and information more efficiently and effectively than text alone. They capture attention, enhance understanding, and improve retention.
Therefore, whenever possible, replace text with images to create more engaging and impactful content. By doing so, you can simplify your message, appeal to visual learners, and make your communication more memorable.
The best way to emphasize your point is to show the pain first, and then the solution. Use "Bad example" and "Good example" with crosses and ticks, respectively, in captions.
When you add images/videos to websites/applications, it is helpful to add a caption underneath them, describing and including extra information to users.
It's a convenient way of catching users' attention to your content. When people are scanning a newspaper, they often check out the pictures first, then read the accompanying description, and if it sounds interesting, they'll go back and read the article. Users read websites in a similar fashion.
Efficient programmers do not re-invent the wheel. That's why we use the best Web UI libraries.
Bootstrap is a NuGet Package that provides a jump-start for HTML-based projects. It includes the HTML, CSS and JavaScript framework used to build the Twitter site.
Making CSS changes can range from straightforward tweaks to complex adjustments that impact multiple elements or pages. Knowing when to handle changes yourself and when to seek a developer's input can save time and reduce risks.
When creating or editing CSS or HTML, it's important to avoid adding unnecessary classes and IDs.
It can be tempting to add classes to elements, as it's often the most obvious solution to CSS problems. However doing so can lead to cluttered code and overly specific solutions. When working with CSS, it's almost always better to reuse existing classes rather than adding new ones.
Callouts, or UI boxes, are often used to highlight alerts, warnings, and other key information. They work best when they span the full width of the screen, making the message clear and hard to miss.
Full-width callouts use space effectively, pull focus to the content, and add a strong, immersive feel to the page.
- Do you have a call to action on your web pages (aka The Banana Rule)?
- Do you keep developers away from tasks involving design or the overall look and feel?
- Do you design websites and apps to be responsive (aka mobile-friendly)?
- Figures - Do you use images to reduce the words?
- Do you show 'Bad' and 'Good' examples when giving instructions?
- Figures - Do you add useful text captions to images and videos?
- Do you use CSS frameworks?
- Do you consider factors before making a CSS change?
- Do you avoid adding unnecessary CSS classes?
- Do you have full-width callouts?
- Do you trim starting and trailing whitespaces in input fields?
- Forms - Do you indicate which fields are required and validate them?
- Forms - Do you know when to use links and when to use buttons?
- Forms - Do you include the number of results in ComboBoxes?
- Do you create a combo-box that has a custom template?
- Figures - Do you use the right HTML/CSS code to add images and captions?
- Printing - Do you have a print.css file so your web pages are nicely printable?
- Printing - Do you check for oversized images and table?
- Authentication - Do you have a user friendly registration and sign in screen?
- Authentication - Do you use email address instead of username?
- Authentication - Do you have a 'Forgot your password' link?
- Authentication - Do you have a 'Remember me' checkbox?
- Authentication - Do you have a 'Sign me in automatically' checkbox?
- Authentication - Do you have a 'Logout' short cut next to the username ?
- Do you know table tags should not specify the width?
- Do you use DOCTYPE without any reference?
- Do you include the number of results in drop down list?
- Do you include a “Back” button in multi-step wizards?
- Do you use predictive-textboxes instead of normal combo or text boxes?
- Do you use the correct HTML input type?
- Do you know to not use FONT tags?
- Do you know how to effectively use non-standard font on your website?
- Do you know it's important to make your fonts different?
- Do you avoid having "Reset" buttons on webforms?
- Do you use icons/emojis to enforce the text meaning?
- Do you show the progress and the total file size on downloads?
- Search Results - Do you always give more information when searching doesn’t find anything?
- Do you avoid using bold tags inside headings?
- Do you avoid having a horizontal scroll bar?
- Do you display the timestamp in a human-friendly format?
- Do you know how to format addresses?
- Do you help the user to enter a URL field?
- Do you make sure that all your tags are well formed ?
- HTML/CSS - Do you know how to create spaces in a web page?
- Do you check your website is multi-browser compatible?
- Do you have a clean “no match found” screen?
- Do you know how to arrange forms?
- Do you use "list" tags for lists only?
- Do you implement Gravatar (or Cravatar for China) for profile management in applications?
- Do you use Hyperlinks instead of JavaScript to open pages?
- Videos - Do you have a video on the homepage of products websites?
- Do you know the right format to display a video time length?
- Do you have a master template for your website layouts?
- Do you have a stylesheet file for all your formatting?
- Do you keep the URL next to each link on printing?
- Do you know the right way to embed a YouTube video?
- Do you use adaptive placeholders on your forms?
- Control Choice - Do you know when to use CheckBoxes?
- Control Choice - Do you use checkboxes instead of multi-select dropdowns?
- Controls - Do you disable buttons that are unavailable?
- Controls - Do you make Option Groups and Check Boxes simple to understand?
- Do you make your fields consistent with the data?
- Do you use an ellipsis (...) to indicate an action requiring more user input?
- Controls - Do you include a "select all" checkBox on the top?
- Control Choice - Do you use ComboBoxes instead of single-select List Boxes?