Bad software will hurt you

Everyone is affected by bad software at some time.
  • There is a fraudulent transaction on your credit card. You have to stop the card and get a new one.
  • Your details are leaked during a data breach. You must change all your passwords.
  • An "update" breaks the system. You lose important work.
  • A virus infects your computer. You lose time while you re-install everything.
Man holding his head in despair with code overlaying him

Dieselgate - The VW scandal

Volkswagen rigged 11 million diesel vehicles with software that would cheat the clean air tests.

11 million vehicles. 11 million vehicle owners. The fraud cost VW $14.7 billion dollars. Shareholders lost their savings. People lost their jobs.

How many people were part of the fraud?
  • Somebody found the problem that emissions were too high.
  • Somebody came up with the idea to cheat the test.
  • Somebody agreed to the idea.
  • Somebody approved the cost of the solution.
  • Somebody designed the software.
  • Somebody wrote the software.
  • Somebody tested that the software worked.

Executives went to jail for their role in the fraud. But not only executives.

James Liang, the engineer who designed the software, was sentenced to 40 months in prison.

A man being handcuffed behind his back

You will have to choose

One day you will be faced with a very difficult decision. You will be asked to do something at work that you don't believe is right.

It might be something big, with serious financial consequences for your company. It might be something small, like agreeing to an unreasonable deadline. Or releasing sub-standard code.

What will you do? What if you make the wrong decision?

This course will teach you to ask the right questions. To consider the consequences. And to find the right answer that is right.

Excuses won't work

  • "It's not my responsibility"

    Wrong! If you are involved in software development, you have a professional responsibility.
    From analyst to tester, from junior to manager, you play a role.
    Know what is expected of you.

  • "I followed orders"

    That didn't work for James Liang at Volkswagen.
    What will you do when you face a difficult ethical choice? What questions should you ask?
    Decide where you stand.

  • "Software always has bugs."

    Was it your best work, or did you just want to get it done quickly?
    Did you follow the standards? How well did you test? Were you honest about your skills?
    Understand the ethics of quality.

We rule the world

"We programmers. We rule the world. We write the rules that make our society work.
Think about it; and think about it carefully. Nothing happens in our society without software. Nothing.
… To protect our society from the power they have unwittingly ceded to us, we should adopt a code of ethics that describes our sworn promise and duty to humbly use our power to serve."

- Robert C. Martin: The Obligation of the Programmer
Electronic devices around a globe of code

Be the best you can be

This course is for everyone involved in software engineering - from analysis to testing to management.
What you learn will set you apart as a true professional.

  • Know why software engineers need a code of ethics.

  • Define your own professional code of conduct.

  • Be the agent for ethical change in your team.

  • Build your reputation for quality.

  • Become the developer you want to be, and the employee every company needs.

What this course covers

  • The need for a code of ethics

    • Why professionals have standards.
    • The power of the programmer.
    • Negligence versus malice.
    • Accountability and common excuses.
    • The ACM/IEEE Software Engineering Code of Ethics, and other standards.
  • The ethics of the public good

    • What is harmful code?
    • User privacy and security.
    • Social media and broader concerns.
    • Software and the law.
    • Whistle blowing.
  • The ethics of the individual

    • Personal responsibility.
    • Integrity and independence.
    • Responsibility to clients.
    • Life-long learning.
  • The ethics of the team

    • Estimates, promises and deadlines.
    • Team work and knowledge sharing.
    • Ethical management.
  • The ethics of quality

    • Technical debt and code improvement.
    • The importance of maintainability.
    • The importance of standards and processes.

Meet your instructor

Jacqui Coosner

I'm a director of Incus Data. I practiced law before moving into the IT world.
We focus exclusively on training programmers. My work involves many things - from running the business, to project management for clients. The most important part of my work is course development and training. And that's what I love most.
I believe in the importance of good teaching. I believe that good coding matters. So I'm excited to help people build solid, professional skills for the future.
Photo of Jacqui Coosner

FAQ

  • Who is this course for?

    This course is for everyone who is part of the software development process.
    We use the IEEE definition of a software engineer. This includes anyone involved in analysis, specification, design, development, certification, maintenance and testing of software. And anyone who teaches those people.

  • Is there a money-back guarantee?

    Yes. We offer a 30-day money back guarantee. We hope you'll love the course, but if you are unhappy with it for any reason, just contact us via email. We'll refund you in full.

  • When does the course start?

    The course is currently in the "pre-enroll" phase. You will receive an email as soon as the course opens. Once it is open, you can start whenever you want.

  • How long will the course take?

    That depends on you. The course is self-paced. If you just read the content without much thought, it will take you between 4 and 5 hours. If you think about, and do the practical work, it will take you between 8 and 10 hours. You can do it in a weekend, or work through a lesson a day.

  • What do I need for the course?

    All you need is access to the internet.
    You can access the course on your computer, laptop, tablet or smart phone. It is available across any and all devices you own.
    You don't need any special software or tools.

  • How long do I have access to the content?

    You have unlimited access to the course for 12 months. This starts from the date you enrol. If you pre-enrol, then it starts from the date the course opens.

  • What if I have questions about the content?

    Feel free to ask your question in the comment section located below each lesson. Or you are welcome to send Jacqui an email through Thinkific.

  • How long do you take to respond to my questions?

    Response time is 48-72 hours, although this may vary depending on how busy Jacqui is. If you don't get a response within 72 hours, feel free to email again.

  • Will I get a certificate when I have completed the course?

    Yes. We will email you a certificate to prove that you have completed the course.