Recommended learning resources

about

Below you will find a list of books and videos that i recommend reading / watching.
This list is made from the books that I’ve already read, i’m currently reading, or that i plan on reading in the near future.

Con videos

  1. CPPCon
  2. MeetingCPP
  3. C++Now (BoostCon)
  4. QT World Summit
  5. ACCU Conference
  6. Code::dive
  7. CPPEurope
  8. C++ UserGroup
  9. Italian C++ community
  10. Pacific++
  11. emBO++
  12. Core C++

Technology videos

  1. Samsung developer conference
  2. Devtalks

TOP 10 books to recommend

  1. THINK LIKE A PROGRAMMER: An Introduction to Creative Problem Solving
  2. Refactoring (by Kent Beck and Martin Fowler)
  3. Refactoring to Patterns
  4. Clean Code: A Handbook of Agile Software Craftsmanship
  5. Clean Architecture: A Craftsman’s Guide to Software Structure and Design
  6. Introduction to Algorithms, Third Edition
  7. Cracking the Coding Interview: 189 Programming Questions and Solutions
  8. Design Patterns: Elements of Reusable Object-Oriented Software + POSA books
  9. Operating System Concepts, 10th Edition
  10. C++ Coding Standards – 101 Rules Guidelines and Best Practices

C++

  • BOOKS

    • A Tour of C++ (by Bjarne Stroustrup)
    • Effective Modern C++ (by Scott Meyers)
    • Modern C++ Design – Generic Programming and Design Patterns Applied (by A. Alexandrescu)
    • C++11 for Programmers, Second Edition (by Paul J. Deitel)
    • Exploring C++ 11, Second Edition (by Ray Lischner)
    • Optimized C++ (by Kurt Guntheroth)
    • C++ 14 Quick Syntax Reference, Second Edition (by Mikael Olsson)
  • Videos

    • Modern C++ Design Patterns (by Julian Templeman)
    • Advanced C++ Programming (by Mike McMillan)
    • C++ Memory Management (by Brook Monroe)
    • Introduction to C++ Concurrency LiveLessons (by Bartosz Milewski)
    • LARGE-SCALE C++ LIVELESSONS—WORKSHOP: APPLIED HIERARCHICAL REUSE USING BLOOMBERG’S FOUNDATION LIBRARIES (by John Lakos)

Refactoring / code improvement

  • Books

    • Refactoring (by Kent Beck and Martin Fowler)
    • C++ Coding Standards – 101 Rules Guidelines and Best Practicies (by H. Sutter & A. Alexandrescu)
    • Exceptional C++ – Engineering Puzzles Programing Problems and Solutions (by H.Sutter)
    • More Exceptional C++ (by H.Sutter)
    • C++ Idioms (by J.Coplien)
    • Effective C++ Third Edition 55 Specific Ways to improve your Programs and Designs (by S. Meyers)
    • C++ Gotchas – Avoiding Common Problems in Coding and Design (by S.C. Dewhurst)
    • THINK LIKE A PROGRAMMER: An Introduction to Creative Problem Solving (by V. Anton Spraul)
    • Refactoring to Patterns (by Joshua Kerievsky)

Design patterns / Architectural design patterns

  • BOOKS

    • Distributed Systems, 2nd Edition (by Sukumar Ghosh)
    • Pattern-Oriented Software Architecture (all 5 volumes!)
    • Patterns for Parallel Software Design (by Jorge Luis Ortega-Arjona)
  • VIDEOS

    • Software Architecture Patterns (by Mark Richards)
    • Design Patterns in the Real World, an Analysis-Based Approach (by Allen Holub)

Concurrency

  • BOOKS

    • C++ Concurrency in Action: Practical Multithreading (by Anthony A. Williams)
  • VIDEOS

    • Concurrent and Parallel Programming Concepts (by Martin Kalin)

Linux

  • BOOKS

    • Linux with Operating System Concepts (by Richard Fox)
    • Operating System Concepts, 10th Edition (by Abraham Silberschatz, Greg Gagne, Peter B. Galvin)
    • Linux System Programming, 2nd Edition (by Robert Love)

Online resources