We may earn an affiliate commission when you visit our partners.
CodeMash

CodeMash 2020 | Test-driven Development: Save Your Time, Save Your Sanity, Write Great Code Fast | Paul Roub

Read more

CodeMash 2020 | Test-driven Development: Save Your Time, Save Your Sanity, Write Great Code Fast | Paul Roub

Both new and seasoned developers, especially solo practitioners, can have a lot of misconceptions about test-driven development (TDD). The primary misconceptions are: "It's extra work, it's extra code, I can't ship tests, why would I test something simple and obvious." Magic happens when the light bulb switches to "on." In this session, Paul Roub will walk through the design of a simple-enough class, showing along the way how initial assumptions are often wrong, how to avoid making those assumptions too early, how to throw away less code, and how to feel comfortable and safe when you do throw away code.

Enroll now

What's inside

Syllabus

Test-driven Development: Save Your Time, Save Your Sanity, Write Great Code Fast

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Teaches the fundamentals of test-driven development (TDD) for novice and experienced software developers
Taught by an industry expert with years of experience in TDD
Develops TDD techniques that can save time and improve code quality
Examines misconceptions about TDD and provides practical solutions
Covers the design of simple-enough classes to demonstrate TDD principles

Save this course

Save Test-driven Development: CodeMash to your list so you can find it easily later:
Save

Activities

Coming soon We're preparing activities for Test-driven Development: CodeMash. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Test-driven Development: CodeMash will develop knowledge and skills that may be useful to these careers:
Software Development Manager
A Software Development Manager gets to work on projects like Test-driven Development: Save Your Time, Save Your Sanity, Write Great Code Fast. In this role, you might lead teams of engineers working on software design, development, testing and deployment. The best Software Development Managers don't just supervise and delegate, but are also able to write and contribute code to the projects they manage. This course teaches the fundamentals of test-driven development. This will help build your capacity to evaluate code, debug code, and improve team efficiency.
Software Architect
Software Architects are responsible for designing, building, and maintaining the software systems that power our world. This role requires a deep understanding of software development principles and practices, as well as the ability to think strategically about the long-term implications of software design decisions. This course introduces the fundamentals of test-driven development. This forms the basis of the iterative design, implementation, and testing cycles that a Software Architect typically oversees.
Software Engineer
Software Engineers are responsible for designing, developing, testing, and deploying software applications. They work on a wide range of projects, from small personal projects to large enterprise systems. This course introduces the fundamentals of test-driven development. This includes testing and debugging skills, which Software Engineers use every day. It also covers more advanced topics, such as refactoring and TDD best practices.
Computer Programmer
Computer Programmers write and test code that powers software applications. They work on a wide range of projects, from small personal projects to large enterprise systems. This course introduces the fundamentals of test-driven development. This makes programmers more efficient at writing code, debugging code, and refactoring code. It also covers more advanced topics, such as TDD best practices.
Web Developer
Web Developers are responsible for designing, developing, and maintaining websites and web applications. They work on a wide range of projects, from small personal websites to large enterprise web applications. This course introduces the fundamentals of test-driven development. In web development, you need to make sure that your application will behave as expected in every situation. Test-driven development provides a way to efficiently write tests that cover the functionality of your application.
Quality Assurance Analyst
Quality Assurance Analysts are responsible for testing software applications to ensure that they meet quality standards. They work on a wide range of projects, from small personal projects to large enterprise systems. This course introduces the fundamentals of test-driven development. This is a valuable skill for Quality Assurance Analysts because it helps them to write more effective test cases and to identify potential defects in software applications.
Database Administrator
Database Administrators are responsible for designing, implementing, and maintaining database systems. They work on a wide range of projects, from small personal databases to large enterprise databases. This course may be useful for Database Administrators because it introduces the fundamentals of test-driven development. This can help them to write more effective test cases and to identify potential defects in database systems.
Systems Analyst
Systems Analysts are responsible for analyzing, designing, and implementing software systems. They work on a wide range of projects, from small personal projects to large enterprise systems. This course may be useful for Systems Analysts because it introduces the fundamentals of test-driven development. This can help them to write more effective test cases and to identify potential defects in software systems.
Technical Writer
Technical Writers are responsible for writing documentation for software applications. They work on a wide range of projects, from small personal projects to large enterprise systems. This course may be useful for Technical Writers because it introduces the fundamentals of test-driven development. This can help them to better understand the software development process and to write more effective documentation.
IT Manager
IT Managers are responsible for planning, implementing, and managing information technology systems. They work on a wide range of projects, from small personal projects to large enterprise systems. This course may be useful for IT Managers because it introduces the fundamentals of test-driven development. This can help them to better understand the software development process and to make more informed decisions about IT investments.
Computer Scientist
Computer Scientists are responsible for developing new theories and techniques for solving problems using computers. They work on a wide range of projects, from small personal projects to large enterprise systems. This course may be useful for Computer Scientists because it introduces the fundamentals of test-driven development. This can help them to better understand the software development process and to develop more effective algorithms and data structures.
Project Manager
Project Managers are responsible for planning, executing, and closing projects. They work on a wide range of projects, from small personal projects to large enterprise projects. This course may be useful for Project Managers because it introduces the fundamentals of test-driven development. This can help them to better understand the software development process and to make more informed decisions about project plans and budgets.
Business Analyst
Business Analysts are responsible for analyzing business processes and identifying opportunities for improvement. They work on a wide range of projects, from small personal projects to large enterprise projects. This course may be useful for Business Analysts because it introduces the fundamentals of test-driven development. This can help them to better understand the software development process and to identify opportunities for improvement in software applications.
Information Security Analyst
Information Security Analysts are responsible for protecting computer systems and networks from unauthorized access, use, disclosure, disruption, modification, or destruction. They work on a wide range of projects, from small personal projects to large enterprise projects. This course may be useful for Information Security Analysts because it introduces the fundamentals of test-driven development. This can help them to better understand the software development process and to identify potential security vulnerabilities in software applications.
Data Scientist
Data Scientists are responsible for extracting knowledge from data. They work on a wide range of projects, from small personal projects to large enterprise projects. This course may be useful for Data Scientists because it introduces the fundamentals of test-driven development. This can help them to better understand the software development process and to develop more effective data analysis algorithms and models.

Reading list

We haven't picked any books for this reading list yet.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser