Lambda Alumni Network

Joseph Vega
5 min readMar 4, 2021

What is Lambda Alumni Network?

The Lambda Alumni Network is a private community for Lambda students to connect. The Lambda Alumni Network is intended to help students connect and talk about specific topics for example job-related topics, career help, or even students who are willing to provide mentorship opportunities to other students. The goal of this app is to give back to the community of students and make it easier for them to communicate with one another. The Students can post and comment on questions, for example, talk about job opportunities, interview prep or just to get an insider of how it is like to work at a specific company the possibilities are endless.

Contributions

The existing project we received only had a dashboard, where all the posts from the users were gathered and displayed. The goal for our team was to implement new features into the project. The features included rooms, rooms are individual forums dedicated to a single topic where a user can post depending on the topic of the room to have a general discussion about just about anything related to school. These rooms can only be created, updated, and deleted by administrators which will be also one of the team’s goals to add admins to moderate, control the rooms and posts. Another of the features we discussed with the team is the admin will be able to assign or create new user roles so there is some sort of moderation going on in these rooms. Admins will assign moderators and those moderators will review flagged posts and or comments. If the post or comment is inappropriate, offensive the moderator has access to delete or update inappropriate posts or comments. We then discussed as a team who should do what, I took on the role of creating the functionality of the rooms where the administrator will be able to CRUD rooms.

Challenges

My first major roadblock after inheriting this code was trying to read through all the files and understand what everything was doing. Once I got familiarized with the code I began planning with my team to see how they wanted the layout of the component to look so we worked on a Whimsical wireframe to get an idea of what the admin will see on the creation of rooms.

After we discussed and designed the Whimsical wireframe for the rooms I immediately began to work on the component of the room. An issue I ran into when the rooms were created, was the page would not re-render on the creation of room. I further investigated the situation and came to find out that when creating, updating, and deleting the rooms the application would not re-render. This issue ruined the overall user experience. The reason for this was in my reducers I needed to return the newly created state and initially, I was not returning the new state which caused the application to not re-render even if I had a useEffect() hook to update when the state is changed.

Where we left off

We are now on the fourth week of the project and our time with this project has come to an end. It was a great experience working with new developers and learning new libraries that were implemented in the project before us. I was able to gain new knowledge using React and Redux that I have not learned before, as well as getting much more practice on using Redux in a larger scaled project. The experience working on this project was amazing as well as working with amazing developers with great ideas. Now it is time to pass on this project to the new students coming into labs to implement newer features and work on top of ours to possibly improve the overall user experience.

Current state of the app

Features implemented:

  • User Administration — As an administrator, I should be able to CRUD users and user roles
  • Rooms — As an administrator, I should be able to CRUD rooms
  • Users View — As a user, I can view, post, comment, and navigate through rooms.

Future of the App

We have implemented all these new features, but there is still much more that needs to be added before it is ready for us as students to be able to use it.

What will be added in future releases:

  • Upvoting — As a user, I can upvote posts and comments.
  • Search, Sort, and Filter — As a user I can search rooms by a keyword and sort/filter posts by the relevance of the post.

We have had a meeting discussing the features that still need to be added, and the next team working on the project will be implementing new features and addressing bugs.

A Learning Experience

Working on this project was amazing and taught me a lot, I got to work with amazing developers and stakeholders to bring to the table what was wanted from them. I was able to further develop my skills as a developer as well as get a lot of practice communicating with a larger team and working together to deliver the features that were wanted from us as a team. I also got the chance to practice my presenting skills and improved a lot on presenting my code and why I implemented this or why I went this route. It helped me a lot be more detailed about my work and being able to explain more in detail. Also, I ended up choosing to work on the front end for this project because I knew I need more practice with Redux, this was a great learning experience because this project gave me a lot of practice working with Redux in a bigger application. This project was a great opportunity to get a general idea of what working with a company will be like and gave me the motivation to want to continue to learn more as a developer.

--

--