Project Review, Reflection, and User Profile Feature

MC Review and Reflection

Score Improvement

Overall_Score

Big Idea Percentage

Percentage

Over all, my score improved from 46 to 52 (68% to 77%), reflecting my growth in understanding key concepts.

Failed Questions

  • Museum Tickets Mistake: Simple oversight from not reading the question carefully.
  • Lossless Compression: I lacked knowledge about how audio compression works, so I made an educated guess.
  • Certificate Authority: I was unsure of the role and function of certificate authorities.

Areas for Improvement

  1. Learn more about audio and video compression techniques.
  2. Practice reading questions and answers more carefully.
  3. Deepen my understanding of data encryption and internet security.

User Profile Feature

Purpose of the Group’s Program

Our group’s project is a social media platform designed to foster community engagement and holiday gift sharing. The platform integrates frontend and backend systems, providing seamless user interactions through a well-structured API and intuitive UI.

My Contribution: User Profile Management

I developed the User Profile Management System, which allows users to view, update, and delete their profiles. The feature handles profile pictures, usernames, and theme preferences while ensuring secure API communication.

API Requests and Responses

Fetching Profile Data Example:

async function loadProfile() {
    try {
        const response = await fetch(apiUrl);
        const data = await response.json();
        document.getElementById('link').src = data.link || 'default_image.png';
        document.getElementById('username').textContent = data.name || 'Unknown User';
        document.getElementById('theme-preference').textContent = `Preferred Theme: ${data.theme || 'Light'}`;
    } catch (error) {
        console.error('Error fetching profile data:', error);
    }
}

Postman API Request Example:
GET Request: http://127.0.0.1:8887/api/user_profile?user_id=1
Response:

{
    "user_id": 1,
    "link": "/images/profile.png",
    "name": "Spencer Lyons",
    "theme": "Dark"
}

Database Operations

  • Fetching All Profiles:
    profiles = UserProfile.query.all()
    
  • CRUD Operations:
    def delete(self):
      data = request.get_json()
      profile = UserProfile.query.filter_by(user_id=data['user_id']).first()
      profile.delete()
      return {"message": "User profile deleted successfully"}
    

Error Handling

Normal Case:

{"message": "User profile deleted successfully"}

Error Case:

{"message": "User profile not found"}

Reflection on Growth and Learning

Through this experience, I have grown in several areas:

  • Technical Growth: I improved my understanding of API integration, data manipulation, and secure communication between frontend and backend systems. Learning how CRUD operations work in practice strengthened my ability to build dynamic and responsive web applications.
  • Problem-Solving Skills: My improved exam score reflects a better grasp of technical concepts. Identifying my mistakes helped me build stronger learning habits.
  • Attention to Detail: Realizing that small oversights, like misreading a question or missing a detail in code, can significantly impact outcomes encouraged me to adopt a more precise approach.

This project helped me develop both technical skills and problem-solving strategies, which I’ll carry forward into future projects.


This combined post highlights your achievements while reflecting on your progress. If you’d like adjustments or additional content, let me know!