Official Sample for Part 2 of Podcast
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Being The Worst - Expedition 2

This repository contains the sample code that is associated with the Being The Worst podcast episodes that cover the show's second expedition. The start of the second expedition is Episode 19 - The Hermit: An Unexpected Journeyman. Here is a list of things that we may try to cover in expedition 2.

The sample source code in this repository is our attempt to implement a productivity management system that is inspired by "Getting Things Done (R)" by David Allen. We will use DDD and Aggregates with Event Sourcing as our primary implementation approach (as described in the podcast episodes).

Directory Structure of this Repository

  • Build NOTE! - The "Gtd Mobile" solution folder contains projects that have NuGet package references. NuGet 2.7+ now has automatic package restore on build. We rely on this feature and thus did NOT commit the packages to git. There is currently a bug in Nuget though that prevents automatic package restore if a project is under a solution folder. Until that is fixed, simply right-click on the Solution-->Manage NuGet Packages for the Solution and click "Restore" in the message window that pops up that tells you some packages are missing. Rebuild the solution and the Windows Phone 8 project (Gtd.Client.WindowsPhone) should build. (Note that the Windows Phone 8 SDK is a free download but it requires Windows 8 64-bit because of the use of Hyper-V to deliver the phone emulators. If you can't load this SDK, the Windows Phone project will be unavailable in VS, but the rest of the code and the WinForms client (Gtd.Client) should continue to work as expected.)

  • "" any files/sub-directories in the repo's root directory (btw-gtd) (other than the git, license, and readme files and the \btw directory) should be DIRECLTY related to the files one would use to implement the solution in a production environment.

  • \btw and all of its sub-directories are Being The Worst housekeeping and general episode files

What is Being The Worst?

"Being The Worst" is a community for those that enjoy continuous learning and embracing humble software craftsmanship. Our podcast is one format that we use to share information and interact with the community.

You can freely subscribe to the Being The Worst podcast via our RSS feed or iTunes.

What can I learn and where do I start?

Learning Expeditions 1 & 2 explore Domain-driven design (DDD), Event Sourcing (ES), Command Query Responsibility Segregation (CQRS), & cross-cloud software delivery.

If you are new to Being The Worst, you can start with Expedition 1 (podcast episodes 1-18). Kerry and Rinat introduce the show and describe the plan for the road ahead in Episode 1 – The Worst Welcome. You can also follow us on twitter @beingtheworst.

Best regards,

Kerry and Rinat