Anatomy

An Anatomy of the Perfect Bug Report

Developers produce code that should work in every browser, every operating system and every device specified in the performance and compliance goals for a site or application. No matter how much effort we put into testing our work, clients will likely find something that doesn’t work: no matter how talented your development team is, bugs are inevitable, and everyone has to deal with them on a regular basis

Filing a bug report isn’t usually a fun experience, but a well-written bug report will make life easier for everyone involved.

Bug Reporting

Software bugs cost $ 312 billion per year

An application’s life cycle is divided into five stages: requirements, design, development, testing, and deployment. And at each of those stages there is a good possibility a bug will be introduced.

As a project grows, it inherently becomes more complex, increasing the odds that bugs will be created. In turn, bugs and their patches are some of the biggest contributors to the complexity of a project.

Luckily, bugs can be fixed. But to do that, you need to have a good bug report. A bug report should allow the developer to locate the cause of the bug and make the appropriate changes.

Software errors come in all shapes and sizes and different levels of severity. The development team judges the severity of the bug on the basis of the bug report and decides whether the bug requires immediate fixing or not.

How to write the perfect bug report

In order to ensure bugs are reported in a timely manner and in a way that corrective actions can be taken, it’s very important that a report provides as much information as possible and is documented correctly.

If they receive a good bug report, your team doesn’t have to spend time figuring out what went wrong. So what should be in a good bug report?

Quite a bit, actually. There are many issues in software development, and it can be very difficult to even recreate a bug. So, the idea is to capture as many details as you can in your report.

Title or a description of what happened

“There was an issue!”

Great, but there’s no way anyone can solve anything using just that information. What you need is a description of what happened: the more the detailed the better.

In the best case, the user received an error message. That provides a decent starting point. In the worst case, there was no signal other than things didn’t happen as they were supposed to.

Page where the user is

Something went wrong, but odds are, you’re not talking about a landing page.

You’re probably working with a complex online application that has a huge number of pages or configurations. In this instance, you need to know where it was that the bug occurred. What was the user trying to do and what did he access?

Preferably, if you have different versions of your web-app you’d also like to know what version the user is talking about.

How bad is it?

Not all bugs are created equal and they should be handled that way as well. Is your bug generating a blue screen? You have a serious issue.

Is the background color in your logo slightly different from the background color of the page? Well, that might not be one of your priorities. Let’s fix the blue screen first.

Keep in mind that this is usually pretty subjective. Nevertheless, the description will help you quite a bit with determining how bad a bug is.

Platform or what are you using to run this on

We all know that Windows isn’t the same as OSX or Android, which in turn are very different from iOS. With browsers, there are many more things to take into consideration. Chrome, Firefox, Safari or Opera, each make a huge difference. Don’t forget about Internet Explorer 😉

If someone is reporting a bug, it might very well be limited to their specific situation. Maybe the user is running an old version of chromium in a Puppy Linux Beta version;This also has an impact on the importance of the bug because it is linked to the potential impact on users.

Can it be reproduced?

When something happened only once, and wasn’t fatal, you might not ever see the issue rise again. That means it’s less important for you to fix.

Without the knowing how the issue happened, the developer has his or her work cut out for them. Where to start? Knowing that if you recreate a certain situation, it will happen again is a great way to get more information and get that bug dealt with.

A developer’s dream bug report

This is the developer’s dream bug report, it’s nice, it’s concise and it has all the information he needs. There is one problem with it though.

Unless the application is still in development, the people that will be creating these reports won’t be technical. In fact, these will be your users. Can they even give you this info?

The disconnect

You probably guessed it. There is just no way that the average user can fill this in, or that he even wants to. The reason your users use your application is precisely because they want to save time. That means that filling out a bug report isn’t on their agenda.

In other words, if you show them all these questions, you will either get a very bad set of answers or just an angry customer. On the other hand, if you don’t fix the issues, they might go to the competition. So, something needs to be done.

The less you ask your customer to do, the better.

Technology to the rescue!

Fortunately there are many lean and easy-to-use bug reporting tools out there.

Technology Bug Report

A bug reporting tool makes reporting as easy as possible for your users and testers. At the same time your developers will be kept happy, since additional and useful information – such as browser version, installed plugins, or more simply operating system are automatically added to every bug report. Yes, automatically.

So there’s no need for your users to fill out a lengthy bug report form. Here are a few bug reporting tools I came across and considered a great fit for the modern way of reporting bugs.

Usersnap

Usersnap is a great and easy-to-use bug reporting tool for every web project. It allows you to annotate browser screens and adds other useful information (such as browser version, installed plugins, etc.) automatically to every bug report.

Usersnap offers browser extensions as well as a simple to embed JavaScript snippet for your web projects. It works great for remote web development & design teams, as well as for agencies managing their client’s web projects.

Usersnap

BugMuncher

BugMuncher is a great and simple to use bug reporting tool. You can install it by using a JavaScript snippet. With further customization features it adapts perfectly to your needs.

BugMuncher works great bug reporting teams and developers in charge of fixing issues and ensuring a bug-free environment.

BugMuncher

FogBugz

In contrast to the mentioned bug reporting tools, FogBugz offers a whole project suite for your web projects.

It allows you to organize issues, bugs and other tasks in the most efficient way and let’s you keep track of your progress. Therefore FogBugz works great for large web development teams or enterprises.

FogBugz

DoneDone

DoneDone is another, yet effective bug reporting tool. Not only bugs can be reported with DoneDone, but also tasks or new ideas can be easily organized.

Similar to Usersnap, DoneDone integrates well with other 3rd party tools, like Basecamp or GitHub.

DoneDone

Conclusion

Bug reporting has gotten much better with it’s latest bug reporting tools. The old days of lengthy bug reports which needed a great amount of time are getting to an end. Lucky us. After using these tools, you’ll definitely fell in love with the concept of in-browser bug reporting.

Reporting bugs and submitting change requests is easier this way, since everything is communicated and organized through a visual interface and the communication is seamless.


Onextrapixel – Web Design and Development Online Magazine

The Anatomy of Great Website Design that Google Loves

Creating a website is very much like preparing a cake. How you dress it and how it ends up looking can be worlds apart. And we all want our cakes to look pretty and taste amazing, right? If you agree then the key is to pay attention to detail. Here are a few miniscule factors to keep in mind when building your very own website. Or let’s just say this is how you put the dressing on the cake.

How to Achieve Good and Functional Website Design

First Things First: The Header!

The primary point of focus that you must start off with is the way each landing page looks. And how do you come up with the best looking page?

Put up a great header!

Every single website you open is easily identifiable by its header image. This is where your logo goes, along with essential details such as tag lines, service tabs or contact number.

The header from Quintet has one large image that speaks out everything! The company staff, personalization and creativity.

Quintet

Spark it up with the colour that represents your business and let the user get a true feel for your brand.

Headlines and Navigations

Everything that follows from the header should be displayed neatly in columns and boxes that blend in well with the overall design of the website.

The flow of the content needs to be controlled based on the underlying web layout being used. A user needs to be able to navigate freely, clearly and swiftly.

This means that the website has good user functionality, increasing the time spent on the landing page. Google is able to track your navigation system and website structure.

The overall site hierarchy will determine how the website is ranked on search engines so a great website will include easy-to-browse categories for content and products.

Body Content

Effective Content marketing is what separates a good website from a bad one. And this is not an overstatement.

No matter what you do, do not get your content wrong. After all, it’s what goes on your website that defines what it is all about. The efficient use of relevant keywords and key phrases determines how well the Google Webmaster tool responds to your website.

However, keyword stuffing is also identified by the genius tool and prolific and rambling use of certain words will have the opposite impact on user experience.

Many top SEO experts and growing web design companies are focusing on keeping a balance between the uses of keywords in the content body. Though the latest Google tips all point to making the user happy to make Google happy!

Unique, compelling and exciting copy is what really grabs attention!

Readability and Typography

Who doesn’t like a remarkable presentation of text that is both readable and interactive?

Well that’s your goal!

Once you get the text right, be wary of the way you lay it out. It is absolutely essential to make prudent use of typefaces that best suit your webpage. Choose wisely between casual and sombre fonts so that they don’t conflict with the overarching theme.

Pauline Osmont, an Art illustrator, has a self-branding website with an amazing typography that matches the website’s theme and the service that is provided. Note the font is also readable and clear without any clusters.

Pauline Osmont

Remember, typography is important in polishing content.

Images and Videos

Wait up before you rack up a huge pile of text. No one has the time to read long texts (Ok I’m going to keep this briefer now)

So perk up the page with visual content with images and videos that engage the user. Your goal is to excite the visitor with what you are offering, so make it shine!

Disney’s Official pages are full of images and video trailers that have shot up user engagement on their site.

Disney

Footer

Website links at the page footer are essential elements in the website – do not miss them!

At the end of every single page, a user should be able to refer to links that take him where he wants on the website!

How Is Your Website Coded?

Well, let’s get down to baking the cake we just dressed to see how tough it really is.

Content on Each Page

Each landing page will be distinguished by the content it contains. For longer user engagement time, more (but unique) content will be helpful.

The use of sliders and videos that inform visitors about the business and related areas will bring in all the more traffic.

Load Times

A good website does not take too long to load. Optimize the amount of written and visual content that you upload and make sure your back end server is giving you the best hosting.

Once a visitor is lost due to page load failure, you are never sure he’ll be back!

Responsive Design

This is a relatively new concept, but not entirely. It’s time to jump the mobile internet bandwagon if you still haven’t.

A great website has a responsive design that adapts to different screen widths and shows up perfectly on a mobile device. For SEO purposes, this is serious business!

HTML and CSS

HTML, the standard mark-up language used to create web pages, is your website’s skeleton and gives structure to each webpage.

Anything and everything that goes on a website from text to headings and from images to links is all based on how the HTML language is written.

So be sure to choose the best HTML website design such as HTML4 and 5 for basic but proficient working of your website. Cascading Style Sheets (CSS) for the site are equally important as they format a document written in mark-up language.

CSS defines the layout of HTML documents, therefore a good design is supported by a carefully chosen CSS style.

How Does Google Read Your Website?

Time to see how the cake looks to Google!

URL Structures

A website made with HTTP is dependent on a reliable and simple URL (Uniform Resource Locator) structure. Not only should the URL be friendly to search engines but also to users by simply pointing out the unique resource that it is attached to.

URLs should be readable, memorable and easily comprehendible by the regular user. Complex URLs will lead to Googlebot being unable to index the website’s content and may create problems for crawlers.

Linking Hierarchy

A clear hierarchy is central to a site’s functionality and text links should lead to a different page.

Links on the home page should lead to relevant sub-pages which should link to further sub-category detailed pages. Build a pyramid so that the visitor knows exactly where he will be taken next.

Keywords and Anchor Texts

Keywords relevant to your business need to be in the right places: Headings, drop-down menus, pop-ups, slider menus. This will ensure that visitors find exactly what they are looking for in a matter of seconds.

Also, better keywords, better SEO!

Anchor texts should lead visitors from the front telling them that more pages related to what they are reading are available on a second click. Make sure anchor text is representative of what’s coming next instead of confusing the visitor with generic content.

Images Optimizations

A high performing website optimizes its images so that they save the maximum amount of bytes, along with valuable visual space.

Design pages in the most bot readable way to enhance SEO and ensure that the browser loads the page as quickly as possible, displaying what it necessary for increased usability.

What Are User’s Action s on Your Website?

Who likes a cake that looks good but wouldn’t taste half as good? A chef’s effort isn’t complete till someone’s tasted his dish.

Let’s dig in and get a piece of our very own cake!

Call to Actions

This is not just true for e-commerce sites which are looking for more rigorous marketing techniques every day. The Call to Action is for every website owner that wants to engage an audience.

How to do that effectively?

Invest in a newsletter that users can sign up to, or ask them to fill out a contact form so you can update them with sales and services. From Placements to colours and texts, a call to action must be aesthetically provoking and smartly engineered.

Our designers at Brandjaws have kept the consistency of the ‘yellow colour’ as a means of any action that can be taken on the website. This header is designed so the user can prominently distinguish the yellow buttons from the dark contrast of the blue/black background.

Brandjaws

The tedious task of engaging customers can only be made easy by giving out incentives such as coupons or the chance to win a free prize. Design these so that users don’t stumble upon calls to action, but make it loud and clear through effective web design.

Your advertising billboard is your canvas. Paint a colourful one!

Social Sharing

What is the world without social sharing?

Millions of people are coming together on social media to say what they like, so why not keep tabs on popular platforms:

Facebook, Twitter, LinkedIn, Reddit, Tumblr, Pinterest, Medium; and see what people like or dislike about you.

Use active social tabs in your website design to keep social audiences intact and allow them to interact through comments and shares on all your posts.

Buzzfeed, an entertainment giant, has leveraged every possibility for users to share their content across various sites.

BuzzFeed

Commenting

Is your site all about words? Well, a reader will always want to say something about what he’s read.

So if you are a blogging website, open up to your visitors and connect through a user friendly commenting section (such as the one powered by Disqus) and learn about what people have to say.

Spark intelligent conversations and let your website be the star of the show!

Conclusion

Hopefully these tips have helped you to understand what Google loves to see in a website and how to push your site high up on the Google search page.

Do you have any other tricks or tips up your sleeve that you would like to share with us? Please leave your tip in the comments section below.


Onextrapixel – Web Design and Development Online Magazine

The Anatomy of Time Tracking Tools: Breaking Down Its Essentials

As more and more professionals are focusing on getting the most out of their time at work by boosting their productivity, time tracking tools are in vogue right now.

By using any of these apps to monitor your time spent on each tasks individuals have for the day or week, they will gain a better understanding on how they work and should find ways on how to make better use of their time to improve productivity. For client’s, they will be able to keep tab of the time spent by their remote employees and pay them accordingly.

Given that these tools are developed using sophisticated coding and programming techniques, a two-part post over at Scotch.io deconstructs the components of time tracking tools. The purpose of this exercise is to see how the parts come up with a unified whole and how developers and programmers can come up with their own time tracking tool for themselves.

Find out what a time tracking tool is made of so you can create your own! (Click Here to Tweet This Quote!)

Ingredients of a time tracking tool

Angular JS

This free open source framework by Google will be one of the many dependencies with Bower and serve as the backbone of the time tracking tool. Using this will make testing and developing single-page applications much easier.

For a comprehensive primer of this dependency, refer to the one-hour Youtube video below, which discusses the use of different techniques to build an SPA shown at the end of the video.

Angular Bootstrap

screenshot-angular-ui.github.io 2015-07-14 19-05-07

Using this will provide the tool with a native AngularJS directives that will shape its appearance and UI. For this exercise, the timepicker directive will be used.

For an example of how Bootstrap and Angular work hand in hand, below is another Youtube video that show both dependencies in action as the author create a complicated form.

ngResource

Referring to this Angular resource will help you keep in touch with the RESTful (Representational state transfer) data-sources from the server side. This help in the creation of a cleaner and more efficient code for the tool to be created using $ resource instead of $ http.

To get a glimpse of ngResource in action, here’s a Youtube video for your viewing pleasure.

Bootstrap

screenshot-getbootstrap.com 2015-07-14 19-47-17

The tried and tested framework will give the standard styles for the creation of a responsive and mobile-friendly tool. For themes, templates, development tools, and other resources that can help in building a time tracking tool, refer to the Bootstrap Resources and Plugin List from Start Bootstrap.

Moment.js

screenshot-momentjs.com 2015-07-14 22-10-59

Since time (and date) is of essence in the creation of this tool, Moment.js is an integral dependency that will simplify the managing of time for the time tracking tool. Instead of storing the start of end times of an individual using the time tracking tool, this Javascript library lets you compute for the time on the fly.

For a better idea on how this work in a real setting, this Youtube video is a good introductory video on how it can make your life easier.

Laravel 5

This framework serves as the second foundation in building and developing a time tracking tool. Essentially, Laravel 5 helps you write clean, concise, and beautiful code to ensure that your SPAs and applications load in warp speed.

Below is a playlist on Youtube videos teaching first-time users how to handle and manage this framework.

As mentioned in the videos, you must learn how to use Composer, another dependency management system, first.

Synthesizing everything together

Now that you are aware of the parts that make up a time tracking tool, you can follow the step-by-step process of building one by referring to the two-part tutorial from Scotch.io here and here.

This is the appearance of the finished time tracking tool as detailed in the two-part tutorial at Scotch.io. A must-read for developers and programmers who wish to try their hand at creating this tool and building up their skills.

This is the appearance of the finished time tracking tool as detailed in the two-part tutorial at Scotch.io. A must-read for developers and programmers who wish to try their hand at creating this tool and building up their skills.

You can tinker with the appearance and feel of the tool once by choosing the right theme and templates. But following the tutorial closely should help you develop your coding skills and get vaulable hands on experience with the dependencies and libraries listed above. Furthermore, the accompanying videos for each library should open your eyes on the other ways in which they can be used for different purposes.

More on time tracking tools:

Best Online Tools & Resources for Creative Freelancers

7 Ways Time-Tracking Leads to More Creative Work

 

The post The Anatomy of Time Tracking Tools: Breaking Down Its Essentials appeared first on SpyreStudios.


SpyreStudios

Tesla – Anatomy of a Great Company Name

Tesla is a fantastic name for revolutionary electric car company, but not a name that could navigate a typical corporate naming process and survive.

The death of a thousand cuts would include:

  • We can’t acquire Tesla.com, we’d have to use Teslamotors.com, a non-starter. Electrificity.com is available. Let’s go with “Electrificity” instead. We can get the domain.
  • Nicola Tesla’s inventions were all in AC, not the DC battery power the cars use. Edison was the man when it came to DC. Tesla advocated the opposite
  • Most people don’t know who Tesla was
  • “Tesla” was a big selling ’80s hair band


Most Teslas are sold online, and though they were unable to secure Tesla.com, they knew the common wisdom that going with Teslamotors.com would hurt sales was and is nonsense.

Tesla knew it was a great name even though Mr. Tesla’s work was with AC electricity, not the DC electricity the car runs on, which was the domain of Edison. They knew Tesla is a much sexier word attached to a sexier, more mysterious personality. The name Edison is just boring all around. So no one cares about the glaring discrepancy – they just associate the name with electricity.

For Tesla, going with the domain Teslamotors.com and using the name Tesla was a better move than changing the name to Electrificity or some such because they could get the Electrificity.com.

Tesla is memorable, has a great look, sound, meaning, mystery and sexiness to it. Do you walk away from that over domain availability? (Hint: “What would Elon Musk do?”)

We are all for a matching domain name, but it must be a powerful one.

Facebook Twitter Linkedin Digg Delicious Reddit Stumbleupon Tumblr Email

Igor