Screensort
Effortlessly manage your screenshots
Problem Space
Have you ever lost an important screenshot right when you needed it most, like boarding a flight? We did too. The frustration of sifting through a cluttered camera roll, hunting for receipts, documents, or travel details, is a common headache. We found that existing apps were either not user-friendly or lacked intuitive designs, making them cumbersome to use. We hypothesized that there is an unmet market need with pain points that we could solve for and help improve by leveraging AI to this problem area. This led us to the following problem statement:
How might we help everyday smartphone users remember and organize their screenshots so that they can refer to information in the screenshot afterwards?
Problem Background
With the increasing reliance on digital content and frequent use of screenshots, managing and accessing these images has become more challenging. Users need an automated solution to organize and remind them about their screenshots, reducing clutter and improving information retrieval. Addressing this issue now can significantly enhance daily workflows and reduce cognitive load from managing digital clutter.
Research indicates that disorganization leads to cognitive overload and stress, as users struggle to find information. Additionally, qualitative assessments of smartphone use reveal that users experience frustration and decreased productivity due to the clutter in their photo galleries (Smith et al., 2018).
User Pain Points & Research Insights
To validate our hypothesis, we conducted an initial market research survey using Google Forms and received 25 responses from a diverse group of participants across various age groups and professional backgrounds. The goal of these interviews was to understand if and how users interact with their screenshots, identify the difficulties they face, and explore potential solutions to enhance their experience.
Based on the responses, we found that:
- An overwhelming majority (95%) take screenshots multiple times a day or at least once a day.
- Users typically search for screenshots by manually browsing through the gallery or remembering the approximate date the screenshot was taken.
- Users frequently misplace important screenshots due to volume and lack of organization.
- A significant number feel overwhelmed by the number of screenshots they have
➤ Check out our Affinity Map.
The main takeaway was that users needed a way to easily access important information stored in screenshots, which are often hard to find due to clutter and disorganization. Users expressed significant frustration with locating specific screenshots later on, which hindered their efficiency. One user emphasized that an easy way to access screenshots would save considerable time and boost productivity.
We then identified the following key pain points:
- Forgetting Screenshots: Users often forget about their screenshots and forget to organize them, leading to missed information and frustration.
- Disorganization: The accumulation of numerous screenshots leads to cluttered storage, further complicating the retrieval process.
- Storage Issues: Large volumes of screenshots take up significant device storage space.
- Time-consuming- Users spend a significant amount of time managing their screenshots, which could be better spent on other tasks.
- Cumbersome Organization Methods: Existing manual organization methods are not user-friendly or lacked intuitive designs.
Feedback
Our user feedback revealed that the need to manage screenshots extends beyond specific groups like travelers or students to a wide range of smartphone users, including busy professionals, parents, and tech-savvy individuals. This expanded our focus to help a broader audience. By addressing common pain points such as forgetting, disorganization, and user-friendly interface, we aim to create a versatile solution that enhances productivity and simplifies digital management for all smartphone users.
User Persona
While our ultimate goal for Screensort is to serve all everyday smartphone users,we chose to first concentrate on addressing the needs of Carmen Ellington, a travel connoisouer. She loves traveling but struggles with organizing her travel documents. She seeks a solution to easily manage and access important information, ensuring a smooth and stress-free journey. With Screensort’s automated folder organization, Carmen’s pain points can be resolved as her travel documents will be neatly categorized, saving her time and reducing stress of looking through a cluttered camera roll during a critical time.
Solution Explanation
Based on the users’ pain points, we identified numerous potential features. To determine which would benefit users the most, we created a prioritization list.
For our MVP, we chose to implement the following features:
- Access and Manage Screenshots: Enable the app to access and manage screenshots within the camera roll.
- Manual Categorization: Implement manual sorting to relevant folders to organize screenshots.
- Onboarding Experience: Provide clear instructions and guidance for an easy onboarding process.
- Reminder System: Set up reminders to review screenshots in a timely manner.
- Error Messaging: Display error messages to help users understand and resolve issues.
Lofi & Hifi Mockups
Iterative Design Learnings
We conducted a usability test to evaluate how users interact with and perceive the Screensort app. Participants were asked to perform specific tasks, such as interacting with specific elements and creating new folders. Afterward, they were prompted with a series of questions to help us identify areas that might need clearer expectations and improve the overall experience. For example,
to determine whether users found the app user-friendly and easy to understand, we specifically asked if they understood terms like 'snooze.' Additionally, the usability test helped us understand what additional functionalities users would like to see, get feedback on the app’s aesthetic and usability aspects, and gauge the user's overall experience and satisfaction with the app.
Most users found the app easy to navigate and appreciated the clear instructions which contributed to a positive experience. They were generally satisfied with the app's core functionality, though improvements in performance and additional features were desired. Overall, users expressed a positive reception but noted areas for enhancement to maximize the app's potential.
Technical Implementation Details
Where is it hosted?
- Our mobile app is being developed to manage files locally; it does not connect to any hosted services. As it is still in development, it is not available on any app stores, but the code can be viewed at our GitHub repository: https://github.com/jamesmbcarlson/CoLab_Screenshots
What is your tech stack?
- Screensort is being developed with the Android Studio IDE, using Java.
High level journey of a request
- We began development using Python, the coding language both developers were most familiar with, and the Kivy framework, which can be used to develop mobile apps using Python. As we continued to develop with Kivy, it became clear that Kivy was too limited for our development needs.
- We pivoted away from Python and Kivy and instead turned to Android Studio, so we could ensure we could get a working version of the application to run on Android, the mobile OS of choice for both developers. To effectively utilize Android Studio, we switched to Java, a new programming language for the developers.
- Similarly, early in development, we pursued sorting the screenshots using image classification (using the ultralytics YOLOv8 deep learning model), but as we became more familiar with the technology, it became evident that sorting any screenshot a user may take was way too broad a dataset to reliably categorize, so we had to pivot away from this too.
- With limited time remaining, we focused on getting the core features of the application running before investigating other methods for automated sorting.
Technical Challenges
What was the hardest part of development?
- As outlined in the high-level journey described above, we started development with different tools, languages, and objectives then we ended up with. These pivots were necessary, but definitely created the biggest obstacle in our development process, and ultimately created more work for us. After the time spent with our first iteration, we had to start from scratch with a new tech stack.
Does your app have any scaling issues?
- The application mostly deals with its data, creating and managing lists, so it should be able to handle fairly large libraries of screenshots.
What are some key takeaways?
- Choosing the correct tech stack from the beginning is critical, and we would have benefited greatly from choosing technologies with which we were already familiar.
Future Steps
We will not be continuing the development of Screensort, but we are immensely grateful for the experience and the learning opportunities we gained throughout the journey. If we were to continue development, we would leverage the valuable feedback from the MVP to better meet user needs.
A significant 96% of users expressed a strong desire for automatic sorting of screenshots into relevant folders. Therefore, our next step would be to develop and integrate AI algorithms to automate this process, enhancing user convenience and efficiency. Additionally, we would prioritize improving the search functionality, enabling users to quickly locate screenshots by keywords, dates, or tags, as this feature was highly requested based on user feedback.
Learnings
Product Manager Learnings:
Arshana Arumugarasan
Designer Learnings:
Sloane Shearer
Designer Learnings:
Jo Sturdivant
- Adapting to an Established Team: Joining the team in week 6 of 8 was challenging, as I had to quickly adapt to existing workflows, dynamics, and goals. This mirrors real-world situations where you often integrate into teams mid-project, and flexibility is essential.
- Work-Blocking for Efficiency: With only two weeks to complete the project, I learned the importance of a structured work-blocking system. This approach allowed me to manage my time effectively and meet deadlines under pressure.
- Making Data-Driven Design Decisions: Unlike my past projects, I had to rely on research conducted by others. This was a valuable experience in using pre-existing data to guide design decisions, helping me focus on the core insights without starting from scratch.
Developer Learnings:
James Carlson
Developer Learnings:
Vanady Beard
&
As the back-end developer, I learned how important it is to create efficient and reliable systems that support the entire application. This experience also taught me the importance of optimising the database and ensuring the backend is scalable and easy to maintain.
Developer Learnings:
Stephen Asiedu
&
As a back-end developer, I've come to understand the importance of being familiar with various database systems and modules. This knowledge enables me to build diverse applications and maintain versatility in my work. I've also learned that the responsibility for making the right choices rests on my shoulders, guided by my best judgement.
Developer Learnings:
José Garrido II
&
Developer Learnings:
Maurquise Williams
&
- Process of Creating an MVP: Developing a Minimum Viable Product (MVP) taught me how to focus on delivering core functionalities balancing between essential features and avoiding scope creep.
- Collaboration in a Real-World Tech Setting: This experience taught me how to collaborate efficiently in a fast-paced tech environment, keeping the team aligned and productive, even while working remotely across time zones.
- Sharpening Critical Thinking and Problem-Solving Skills: This experience honed my ability to think critically and solve problems efficiently. By tackling challenges and finding quick solutions, I sharpened my decision-making and troubleshooting skills in a dynamic, real-world setting.
Developer Learnings:
Jeremiah Williams
&
All in all this experience was very awesome I learned that in coding with others being transparent is key
Developers Learnings:
Justin Farley
&
I learned how important communication is when working with a team. Communication provides understanding, advice, ideas, and much more. While working with the product team, I’ve found that communication keeps everything flowing smoothly. Working with a team also showed me that every member brings something different to the table and we all have to work together in order to align and meet our end goal.