Five anti-patterns web designers should avoid

Five anti-patterns web designers should avoid

A healthy dose of self-criticism is essential for both professional and personal growth. When it comes to web coding, this self-criticism requires an ability to scan & eliminate counter-productive or unproductive patterns in the web process, design, code and behaviour. This why having a complete knowledge of anti-patterns is very useful for every programmer. In this post, you will read about some anti-patterns that might harm your site's design or core functioning.

All the anti-patterns mentioned in this post are roughly ordered. So it will be good if you properly read each and every point before moving further. Some of the anti-patterns written in this post have some elements in common so you can skip them if you want to. So here's the list of five anti-patterns that every web designer should avoid.

  • Premature Optimization

    What is it?

    As its name suggest, premature optimisation is optimising before having enough information to make any sort of educated conclusions about when, where and how to initiate the process of web optimisation.

    Why it's bad

    Attempting to optimise prior without having any empirical data will likely to end up increasing the code length and complexity. Moreover, it also enhances the risk of bringing more bugs with negligible improvements.

    How to avoid it

    As a programmer, your first priority should be to write a clean and readable code that works properly. Use tried & tested algorithms and tools to detect the bugs in your code. With the help of profiling tools, you can quickly find and eliminate the bottlenecks. Always rely on measurements and not on some vague guesses and speculations.

  • Bikeshedding

    What is it?

    It is a tendency to spend some excessive amount of time on debating and deciding on the trivial & highly subjective issues.

    Why it's bad

    It is simply a waste of time and resources.

    How to avoid it

    As a project head or manager, you should encourage the team members to be aware of this tendency & prioritise on reaching to a definitive decision. You can also consider A/B testing in the later stages to revisit the decision.

  • Analysis Paralysis

    What is it?

    It includes over-analysing to such extent that it prevents action and progress.

    Why it's bad

    Over-analysing any situation can either slow down or stops the progress entirely. In some rare cases, the output of analysis can also become obsolete by the time they are done, or worse sometimes the project gets stuck in the analysis phase.

    How to avoid it

    Awareness helps in overcoming this issue. Being a professional you should emphasise on iterations and improvements. Each iteration will provide you more feedback and data points that will surely come in handy for more meaningful analysis. Without any new data points, the analysis will become more and more speculative.

  • Fear of Adding Classes

    What is it?

    Several programmers belief that classes necessarily make the designs more complicated, leading to the fear of adding extra classes or breaking large ones into the smaller classes.

    Why it's bad

    By adding classes you can bring down the complexity. For instance, picture a big tangled ball of yarns. When untangled, you will get several separated yarns instead. Similarly, with simple, easy-to-maintain & easy to document classes are much more preferable than a large & complex class that has so many responsibilities.

    How to avoid it

    Be aware of when additional classes can simplify the design and decouple unnecessarily coupled parts of your code.

  • Inner-platform Effect

    What is it?

    It is a tendency of complex software systems to re-implement several features of the platform they run in or the programming language they are implemented in.

    Why it's bad

    Poorly designed solutions can lead to bugs and bottlenecks, especially when the system scales up. By recreating an alternative language it becomes difficult for the newbies to read the code and also makes their learning curve steeper. Moreover, it also limits the usefulness of refactoring & code analysis tools.

    How to avoid it

    It will be good if you learn to use the platform or features offered by your OS or platform instead. You should also avoid the temptation to create language constructs that rival the existing constructs.

    Wrapping Up

    This post is a discussion about some commonly occurring anti-patterns and their possible solutions. Make sure you hire a knowledgeable designer & programmer who offers you with simple and clean code.

Posted by Sophia Phillips

Sophia Phillips

Sophia Phillips is an expert frond-end & WordPress developer. Currently, she is employed with WordPrax Ltd.- a leading PSD to WordPress theme converter company. Sophia has had written a remarkable number of articles on WordPress tricks and tips.

Related Posts

Comments

comments powered by Disqus