Blog Post #2

  • Why did you and your team choose the technologies you did?
    • In this project, we will be building a Software Programming Quiz website using ChatGPT and documenting our journey in a research report, to provide insights to users who are interested in
    • using ChatGPT for their own projects.
  • How will your project use them?
    • We will use ChatGPT in our report, in uses such as project planning, software design, coding, testing, debugging, deployment, documentation, database creation, server
    • implementation and maintenance.
    • To create a web application meeting these requirements, we can use a three-tier architecture comprising a front-end, a back-end, and a database. Here’s a overview of the structure and
    • technology stack:
    • Front-end:
    • Use HTML, CSS, and JavaScript to create the user interface.
    • Utilize a responsive design framework like Bootstrap to ensure the app works on various devices.
    • Use a JavaScript framework like React or Angular to build the employer and candidate
    • interfaces, manage states and components, and handle interactions.
    • Back-end:
    • Develop a RESTful API using a back-end framework like Node.js with Express or Python with
    • Flask or Django. This API will be responsible for handling CRUD operations (Create, Read,
    • Update, and Delete) for accounts, quizzes, and quiz results.
    • Implement authentication and authorization using JSON Web Tokens (JWT) or OAuth to secure
    • access to employer and candidate interfaces.
    • Implement email functionality to send unique key links to candidates using an email service like
    • SendGrid, Mailgun, or AWS SES.
    • Database:
    • Use a database management system like PostgreSQL, MySQL, or MongoDB to store and
    • manage user accounts, quizzes, and quiz results.
    • Implement proper indexing and querying mechanisms to efficiently retrieve ranked quiz results
    • and individual stats.
    • Deployment and hosting:
    • Deploy the application on a cloud service provider like AWS, Google Cloud Platform, or Heroku,
    • which provides scalability and ease of maintenance.
    • To sum it up, here’s a sample tech stack:
    • Front-end: HTML, CSS, Bootstrap, React/Angular
    • Back-end: Node.js with Express or Python with Flask/Django
    • Authentication: JWT or OAuth
    • Database: PostgreSQL, MySQL, or MongoDB
    • Email service: SendGrid, Mailgun, or AWS SES
    • Deployment/hosting: AWS, Google Cloud Platform, or Heroku
  • What are their pros and cons?
    • Using HTML, CSS, and JavaScript to create the user interface and utilizing a responsive design framework like Bootstrap to ensure the app works on various devices, and using a JavaScript framework like React or Angular to build the employer and candidate interfaces, manage states and components, and handle interactions has its own pros and cons.
    • Pros:
    • HTML, CSS, and JavaScript are widely used and supported technologies, making it easier to find resources and developers who are familiar with them.
    • Bootstrap is a popular responsive design framework that provides a set of pre-built components and styles, making it easier to create a responsive and mobile-friendly user interface.
    • React and Angular are popular JavaScript frameworks that provide a set of tools and libraries for building complex web applications, managing states and components, and handling interactions.
    • Cons:
    • Using multiple technologies and frameworks can increase the complexity of the project and require more time and effort to learn and integrate them.
    • Bootstrap provides a set of pre-built components and styles, which may limit the flexibility and customization of the user interface.
    • React and Angular have a steeper learning curve and may require more time and effort to master compared to other JavaScript frameworks.
    • Ultimately, the choice of technology and framework will depend on the specific requirements of the project, the expertise of the developers, and the trade-offs between flexibility, ease of use, and performance.
  • What do you like or dislike about your system UI/UX?
    • Our UI is still in the initial stages, but I think it tries to be as simple as possible, with being as user friendly and intuitive as possible.
  • What do you like or dislike about your server/backend system/API?
    • Developing a RESTful API using a back-end framework like Node.js with Express or Python with Flask or Django, implementing authentication and authorization using JSON Web Tokens (JWT) or OAuth, and implementing email functionality to send unique key links to candidates using an email service like SendGrid, Mailgun, or AWS SES has its own pros and cons.
    • Pros:
    • Using a back-end framework like Node.js with Express or Python with Flask or Django can provide a set of tools and libraries for building a scalable and maintainable RESTful API.
    • Implementing authentication and authorization using JSON Web Tokens (JWT) or OAuth can provide a secure way to manage access to the employer and candidate interfaces.
    • Implementing email functionality can provide a way to send unique key links to candidates and improve the user experience.
    • Cons:
    • Using a back-end framework like Node.js with Express or Python with Flask or Django can have a steeper learning curve and require more time and effort to master compared to other technologies.
    • Implementing authentication and authorization can increase the complexity of the project and require more time and effort to implement and test.
    • Implementing email functionality can introduce additional dependencies and require more time and effort to integrate and test.
    • Ultimately, the choice of technology and framework will depend on the specific requirements of the project, the expertise of the developers, and the trade-offs between flexibility, ease of use, and performance.
  • What do you like or dislike about your design modularity? Does it enable each of your to work independently?
    • We have chosen to be very democratic in our project designs and our group hopes that we can create a product that works well and has a good design element. I think that that we divided up the work evenly and hopefully we can implement it well in the time that we have.
Print Friendly, PDF & Email

Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *