Django
Django was the framework I used for my first full-stack project, and it gave me a solid foundation in backend development. I learned it through Harvard's CS50W course and leveraged my prior Python knowledge to build a complete website for my employer at CNC Construction during my internship.
Expertise Areas
Full-Stack Web Development
- MVC Architecture - Understanding Django's MVT (Model-View-Template) pattern
- Django ORM - Database operations with Django's object-relational mapper
- Template Engine - Dynamic HTML rendering with Django templates
- URL Routing - Clean URL patterns and view routing
- Forms & Validation - Django forms and data validation
Backend Development
- RESTful APIs - Building APIs with Django REST Framework
- Authentication - User authentication and authorization
- Database Integration - PostgreSQL and SQLite with Django
- Session Management - User sessions and state management
- Middleware - Custom middleware for request/response processing
CS50W Foundation
- Harvard CS50W - Comprehensive web development course with Django
- Python Web Development - Leveraging Python for backend logic
- Database Design - Designing relational databases with Django models
- Security Best Practices - CSRF protection, SQL injection prevention
- Deployment - Deploying Django applications to production
Projects Using Django
CNC Construction Website (Internship Project)
Technologies: Django, Python, PostgreSQL, HTML/CSS
Built a complete website for CNC Construction during my internship:
- Full-stack web application from scratch
- Database design and management with Django ORM
- User authentication and authorization system
- Dynamic content management
- Production deployment for real-world use
This was my first full-stack project, and it taught me the entire web development lifecycle from planning to deployment.
CS50W Course Projects
Technologies: Django, Python, SQLite, JavaScript
Completed comprehensive projects throughout Harvard's CS50W:
- E-commerce auction site with bidding functionality
- Social network with posts and following
- Email client with Django backend
- Wiki application with markdown support
Why Django Was Important
Django was my introduction to professional web development. The CS50W course gave me a strong foundation, teaching me not just how to use Django, but how to think about web application architecture. Building the CNC Construction website as my first full-stack project was challenging but incredibly rewarding - seeing something I built being used in the real world validated all the learning. Django's "batteries included" philosophy meant I could focus on building features rather than reinventing the wheel, which was perfect for getting started with backend development.
Current Status
While I've since expanded to other frameworks like Node.js and Express, Django holds a special place as the framework that taught me backend development. I still appreciate Django's clean design and comprehensive feature set, and I'm comfortable jumping back into Django projects when needed.
Skills Gained from Django
- Full-stack web development
- Database design and ORM concepts
- RESTful API architecture
- Authentication and authorization
- MVC/MVT design patterns
- Python for web development