If by "writing by hand" you mean writing PHP code, then the answer is no. The migration module is a migration framework; it provides the tools (API, PHP classes, etc) to migrate data but it doesn't do it for you. Migrate D2D (built off the Migration framework) provides some support with "out of the box" importing (e.g. User Roles, Pics, Taxonomy, etc.), but it doesn't do it all for you.
The key thing to understand is complexity of the problem; content in Drupal can be configured in a myriad of different ways. As such, one module that can handle all the different permutations of sources (e.g. CSV, WordPress site, various DB's, & an old Drupal install), field configurations (e.g. ints, floats, text, custom objects, custom fields, module create fields), & destinations (e.g. custom node types, module-create node types, custom entities, etc.) is a mammoth task for an open-source project.
Instead, the Migration & Migrate D2D maintainers have made the problem more tractable. They've provided some common tools that are likely to be used in any Drupal migration. Filling in the last bit of details (e.g. should a phone field be mapped to an address field or as a text field) is up to you because only you can possible know that information and how it's used.