Developer Learning Resources - Complete Reference¶
This document contains curated learning resources and external courses for web development fundamentals.
Overview¶
This guide provides essential learning resources for WordPress and web development, covering fundamental engineering concepts to build a strong foundation for developers entering the field.
Course Modules¶
1. Programming Languages¶
1.1 HTML & CSS¶
Topics Covered:
- HTML5 structure and semantic tags
- CSS3 styling and layouts
- Flexbox and Grid
- Responsive design
- BEM methodology
Key Learning Resources Referenced:
- MDN Web Docs (HTML & CSS)
- Learn to Code HTML & CSS by Shay Howe
- Flexbox Froggy (interactive game)
- CSS Grid Garden (interactive game)
- Code standards and best practices
1.2 JavaScript¶
Topics Covered:
- JavaScript fundamentals
- ES6+ features
- Closures and scope
- Event loop
- Asynchronous programming
- Clean code concepts
Key Learning Resources Referenced:
- Wes Bos JavaScript Notes & Reference
- ES6 Tutorial (javascripttutorial.net)
- ECMAScript History
- Clean Code JavaScript (GitHub repo)
- ESNext features
1.3 PHP & MySQL¶
Topics Covered:
- PHP 8 features and syntax
- PHP namespaces
- MySQL database operations
- Prepared statements
- Clean code in PHP
Key Learning Resources Referenced:
- PHP 8 Tutorial (W3Schools)
- PHP Tutorial (TutorialsPoint)
- Clean Code PHP (GitHub repo)
- PHP Language Reference
- MySQL Database tutorials
2. Operating System Basics¶
Topics Covered:
- Command-line interface (CLI)
- Process management
- Inter-process communication
- Threads and concurrency
- System monitoring
- Shell scripting
Key Concepts:
- Terminal operations and navigation
- File system and permissions
- Process lifecycle and signals
- Background and foreground processes
- Cron jobs and task scheduling
3. Setting up Development Environment¶
Topics Covered:
- Package installation and management
- Local server setup
- IDE configuration
- Version control (Git and SVN)
- Debugging tools
- Development workflows
Key Tools:
- Git for version control
- Local development servers
- Code editors and IDEs
- Package managers
- Debugging extensions
4. Web Basics¶
4.1 How the Web Works¶
Topics Covered:
- Client-server architecture
- Request-response cycle
- Web browsers and rendering
- URLs and URIs
4.2 DNS (Domain Name System)¶
Topics Covered:
- DNS hierarchy
- DNS record types (A, AAAA, CNAME, MX, TXT, NS)
- DNS resolution process
- DNS propagation
- DNS commands (dig, nslookup, host)
4.3 HTTP/HTTPS¶
Topics Covered:
- HTTP methods (GET, POST, PUT, PATCH, DELETE)
- HTTP status codes
- HTTP headers
- HTTPS and SSL/TLS
- Request and response structure
4.4 Web Servers¶
Topics Covered:
- Apache HTTP Server
- Nginx
- Virtual hosts
- Reverse proxy
- Load balancing
- Server configuration
4.5 Rendering Engines¶
Topics Covered:
- Browser rendering engines (Blink, WebKit, Gecko)
- Critical Rendering Path
- DOM and CSSOM
- Render blocking resources
- Browser caching
4.6 Email Systems¶
Topics Covered:
- SMTP, POP3, IMAP protocols
- Email authentication (SPF, DKIM, DMARC)
- Sending emails from applications
- Email deliverability
Quizzes and Assessments¶
Complete quizzes to test your knowledge:
- HTML & CSS Quiz - Minimum passing score: 70%
- JavaScript Quiz - Minimum passing score: 70%
- PHP & MySQL Quiz - Minimum passing score: 70%
🎓 Course Completion¶
Requirements¶
- Complete all module lessons
- Pass all quizzes with 70% or higher
- Complete practical exercises
- Build final projects
Certificate¶
Upon successful completion of all modules and assessments, you'll have demonstrated proficiency in: - Programming languages (HTML, CSS, JavaScript, PHP, MySQL) - Operating system fundamentals - Development environment setup - Web technologies and protocols - Security best practices
How to Use This Guide¶
Step 1: Sequential Learning¶
Follow the modules in order: 1. Programming Languages 2. Operating System Basics 3. Development Environment 4. Web Basics
Step 2: Hands-On Practice¶
- Complete all exercises in each lesson
- Practice the code examples
- Try the interactive games (Flexbox Froggy, CSS Grid Garden)
Step 3: Take Quizzes¶
- Take quizzes after completing each section
- Review incorrect answers
- Retake if needed to achieve 70%+
Step 4: Build Projects¶
Apply your knowledge by building: - Responsive websites - Web applications with database integration - Scripts and automation tools
External Learning Resources¶
Learning Platforms¶
- MDN Web Docs: https://developer.mozilla.org/
- W3Schools: https://www.w3schools.com/
- JavaScript Tutorial: https://www.javascripttutorial.net/
- TutorialsPoint: https://www.tutorialspoint.com/
Interactive Learning Games¶
- Flexbox Froggy: http://flexboxfroggy.com/
- CSS Grid Garden: http://cssgridgarden.com/
Code Standards & Best Practices¶
- Code Guide: https://codeguide.co/
- Clean Code JavaScript: https://github.com/ryanmcdermott/clean-code-javascript
- Clean Code PHP: https://github.com/jupeter/clean-code-php
- BEM Methodology: http://getbem.com/
CSS Resources¶
- Learn CSS Layout: http://learnlayout.com/
- CSS Flexbox Guide: https://medium.com/swlh/css-flexbox-fundamentals-visual-guide-1c467f480dac
- Learn to Code HTML & CSS: https://learn.shayhowe.com/
- SASS Documentation: https://sass-lang.com/
JavaScript Resources¶
- Wes Bos JavaScript Notes: https://wesbos.com/javascript
- ECMAScript History: https://webreference.com/javascript/basics/versions/
PHP Resources¶
- PHP Manual: https://php.net/manual/
- PHP Namespaces: https://php.net/manual/en/language.namespaces.php
- PHP Language Reference: https://php.net/manual/en/langref.php
Learning Structure Summary¶
Developer Onboarding Program
│
├── Programming Languages
│ ├── HTML & CSS (+ Quiz)
│ ├── JavaScript (+ Quiz)
│ └── PHP & MySQL (+ Quiz)
│
├── Operating System Basics
│ ├── Command-Line Interface
│ ├── Process Management
│ ├── Inter-Process Communication
│ └── Threads
│
├── Setting up Development Environment
│ ├── Package Installation
│ ├── Local Server Setup
│ ├── IDE Configuration
│ └── Version Control (Git/SVN)
│
└── Web Basics
├── How the Web Works
├── DNS
├── HTTP/HTTPS
├── Web Servers
├── Rendering Engines
└── Email Systems
⏱️ Estimated Time to Complete¶
- Programming Languages: 8-10 hours
- HTML & CSS: 3-4 hours
- JavaScript: 3-4 hours
-
PHP & MySQL: 2-3 hours
-
Operating System Basics: 6-8 hours
-
Development Environment: 4-6 hours
-
Web Basics: 8-10 hours
Total Estimated Time: 26-34 hours of focused learning
Note: This doesn't include practice time, projects, and hands-on exercises, which can double or triple the time investment.
Learning Objectives¶
By completing this onboarding program, you will:
Knowledge¶
- Understand fundamental web technologies
- Know programming language syntax and best practices
- Comprehend how operating systems work
- Grasp web protocols and communication
Skills¶
- Write clean, maintainable code
- Set up and configure development environments
- Use command-line tools effectively
- Debug code and troubleshoot issues
- Build responsive, accessible websites
- Create database-driven applications
Competencies¶
- Problem-solving and logical thinking
- Code review and quality assurance
- Version control and collaboration
- Security awareness
- Performance optimization
Support & Community¶
Getting Help¶
- Review the course materials thoroughly
- Complete all exercises and quizzes
- Consult external resources linked in the course
- Join web development communities
- Ask your mentor or team lead
Notes for Instructors/Mentors¶
Using This Course for Onboarding¶
- Follow the structured path in ONBOARDING-GUIDE.md
- Use PROGRESS-CHECKLIST.md to track progress
- Schedule regular check-ins with mentees
- Encourage hands-on practice and projects
- Provide constructive code review feedback
Customization¶
- Adapt the timeline based on individual needs
- Add company-specific tools and practices
- Include internal projects and case studies
- Supplement with team-specific knowledge
Additional Resources¶
Complementary Courses¶
After completing Engineering Basics, consider: - WordPress development courses - Advanced JavaScript frameworks - Database design and optimization - DevOps and deployment - Web security deep dive
Next Level Learning¶
- Build more complex projects
- Contribute to open source
- Learn testing and CI/CD
- Explore cloud platforms
- Study system architecture
Ready to learn? Start with the ONBOARDING-GUIDE.md!
This reference guide is maintained internally for weDevs developer onboarding.