SunSquare project

Martin Corredor
6 min readJun 24, 2021

Before starting to discuss which project would be the best to test ourselves as developers, together with Juliana Monroy and Nelson Arevalo, we would meet over video calls to chat about our lives and take a break from studying. In the middle of these talks I told them that for family and study reasons, during my life I have had to move from home about twenty times !!, with which they laughed a lot and told me that with all those moves, I was already more of an expert in changes than in programming.

They asked me several things on the subject, and among those, they asked me how I did to find the next place where I would move; I answered them honestly telling them that that was the most complicated part because I had to search different websites to find an available site, and even more cumbersome having to fill in my details over and over again for each ad I saw, and then contacting the owner of the place and that he also knew me so that we could do business.

In the days when the project would start, I was just going to move (again) and that’s when we came up with an application that would make the whole thing of getting a rental place to move easier.
Thus was born SunSquare, a web application that focuses on facilitating the experience for the person looking for a place to live, and in the same way for the person who rents the place; in the same way, improve the communication between the two parties through a system of matching…A Real Estate Tinder.

The best team

As I mentioned before, my CrazyCoders team is made up of three people, Juliana Monroy, who was in charge of the Back-End; Nelson Arevalo, who worked on the concepts and hosting of the project, and I, who was in charge of the Front-End of the application.

Timeline and checkpoints

For this project we had around 30 days, which we distributed as follows:

Research and Proposal

  • Week 1: Research and idealization of the project.
  • Week 2: MVP proposal (minimum viable product).
  • Week 3: Administration and organization of the project.

Create portfolio project

  • Week 4: Development
  • Week 5: MVP completed (minimum viable product).
  • Week 6: Landing page unfolded, final presentation delivered.

Infrastructure and technologies

For the Front-End, we opted to use HTML5, CSS3, Bootstrap, and React. We opted for these frames because they were the ones that best suited our needs, which were to locate elements in blocks or components, in addition to their versatility. React because we wanted to spend our time consolidating our understanding of JavaScript and some of its libraries, and the JSX syntax extension was very helpful to us by making it easier for us to write the components. For the Backend, we opted for Python and Flask because Flask is the best alternative for self-taught people like us who are starting in this world of development, since the Flask documentation is extensive and together with its simplicity in the code, it allows us to make applications easily, and it does not mean that they are low-cost applications.

The most difficult technical challenge

As a team, we had different challenges to develop the project depending on the role of each one of us, such as how to couple Flask with React, the server configurations to correctly receive external queries to the application, among others.
Personally, the biggest challenge I had was learning React, we knew it was the best option for our application due to its versatility in terms of its component structure, but I had never worked with React, I had to dedicate myself to reading official documentation, watching tutorials and practicing on a small alternate project. I had worked with pure JS, but not much either, so it was a good time to polish my knowledge with this language by creating the functions I needed for the front-end.
Finally, I decided to create the entire front-end from the tool that React provides: “create-react-app” which already brings you all the necessary files to have an application running and that you see the changes instantly, It made it easy for me to learn how React components communicate, its implementation, and why it is so recommended to work.
I have knowledge of HTML and CSS and thus I had created several projects before and could display a static web page and I love that, and that is why I decided to work on the front-end of the application, they advised me to include Boostrap since it had components made ready to implement, I included it although without the expected results because using CSS, I edited components that did not totally convince me in the design. Working with the React hooks was really challenging as it was adding dynamism to the page, which I had never done before.
In the end, my knowledge of HTML helped me a lot with writing JSX in React, and my knowledge of CSS in using Boostrap. I think I delivered a good product so that it would be coupled with the functions performed in the back and the application would have the expected result

Characteristics

You will only have to enter your data once, in your registration as a new user.
Some features of the application:

The main part, where you can filter your search for ads by type of place if you are looking for it for sale or rent and the city or neighborhood where you need it …

Unlike other web applications, to apply to an ad, the user will only have to click on apply and your data will automatically be sent to the owner of the ad.

It has a “My announcements” section where you can see the announcements you have created, modify them and see the people who have applied to the announcement, where you can see their data clearly and quickly and decide whether to accept or reject it.

What I learned with SunSquare

Developing this application was difficult, it is difficult to create a project like this in a month of work without having experience, but I learned that with good planning, development becomes simple, obviously complying with a schedule, although in planning mistakes can be made In the dates and work times are assumed that in development, due to different problems, cannot be fully met.
Working with this team was a good experience since we knew each other before and our relationship is good without explicitly only working.
Forming a good work team is essential because dividing the tasks, the only thing you can do is do your work responsibly, and trust that others will do the same so that in the end the project is completed satisfactorily and on time.
I am still amazed at all that can be achieved by working with discipline, a year ago I would not have imagined that I could achieve so much in such a short time. I learned new technologies, I consolidated my knowledge from my stage of HolbertonSchool Foundations but above all, I believe that the best skill is learning to learn.

With this ends my experience developing with this great CrazyCoders team, was a great experience, and we will continue working on this project to fully complete it and make it known to the public since it has a lot of potentials and can help many people like me, to allocate more time to live and not look for where to do it.

--

--

Martin Corredor
Martin Corredor

Responses (1)