COLAB12 - MAC OS APP

MultiTask

A downloadable MacOS application that allows a Zoom meeting participant to quickly perform Zoom tasks (i.e. mute, camera button), no matter what application they are using during their meeting.

Problem Background  

The rise of remote and hybrid work during the pandemic has forced companies small to large to host their meetings remotely. Managers prefer their employees to pay attention and interact during such meetings. However, employees might prefer to turn off their camera and mic so that they can multitask without any participants in the virtual meetings knowing. 

Managers also understand that there could be valid reasons for multitasking during a meeting including too many meetings. One study states, “nearly half of executives (48%) cite too many meetings as a reason why employees do not talk during virtual meetings, saying they had too many calls that could’ve been an email”

Employees have no quick solution to multitask on their computer while also demonstrating that they are engaged in a virtual meeting at the same time.   

Our Problem Statement
How might we allow access to the features of virtual meeting applications outside of the application for participants so that they can quickly switch between tasks during meetings?

Research Insights

By interviewing potential users we discovered common themes. When using a virtual meeting application users wanted to: 

  • Easily navigate between the virtual meeting and their work so that they didn’t suffer from a major loss in productivity.
  • Access application features without opening the application
  • Control of their audio so that they can hear people clearly
  • Change their profile settings easily so that they don’t need to waste time preparing for a meeting

Explanation of the Solution

Based on our user research our solution is an application that allows our users to control the functions of a virtual meeting application when the meeting window is not active. This will enable users to work confidently knowing they can meet their manager’s expectation of being engaged in a meeting while also having the security and freedom to complete other tasks during meetings. The application will be visible and accessible to the user at all times. This will enable the user to freely organize their desktop in any way they choose without having a mandatory meeting application open. 

Lofi & Hifi Mockups

Iterative Design Learnings

After we showcased our prototype to the users, we learned that we had the core features they wanted (i.e. ability to mute/unmute their microphone, turn off/on their camera) and that if we couldn’t get features beyond our MVP in the first prototype that would be okay since the application performed the tasks most important to the user. 

Implementation Details

Technical implementation

Where is it hosted? 

Our product is a downloadable MacOS application hosted on the user’s local machine.

What is your tech stack?

We used HTML, CSS, Electron, Node.js, and Applescript.

High level journey of a request

Our product’s interface was created using Electron and each button is mapped to run a piece of Applescript that controls Zoom’s relevant functionality.

Technical challenges

What was the hardest part of development?

Back-end:

The hardest part of development was figuring out plausibility.  Because neither of us had any experience creating a full on application before, we had to rely on a lot of research and experimentation to figure out if the product could even be made in the first place.

Front-end:

The most difficult part of development in the front-end was finding the tech stack specific to our project and learning it on the go. Electron is not a technology I’ve used before, while learning it was exciting, it was also very difficult to both learn and implement in the amount of time we had. Figuring out certain ways to execute things was challenging, especially since our specific project is very front-end oriented.

Does your app have any scaling issues?

Currently, our application only works with Zoom and only on MacOS, however there are readily available tools that could allow our application to work with other virtual meeting apps and on Windows.

What are some key takeaways?

Asking for outside support was a necessity for us in the dev team.  We constantly asked other experts and even our own product manager for additional research or opinions to get over blockers.  In the end, we were able to create and ship a final product with the help of those around us.

Future Steps

Future dashboard features will include: 

  • Audio level & input/ouput device controls
  • Screenshare controls
  • Ability to leave/end meeting 
  • Auto-start dashboard when entering a meeting 
  • Light/Dark mode 

Learnings

Product Manager Learnings:

Michael Ohanesian

Co.Lab was hands on and I love it. I don’t believe I could have got the same experience in a classroom setting full of just product managers. Being able to work with a team of developers and a designer changed the game for me. I got both the classroom experience and hands-on experience at the same time. As a result, I am able to take and demonstrate my craft skills to others. I am proud of my team and all our accomplishments.

Designer Learnings:

Eric Rogler

Co.Lab was an experience I do not think I would ever have outside of a professional environment. It is a chance to collaborate on a real and tangible project with shifting requirements throughout the 8-week process emulating blockers, good news, and more for what it takes to ship a product from conception to release.

Designer Learnings:

Jo Sturdivant

  1. 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.
  2. 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.
  3. 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:

Ernest Cheung

With Co.Lab, lots of things clicked for me in regards to an agile development environment and best utilising all components of a software product team. Up until now, I’ve only worked on web applications. Working on completely new technology to implement a desktop application was a great learning experience in adapting to a technology/work environment, both technical and logical problem solving, and was honestly extremely exciting and fun! I can say that I’m proud of what we’ve built as a team every step of the way.

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:

Jordan Tan-say

&

Co.Lab was an amazing experience for me. I’ve only ever worked with other developers so being able to collaborate with a Product Manager and Product Designer was a totally new experience for me, especially because our team decided to create a full MacOS application which I’ve never done or thought about doing before. Throughout our team’s 8 weeks together, we’ve been able to create and ship a tangible product that we can each proudly put on our resumes, something we would never have been able to do if we were by ourselves.

Developer Learnings:

Maurquise Williams

&

  1. 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.
  2. 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.
  3. 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.

Full Team Learning

  • Hands on learning is way better than predefined simulations. We love having an actual application that we developed together and is unique.
  • Anyone on a team can come up with a great idea even if the problem is coming an area not in their skillset. For example, our developers might have a coding problem, but it was our Product Manager who has no coding background that helped us find the solution to our coding problem. 
  • You can get a lot done in 8 weeks!