My new project as a software engineer
Artist and Venue matching site

My new project as a software engineer

Hello all my friends, how is it going for you there? Today I'm here to share with you what I have been working on for the past two months- a web application. I called it Artist and Venue matching site. What it basically does is just let artists make themself available to perform at the venue. And also it gives the venue the same functionality. The other thing is the show can be created by matching the available artists and venues(this is where it got its name from).

The app is done entirely by me except I get the idea and part of the frontend code from Udacity while I was learning a full-stack developer program there. Firstly, I created the models and stated the relationships between the tables, and also normalized them. Then I went to implementing the endpoints that serve as a communication medium between the front end and the database. Finally, I edited the front-end code that I get from Udacity and personalized it. As I stated above the app aims to easily connect an artist with a venue. I wanted to focus on implementing the CRUD operation which enables everyone to post a venue and an artist and create a show for the available artists and venues. In the future, I intend to add the functionality of booking a place at the venue from the app.

A little story about me

I am very passionate about coding. But this was not so 2 years before. I just only knew amazing technologies that are the work of programming like games, AI, blockchain, and many more. And it was then I started developing an interest in this field and decided to join computer science. Then I joined Addis Ababa University and selected the computer-science department without having that much knowledge about the department. And it was not that much to get comfortable with it to me. I get much experience by wandering over many online learning sites and I got myself being proficient from time to time. Though, I didn't stop running after other opportunities. Down the road, I got the chance to join some privileged programs that are offered by ALX Africa. Recently, I graduated from Udacity in a full-stack Nanodegree program. It was there I started feeling that I really was becoming a programmer. They thought me much about building fully functional web applications and also deployment to a cloud. Then now, while finishing the foundational section of my other program, alx software engineering, I was required whatever I like using the knowledge I got from what I learned. Then I decided to show what I have gotten from both programs by building a web application- Artist and Venue matching site. And here I'm now. I have finished building the app and also deployed it. That is all. I plan to pursue a career as a decent software engineer.

Accomplishments made on the project

For the front end, mainly, HTML and CSS are used as more dynamic features aren't required. I used the flask framework as the backend framework as it is simple and user-friendly, and also contains many libraries needed. Postgresql is used for the database.

The website is responsive and compatible with mobile. As the models are implemented inside the app code, the database can be easily constructed just by running flask migrate and flask upgrade. Error handling pages are implemented for the app so that by the time of error occurred custom error page will be displayed.

Technical challenge

I didn't encounter such a tedious technical challenge while doing the project. Some of the challenges I may raise are the following. During creating the database, I had to make an association table. And making the association was a bit challenging. But, I searched for the solution and got a way to solve the problem without that much hassle. The other challenge I may mention is manipulating data from the association table. Another challenge was writing the SQLAlchemy query to get the start time attribute of the show from the Show table. I had to get the start time attribute of the show to display on all pages- The artist page, Venue page, and Show page. I was able to solve this also after some wandering on google. Figuring out the appropriate data structure by which I should pass the data from the backend to the front end can also be mentioned as a challenge. I used a dictionary as the data structure while transferring data from the backend to the front end. Using a dictionary simplified communication between the back and the front as it is easy to be accessed. One last thing was deciding which way the front end has to display the data it received from the backend.

Take-aways from the project

I got so much experience while doing this project. To mention some, I got familiar with the flask framework which is very simple and user-friendly. I also experienced working with PostgreSQL RDBMS.

Thank you all for taking the time to read this post.

Links

Links to the project repository and the deployed respectively

Link to a landing page

Link to my Linkedin profile

要查看或添加评论,请登录

Wendwossen Dufera的更多文章

  • Postmortem of my simple project

    Postmortem of my simple project

    While I was working on server deployment project, I experienced some system error. I explained the incident that…

社区洞察

其他会员也浏览了