Category Archives: programming

How can scroll blindness be mitigated?

This article will be focused on “Scroll Blindness in Java”, maybe you can apply some of the techniques described in another context as well, if so let me know.

Since I started programming in Java, more than one year ago my code became exponentially bigger and most of the time exponentially cluttered, so screen blindness was obviously going to happen.
As I wanted to read more about this effect and how to reduce it as much as possible I did not find anything than some less or more detailed definitions of the term; so as I really wanted to avoid this effect as much as possible I decided to do my own research about this subject.

I started to analyze the structure of Java classes and built a sketch about where should everything be placed in order to be easy to find. Of course you might think that modern IDEs already have a “jump to declaration” or “jump to source” function that can quickly take you to what you want or a “quick overview” function that shows you a list of methods present in the current class and there is no need to think about how to manage your code. But what if what you want is not in front of your eyes right now? for example a small toString() method lost in a forest of other methods; Often this leads to screen blindness.

After a bit of researching and trying to recall what events lead to scroll blindness in the first place I came up with a template for my future Java classes’ structure, designed to reduce scroll blindness as much as possible:

scroll_blindness_in_java.pdf

This is an early stage of my template which I am going to improve as I get feedback and insights while using it. Feel free to try it and tell me what do you think about it.