4 Book Changelog
Book Changelog
This changelog documents the evolution of the Internet of Things Class textbook, including major milestones, content updates, and technical improvements.
4.1 Version 1.0.0 - January 2025 (Current Release)
Status: β Production Ready - Digital HTML Edition
4.1.1 π Major Milestone: Complete LaTeX to Quarto Migration
This release represents the complete transformation of the original LaTeX-based IoT textbook into a modern, interactive Quarto book with significant content enhancements.
4.1.2 π Content Statistics
- Total Lines: 256,310 (enhanced 6.9x from original 36,956 LaTeX lines)
- Chapters: 114 sections organized into 8 major parts
- Images: 903 references (896 unique images)
- Protocols Covered: 30+ IoT protocols and standards
- Code Examples: Hundreds of executable Python snippets
4.1.3 β¨ New Features
4.1.3.1 Interactive Digital Edition
- β Executable Python Code - All code examples can be run directly
- β Full-Text Search - Find any topic instantly across all chapters
- β Cross-Referenced Navigation - Clickable links between related concepts
- β Responsive Design - Works on desktop, tablet, and mobile
- β Syntax Highlighting - Color-coded code in multiple languages
- β Margin Notes - Citations and references in page margins
- β Reader Mode - Distraction-free reading experience
- β Back-to-Top Navigation - Easy page navigation
4.1.3.2 GitHub Integration
- β Edit This Page - Direct links to GitHub source
- β Report Issues - Built-in feedback mechanism
- β Version Control - All changes tracked in Git
- β Automated Deployment - GitHub Actions CI/CD pipeline
4.1.3.3 Content Enhancements
- β Learning Objectives - Clear goals for each chapter
- β Callout Boxes - Notes, warnings, tips highlighted
- β Modern Examples - Updated for 2025 technologies
- β Expanded Explanations - Deeper coverage of complex topics
- β Structured Tables - Comparison tables and specifications
- β Professional Diagrams - 900+ high-quality illustrations
4.1.4 π Content Coverage
4.1.4.1 Part 1: Applications and Use Cases (5 Chapters)
- IoT overview and fundamentals
- Application domains across industries
- Real-world use cases
- Business models and monetization strategies
- Interactive Python examples for cost analysis
4.1.4.2 Part 2: Architecture (17 Chapters)
- Architectural enablers and components
- Wireless sensor networks (WSN)
- Multi-hop ad-hoc networks
- Cloud, fog, and edge computing
- UAV networks and M2M communication
- Software-defined networking (SDN)
- Sensing-as-a-Service models
4.1.4.3 Part 3: Sensing and Actuation (7 Chapters)
- Sensors and actuators overview
- Mobile phones as sensors
- Electricity and electronics fundamentals
- Analog and digital electronics
- Practical circuit examples
4.1.4.4 Part 4: Communication Networks (34 Chapters)
- Networking basics and layered models
- Short-range protocols: Bluetooth, Zigbee, Thread, Z-Wave, NFC
- LPWAN protocols: LoRaWAN, Sigfox, NB-IoT, Weightless
- Application protocols: MQTT, CoAP, AMQP, XMPP
- Network protocols: 6LoWPAN, RPL, IPv6
- Physical layer: IEEE 802.15.4, WiFi, RFID
- Routing algorithms and topologies
- Design implications and trade-offs
4.1.4.5 Part 5: Data Analytics (7 Chapters)
- Big data in IoT context
- Data storage and databases
- Multi-sensor data fusion
- Interoperability and standards
- Edge vs. cloud processing
- Machine learning and inferencing
- Interactive ML code examples
4.1.4.6 Part 6: Privacy and Security (11 Chapters)
- Security and privacy overview
- Cyber-security methods
- Threats, attacks, and vulnerabilities
- Threat modeling and mitigation
- Privacy-by-design principles
- Encryption and safeguards
- Device and network security
- Mobile privacy
- Secure software practices
4.1.4.7 Part 7: Human Factors and Interaction (8 Chapters)
- User experience design
- Design models for IoT
- Connected device interaction
- Location awareness
- Interface and interaction design
- Understanding people and context
4.1.4.8 Part 8: Design Strategies and Prototyping (13 Chapters)
- Hardware prototyping
- Software prototyping
- Simulation tools
- Programming paradigms
- Network design and simulation
- Traffic analysis
- Software platforms and frameworks
- Specialized prototyping kits
- Energy-aware design
- Context-aware energy management
- Hardware/software optimization
- Reading spec sheets
- Design thinking and planning
4.1.5 π§ Technical Infrastructure
4.1.5.1 Publishing Platform
- Framework: Quarto 1.8.24
- Pandoc: 3.6.3
- Python: 3.11 (for code execution)
- Format: HTML (primary), PDF (planned)
- Output Directory: docs/
- Repository: https://github.com/ngcharithperera/iotclass
4.1.5.2 Deployment
- Platform: GitHub Pages
- URL: https://ngcharithperera.github.io/iotclass/
- CI/CD: GitHub Actions
- Automatic: Builds on every push to main branch
4.1.5.3 Quality Assurance
- β 100% Content Transfer - All substantial LaTeX content migrated
- β 100% Image Availability - All 903 image references working
- β 100% Link Validity - All 13,696 internal links validated
- β Code Syntax Highlighting - Verified across all examples
- β Cross-Browser Testing - Compatible with modern browsers
- β Mobile Responsive - Tested on multiple device sizes
4.1.6 π Documentation Added
This release includes comprehensive documentation:
- DEPLOYMENT_GUIDE.md - Complete deployment instructions
- QA_SUMMARY_REPORT.md - Quality assurance results
- PDF_BUILD_ISSUE.md - Known limitations and workarounds
- README.md - Repository overview and quick start
4.1.7 β οΈ Known Limitations
4.1.7.1 PDF Build Issue
- Status: Non-Critical
- Issue: Python kernel cleanup error during PDF generation
- Impact: PDF format not currently available
- Workaround: HTML edition provides superior features (interactive code, search)
- Planned: Future resolution via alternative rendering approaches
- Documentation: See PDF_BUILD_ISSUE.md for details
4.1.7.2 Minor Warnings
- ~60 non-critical div warnings in HTML build
- Does not affect rendering or functionality
- No impact on user experience
4.1.8 π― Whatβs Next
4.1.9 π§ Structural Reorganization
- Split large chapters into focused subchapters across Architecture, Communication Networks, Sensing, Data, and Security to improve navigation and readability.
- Updated
_quarto.ymlnavigation to reflect the new structure while preserving existing URLs where possible. - Refreshed Learning Hubs (Quizzes, Videos, Simulations) to point to the new subchapters and correct anchors.
- Ran a repoβwide div/callout sweep; resolved unclosed/stray fencedβdivs introduced during splitting for clean HTML builds.
4.1.9.1 Short-term (Planned for v1.1)
- Resolve PDF build issue
- Add end-of-chapter quizzes
- Include video content where appropriate
- Create instructor resource package
- Add lab assignment templates
4.1.9.2 Medium-term (Future Versions)
- Interactive code execution in browser
- Student progress tracking
- Discussion forum integration
- Multi-language support
- Accessibility improvements (WCAG 2.1 AA)
4.1.9.3 Long-term Vision
- IoT device integration for live demos
- Virtual lab environment
- Auto-grading system for assignments
- Adaptive learning paths
- Community-contributed content
4.2 Pre-Release History
4.2.1 Beta Version - October 2025
- LaTeX to Quarto migration completed
- Image migration (903 images)
- Content enhancement (6.9x expansion)
- Quality assurance testing
- GitHub Actions deployment setup
4.2.2 Alpha Version - September 2025
- Initial Quarto framework setup
- Chapter structure defined
- First content conversions
- Image organization system
4.2.3 Original LaTeX Version - 2020-2024
- Comprehensive LaTeX textbook
- 8 chapters, 123 files
- 36,956 lines of content
- 896 images and diagrams
- Used in multiple university courses
4.3 Version Numbering
This project uses semantic versioning (MAJOR.MINOR.PATCH):
- MAJOR: Significant content restructuring or major feature additions
- MINOR: New chapters, substantial content updates, feature enhancements
- PATCH: Bug fixes, typo corrections, minor content improvements
Current Version: 1.0.0
4.4 How to Stay Updated
4.4.1 For Students and Instructors
The HTML edition is automatically updated with each improvement. Simply refresh your browser to see the latest version. Check this changelog for details on whatβs new.
4.4.2 For Contributors
See the GitHub repository for: - Recent commits: https://github.com/ngcharithperera/iotclass/commits/main - Open issues: https://github.com/ngcharithperera/iotclass/issues - Pull requests: https://github.com/ngcharithperera/iotclass/pulls
4.4.3 Reporting Issues
Found a bug or typo? Have a suggestion?
- GitHub Issues: https://github.com/ngcharithperera/iotclass/issues
- Edit This Page: Use the link at the top of any chapter
- Report Issue: Use the built-in issue reporting link
4.5 License and Usage
For Educational Use: Free to use for teaching and learning
Version History: All versions tracked in Git - View history: git log --oneline - Tag releases: Major versions tagged (e.g., v1.0.0)
4.6 Changelog Maintenance
This changelog is maintained as part of the bookβs front matter and updated with each significant release. For detailed change history, see the Git commit log.
Last Updated: January 2025 Current Version: 1.0.0 Status: Production Ready (HTML Edition)
For the complete version history including all commits, see the GitHub repository.