Marvin basically has 4 different dates you can use in your task management:
Due dates get applied to tasks and projects when they have a strict deadline.
This means a given task or project has to be completed by a certain due date (deadline), but of course you want to do the actual work before this due date, not on the day of (which is where do dates come in!).
Taxes have to be filed by a certain date
The school assignment is due on a specific day
The project at work has to be finished by a deadline
How to add
Due dates are added via the edit (cog) button on a task/project or with the shortcut "due":
"Project due 2d"
"File taxes 28.11.2018"
"Assignment X 10/02/2018"
Do dates are not that easy to find in other apps, but they make a lot of sense.
A do date means the day on which you intend to "do" the task.
Think of it like an appointment in your calendar but with an optional time (you can specify an exact time, but don't have to).
"Call mom on Birthday +2.11.2018"
"First step of tax filing +11/20/2018"
"Ask boss about new project +Monday"
How to add
Do dates get applied through scheduling. Clicking the little calendar icon on the right of a task let's you schedule your task into a day, giving it a "do date".
You can also use the shortcut "+" to assign do dates.
Projects currently can't have do dates. This would mean you want to do the entire project on a specific day. We will likely add this ability sometime in the future.
If a task or project has a start date it means that you don't want to start working on this until a specific date.
In Marvin, the idea is that everything that is in your Master List is something that is available for you to do by default.
Start dates come into play in three different ways:
You can set explicit start dates for tasks and projects with the start date strategy.
The items will be hidden in the backburner until the start date, when they get moved to the Master List.
If you set up a recurring project to repeat every year and have the repeat date set to January 1st. you are basically giving this project a start date of January 1st as this project will get created on that day (show up in the Master List) so it becomes available to do on that day.
You can add an automatic due date to it (e.g. 30 days after creation) or automatically schedule the first task of this project (giving the task a do date) if you are using a day planning workflow.
Planning ahead strategy
If you plan projects/tasks for specific weeks and months (using the "Planning ahead" strategy) you are giving those items a start date (and end date) essentially.
So if you plan to do a project in January (using the "plan" button) it means you want to start working on this project in January and have it completed by the end of January. Additionally, you can add a hard deadline to the project with a due date (if there is an external deadline).
End dates are basically artificial deadlines. It's the day on which you want to have completed a task/project, but there is no external hard deadline.
It's important to not use due dates for artificial deadlines or you won't know when there is something that is actually urgent and you get desensitized to the due date alerts.
You can either directly assign an end date to a task or project with the end date strategy or use the planning ahead strategy to assign an item to a week or month, which will also give that item an end date (the end of the assigned week/month).