Start learning with our library of video tutorials taught by experts. Get started
Gain a deeper understanding of how computer programs store and manipulate data internally.
A software quality engineer discusses how to get started in quality assurance (QA), how QA fits in at companies small and large, and how it has changed since the rise of agile workflows.
Identifies seven object-oriented design patterns (including the singleton, observer, decorator, and factory patterns) that make your development process faster and easier.
Make your programs faster and more responsive by understanding how to create efficient, optimized, well-running code in any programming language.
Learn how to incorporate different kind of software testing into your development cycle and start testing, recording, and resolving defects.
Create more reliable, maintainable software by using test-driven development.
Take existing code and make it better—more readable, efficient, understandable, and updateable—with refactoring.
Discover how a database can benefit both you and your architecture, whatever the programming language, operating system, or application type you use.
Reviews the history of version control and demonstrates its fundamental concepts: check-in/checkout, forking, merging, commits, and distribution.
Introduces object-oriented terms like abstraction and inheritance and shows how to define requirements and use cases and create a conceptual model of your application.