# Patent

## Title
Blinder avoidance in social network interactions

## Abstract

A method, system and computer program product for blinder avoidance in social networking interactions includes executing a social networking data processing system in memory of a host computing system to provide a social networking service to different users in a social network. The method also includes defining in memory of the host computing system a user interface interaction for a user interface of the social networking service, and a corresponding user interface change in connection with a presentation of a status update for a user in different streams of other users of the social networking service. In response to detecting the user interface interaction with respect to a stream of status updates presented to one of the other users, the corresponding user interface change is performed in the user interface in connection with the presentation of the status update for the user in the stream.

## Background
BACKGROUND OF THE INVENTION
Field of the Invention
The present invention relates to social network content aggregation and more particularly to presenting social network updates in a user interface.
Description of the Related Art
Social networking refers to the electronic aggregation of social relations among individuals who share interests, activities, backgrounds or real-life connections. A social networking service generally provides for a representation of each participant, often referred to as a “profile”, one or more connections to other participants in the network, as well as other logical functions operating upon those connections. Social networking services generally are provided by way of the World Wide Web (“Web”). The user interface to a Web-based social networking service typically provides controls allowing users to manage respectively different public profiles, to manage respectively different lists of other end connected users, and most importantly, to view status updates and other content produced by or in association with the connected users.
Generally, status updates and other content produced by or in association with the connections of an user are presented in a stream. Classical terms for the stream include a wall, timeline or feed. As such, a review of the stream will reveal to the user the contemporaneous goings-on with a social network of connections of the user. For social networks of limited connections, or for social networks of limited updates, ascertaining the state of the social network is as simple as perusing the stream. However, for larger social networks, or for networks of particularly dense streams, the user bears the risk of missing content due to the sheer volume of entries in the stream. This phenomena has been referred to as “banner blindness”.
Banner blindness is a phenomenon in the study of human factors in which visitors to a Web site consciously or subconsciously ignore banner-like information and other visually presented advertisements. Banner blindness as a phenomenon has been recognized outside the context of online advertising in connection with a simple overflow of disparately sourced content on a single Web page. In the context of social networking, a stream of status updates that is voluminous and consumes a substantial portion of a page can result in banner blindness just as if the status updates were banner advertisements. Further, the requirement to scroll through or page through a multiplicity of different entries in a feed can result in the overlooking of important entries—just as in banner blindness.
BRIEF SUMMARY OF THE INVENTION
Embodiments of the present invention address deficiencies of the art in respect to social networking update presentation management and provide a novel and non-obvious method, system and computer program product for blinder avoidance in social networking interactions. In an embodiment of the invention, a method for blinder avoidance in social networking interactions is provided. The method includes executing a social networking data processing system in memory of a host computing system to provide a social networking service to different users in a social network. The method also includes defining in memory of the host computing system a user interface interaction for a user interface of the social networking service, and a corresponding user interface change in connection with a presentation of a status update for an user in different streams of other users of the social networking service. As such, in response to detecting the user interface interaction in the user interface with respect to a stream of status updates presented to one of the other users of the social networking service, the corresponding user interface change is performed in the user interface in connection with the presentation of the status update for the user in the stream presented to the one of the other users of the social networking service.
In one aspect of the embodiment, the user interface interaction is a fast scroll action or a slow scroll action. In another aspect of the embodiment, the user interface interaction is a page up or down action. In yet another aspect of the embodiment, the user interface interaction is an eye gaze tracking action. In even yet another aspect of the embodiment, the corresponding user interface change is an enlargement of the status update of the user or an enlargement of a profile avatar presented in connection with the status update of the user. Alternatively, the user interface change is a visual decoration of the status update with an alert.
In another embodiment of the invention, a social networking data processing system is configured for blinder avoidance in social networking interactions. The system includes a host computing system that includes one or more servers, each with memory and at least one microprocessor. The system also includes a social networking data processing system executing in the memory of the host computing system to provide a social networking service to different users in a social network. The system yet further includes a multiplicity of streams of status updates for ones of the different users displayed in respectively different user interfaces of the social networking data processing system for respectively different ones of the different users Finally, the system includes a blinder avoidance module executing in the memory of the host computing system.
The module includes program code enabled upon execution in the memory of the host computing system to define in memory of the host computing system a user interface interaction for a user interface of the social networking service, and a corresponding user interface change in connection with a presentation of a status update for one of the different users in different ones of the streams. The module further includes program code enabled upon execution in the memory of the host computing system to respond to a detection of the user interface interaction in one of the different user interfaces with respect to a stream of status updates presented to a corresponding one of the different users, by performing the corresponding user interface change in the one of the different user interfaces in connection with the presentation of the status update for the one of the different users in the stream presented to the one of the different users.
Additional aspects of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The aspects of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.



BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute part of this specification, illustrate embodiments of the invention and together with the description, serve to explain the principles of the invention. The embodiments illustrated herein are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown, wherein:
FIG. 1 is a pictorial illustration of a process for blinder avoidance in social networking interactions;
FIG. 2 is a schematic illustration of a social networking data processing system configured for blinder avoidance in social networking interactions; and,
FIG. 3 is a flow chart illustrating a process for blinder avoidance in social networking interactions.



DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the invention provide for blinder avoidance in social networking interactions. In accordance with an embodiment of the invention, an user registered in a social networking system and enjoying one or more social networking connections with other users registered in the social networking system, can define a user interface interaction and corresponding user interface change in connection with the presentation of a status change for the user in the different feeds of the other users. For instance, the user interface interaction can be a fast scroll action, a slow scroll action, a page up or down action, or an eye gaze tracking action. The corresponding user interface change can include an enlargement of the status update of the user or an enlargement of a profile avatar presented in connection with the status update of the user, or the visual decoration of the status update with an alert. In any case, by allowing the user interface change to occur in response to detecting the corresponding user interface interaction, the opportunity for banner blindness in connection with the status update can be reduced.
In further illustration, FIG. 1 pictorially illustrates a process for blinder avoidance in social networking interactions. As shown in FIG. 1, a group of users 110 connected to one another in a social network 120 each can view a different stream 130 of user updates 140 in a correspondingly different user interface to a social networking system managing the social network 120. Each of the user updates 140 can be a status update of a particular one of the users 110, or content generated in connection with a particular one of the users 110.
Of note, one or more user interface interactions with respect to the stream 130 can be defined in a table 160 in association with a corresponding user interface change and an user identifier to which the user interface change is to be applied. For instance, the user interface interaction can be a fast scroll action, a slow scroll action, a page up or down action, or an eye gaze tracking action. The corresponding user interface change can include an enlargement of a status update for an user specified by the user identifier, or an enlargement of a profile avatar presented in connection with the status update of the user specified by the user identifier, or the visual decoration of the status update with an alert. Other possibilities include a re-arrangement of the status updates in the stream 130.
Thereafter, blinder avoidance logic 180 can monitor the user interactions of each user 110 in connection with a corresponding stream 130. Upon detecting a user interface interaction 170 specified in the table 160, the blinder avoidance logic 180 can determine whether or not one of the status updates 140 in a stream 130 is associated with an user 110 having an user identifier corresponding to the detected user interface interaction 170 in the table 160. To the extent that the blinder avoidance logic 180 locates a status update 140 within the stream associated with the user 110 having the user identifier for the detected user interface interaction 170, the blinder avoidance logic can cause a change in the presentation of the status update 140 in the stream 130, for example by enlarging a size of the status update 140, or by decorating the status update 140 with a visual decorator 150 such as an icon, or by enlarging a profile avatar for or image of the user 110 associated with the status update 140, or by changing a profile avatar for or image of the user 110 associated with the status update 140 to an alternative avatar or image.
The process described in connection with FIG. 1 can be implemented in a social networking data processing system. In yet further illustration, FIG. 2 schematically shows a social networking data processing system configured for blinder avoidance in social networking interactions. The system includes a host computing system 210 that can include one or more host server computers, each with memory and at least one processor. The host computing system 210 can support the execution of a social networking system 280 providing management services for a social network of different users, each accessing the social networking system 280 from over a computer communications network 230 by way of respectively different client computers 240 hosting the execution of an application client 250. Each application client 250 in turn can include a display in a user interface 270 of a stream 260 of status updates for different users in the social network.
Notably, a blinder avoidance module 300 can be coupled to the social networking system 280. The module 300 can include program code that when executed in the memory of the host computing system 210, is enabled to store in a table 290 different specified user interface interactions, such as a fast scroll action in which the scroll speed of a scrollable user interface control hosting the stream 260 exceeds a threshold value, a slow scroll action in which the scroll speed of a scrollable user interface control hosting the stream 260 falls below a threshold value, a page up or down action, or an eye gaze tracking action such as a gaze tracking action detecting a stare away from the stream 260, or a gaze tracking action detecting a rapid change in focus of an user upon different locations on the user interface 270. The program code is further enabled to store in the table 290 in connection with each of the user interface interactions, one or more corresponding user interface changes, such as an enlargement of the status update of an user in the stream 260, or an enlargement of a profile avatar presented in connection with the status update of the user in the stream 260, or the visual decoration of the status update with an icon in the stream 260.
The program code of the blinder avoidance module 300 yet further can be enabled to monitor the stream 260 of each user in a respectively different user interface 270 so as to detect the occurrence of a user interface interaction. In response to detecting a user interface interaction, the program code of the blinder avoidance module 300 is enabled to determine a corresponding user status update change in the table 290 to be applied to a status update for a particular user also associated with the detected user interface interaction in the table 290. Thereafter, the program code of the blinder avoidance module 300 is enabled to apply the determined status update change to the presentation in the stream 260 of the status update.
In even yet further illustration of the operation of the blinder avoidance module 300, FIG. 3 is a flow chart illustrating a process for blinder avoidance in social networking interactions. Beginning in block 310, a user interface interaction is detected in connection with a stream of a user interface presenting different status updates of respectively different users in a social network. In block 320, the table can be consulted in respect to the detected user interface interaction so as to determine in decision block 330 if a corresponding status update change can be located. If not, the process can end in block 340. Otherwise, in block 350 a user identifier for the located status update change can be determined and in block 360, a status update in the stream can be inspected to determine if a status update is presented in connection with an user of the social network having the determined user identifier. In decision block 370, if a status update can be located in the stream in connection with an user of the social network having the determined user identifier, in block 380, the presentation of the status update in the stream can be changed in accordance with the status update change corresponding to the detected user interface interaction.
The present invention may be embodied within a system, a method, a computer program product or any combination thereof. The computer program product may include a computer readable storage medium or media having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention. The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.
Computer readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like, and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.
Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.
These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
Finally, the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
Having thus described the invention of the present application in detail and by reference to embodiments thereof, it will be apparent that modifications and variations are possible without departing from the scope of the invention defined in the appended claims as follows:

## Claims

1. A method for blinder avoidance in social networking interactions, the method comprising:
executing a social networking data processing system in memory of a host computing system to provide a social networking service to different end users in a social network;
defining in a record in a table in memory of the host computing system, a user interface interaction for a user interface of the social networking service, a specified one of the different end users, and a corresponding user interface change in the user interface in connection with a presentation of a status update received for the specified one of the different end users;
receiving in a user interface for the social networking service by another of the different end users in the social network, a stream of status updates for the different end users in the social network;
detecting a performance in the user interface of a particular user interface action by the another of the different end users; and,
on condition both that one of the status updates in the stream pertains to the specified one of the different end users and also that the particular user interface action is present in the record in connection with the specified one of the different end users, locating in the table the corresponding user interface change, and performing the corresponding user interface change in the user interface in connection with the presentation of the status update for the specified one of the different end users.

2. The method of claim 1, wherein the user interface interaction is a fast scroll action or a slow scroll action.

3. The method of claim 1, wherein the user interface interaction is a page up or down action.

4. The method of claim 1, wherein the user interface interaction is an eye gaze tracking action.

5. The method of claim 1, wherein the corresponding user interface change is an enlargement of the status update of the end user or an enlargement of a profile avatar presented in connection with the status update of the end user.

6. The method of claim 1, wherein the user interface change is a visual decoration of the status update with an alert.

7. A social networking data processing system configured for blinder avoidance in social networking interactions, the system comprising:
a host computing system comprising one or more servers, each with memory and at least one microprocessor;
a social networking data processing system executing in the memory of the host computing system to provide a social networking service to different end users in a social network;
a multiplicity of streams of status updates for ones of the different end users displayed in respectively different user interfaces of the social networking data processing system for respectively different ones of the different end users; and,
a blinder avoidance module executing in the memory of the host computing system, the module comprising program code enabled upon execution in the memory of the host computing system:
to define in a record in a table in memory of the host computing system, a user interface interaction for a user interface of the social networking service, a specified one of the different end users, and a corresponding user interface change in the user interface in connection with a presentation of a status update received for the specified one of the different end users,
to receive in a user interface for the social networking service by another of the different end users in the social network, a stream of status updates for the different end users in the social network,
to detect a performance in the user interface of a particular user interface action by the another of the different end users, and
on condition both that one of the status updates in the stream pertains to the specified one of the different end users and also that the particular user interface action is present in the record in connection with the specified one of the different end users, to locate in the table, the corresponding user interface change, and to perform the corresponding user interface change in the one of the different user interfaces in connection with the presentation of the status update for the specified one of the different end users.

8. The system of claim 7, wherein the user interface interaction is a fast scroll action or a slow scroll action.

9. The system of claim 7, wherein the user interface interaction is a page up or down action.

10. The system of claim 7, wherein the user interface interaction is an eye gaze tracking action.

11. The system of claim 7, wherein the corresponding user interface change is an enlargement of the status update of the end user or an enlargement of a profile avatar presented in connection with the status update of the end user.

12. The system of claim 7, wherein the user interface change is a visual decoration of the status update with an alert.

13. A computer program product for blinder avoidance in social networking interactions, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a device to cause the device to perform a method comprising:
executing a social networking data processing system in memory of a host computing system to provide a social networking service to different end users in a social network;
defining in a record in a table in memory of the host computing system, a user interface interaction for a user interface of the social networking service, a specified one of the different end users, and a corresponding user interface change in the user interface in connection with a presentation of a status update received for the specified one of the different end users;
receiving in a user interface for the social networking service by another of the different end users in the social network, a stream of status updates for the different end users in the social network;
detecting a performance in the user interface of a particular user interface action by the another of the different end users; and,
on condition both that one of the status updates in the stream pertains to the specified one of the different end users and also that the particular user interface action is present in the record in connection with the specified one of the different end users, locating in the table the corresponding user interface change, and performing the corresponding user interface change in the user interface in connection with the presentation of the status update for the specified one of the different end users.

14. The computer program product of claim 13, wherein the user interface interaction is a fast scroll action or a slow scroll action.

15. The computer program product of claim 13, wherein the user interface interaction is a page up or down action.

16. The computer program product of claim 13, wherein the user interface interaction is an eye gaze tracking action.

17. The computer program product of claim 13, wherein the corresponding user interface change is an enlargement of the status update of the end user or an enlargement of a profile avatar presented in connection with the status update of the end user.

18. The computer program product of claim 13, wherein the user interface change is a visual decoration of the status update with an alert.