-
-
Notifications
You must be signed in to change notification settings - Fork 322
/
about.html
119 lines (118 loc) · 9.42 KB
/
about.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
---
layout: page
title : About
description: "About Mark Seemann, Copenhagen, Denmark. Danish programmer, author, speaker, and blogger."
header : About
group: navigation
---
{% include JB/setup %}
<p>
My name is Mark Seemann, and <em>ploeh blog</em> is my professional blog (not that I have a personal blog). Here, I write about programming, software development, and architecture.
</p>
<p>
I'm a self-employed programmer and software architect living in Copenhagen, Denmark. I enjoy reading, playing the guitar, good wine, and gourmet food.
</p>
<h2>Publications</h2>
<p>
Apart from the hundreds of articles on this blog, I also write and produce material via other professional outlets.
</p>
<h3 id="print">
Print <a href="#print" title="permalink">#</a>
</h3>
<p>
<ul>
<li><a href="/code-that-fits-in-your-head">Code That Fits in Your Head</a></li>
<li><a href="/dippp">Dependency Injection Principles, Practices, and Patterns</a></li>
<li><a href="http://amzn.to/12p90MG">Dependency Injection in .NET</a></li>
<li><a href="http://www.ndc2011.no/userfiles/NDC_Magazine_2011.pdf">Deterministic unit tests with non-deterministic input</a></li>
<li><a href="http://msdn.microsoft.com/en-us/magazine/gg983487.aspx">Windows Azure Development: CQRS on Windows Azure</a></li>
<li><a href="https://docs.microsoft.com/archive/msdn-magazine/2007/september/unit-testing-exploring-the-continuum-of-test-doubles">Unit Testing: Exploring The Continuum Of Test Doubles</a></li>
<li><a href="https://docs.microsoft.com/archive/msdn-magazine/2006/july/using-custom-csharp-application-blocks-for-enterprise-library">Patterns & Practices: Speed Development With Custom Application Blocks For Enterprise Library</a></li>
<li>Easy UI Testing: Isolate Your UI Code Before It Invades Your Business Layer, <a href="http://download.microsoft.com/download/3/a/7/3a7fa450-1f33-41f7-9e6d-3aa95b5a6aea/MSDNMagazineAugust2005en-us.chm">MSDN Magazine, August 2005</a></li>
<li><a href="https://docs.microsoft.com/archive/msdn-magazine/2004/october/unit-testing-mock-objects-to-the-rescue-test-your-net-code-with-nmock">Unit Testing: Mock Objects to the Rescue! Test Your .NET Code with NMock</a></li>
</ul>
</p>
<h3 id="video">
Video <a href="#video" title="permalink">#</a>
</h3>
<p>
<ul>
<li><a href="https://cleancoders.com/episode/humane-code-real-episode-5/show">Preserved in translation</a></li>
<li><a href="https://cleancoders.com/episode/humane-code-real-episode-4/show">Church Visitor</a></li>
<li><a href="https://cleancoders.com/episode/humane-code-real-episode-3/show">Much Ado About Nothing</a></li>
<li><a href="https://cleancoders.com/episode/humane-code-real-episode-2/show">Composite as Universal Abstraction</a></li>
<li><a href="https://cleancoders.com/episode/humane-code-real-episode-1/show">Humane Code</a></li>
<li><a href="{{ site.production_url }}/type-driven-development-with-fsharp">Type-Driven Development with F#</a></li>
<li><a href="{{ site.production_url }}/tdd-with-fsharp">Test-Driven Development with F#</a></li>
<li><a href="{{ site.production_url }}/property-based-testing-intro">Introduction to Property-based Testing with F#</a></li>
<li><a href="{{ site.production_url }}/unit-testing-with-fsharp">Unit Testing with F#</a></li>
<li><a href="{{ site.production_url }}/encapsulation-and-solid">Encapsulation and SOLID</a></li>
<li><a href="{{ site.production_url }}/functional-architecture-with-fsharp">A Functional Architecture with F#</a></li>
<li><a href="{{ site.production_url }}/advanced-unit-testing">Advanced Unit Testing</a></li>
<li><a href="{{ site.production_url }}/outside-in-tdd">Outside-In Test-Driven Development</a></li>
</ul>
</p>
<h3 id="audio">
Audio <a href="#audio" title="permalink">#</a>
</h3>
<p>
During the years, I've been the guest on various podcasts:
<ul>
<li><a href="https://podcast.oddly-influenced.dev/episodes/mark-seeman-on-blindsight-and-thinking-fast-and-slow">Oddly Influenced <em>Mark Seemann on /Blindsight/ and /Thinking, Fast and Slow/</em></a></li>
<li><a href="https://techleadjournal.dev/episodes/89/">Tech Lead Journal <em>Code That Fits in Your Head - Mark Seemann</em></a></li>
<li><a href="http://azuredevopspodcast.clear-measure.com/mark-seemann-code-that-fits-in-your-head-episode-189">Azure DevOps Podcast <em>Mark Seemann: Code That Fits In Your Head</em></a></li>
<li><a href="https://www.case-podcast.org/50-mark-seemann-on-heuristics-for-software-engineering">Conversations about Software Engineering <em>Mark Seemann on heuristics for software engineering</em></a></li>
<li><a href="https://dotnetrocks.com/?show=1759">.NET Rocks! <em>Code that Fits in Your Head with Mark Seemann</em></a></li>
<li><a href="https://nodogmapodcast.bryanhogan.net/156-mark-seemann-code-that-fits-in-your-head">No dogma podcast <em>Mark Seemann, Code That Fits in Your Head</em></a></li>
<li><a href="https://salesforceway.com/podcast/functional-programming-and-haskell">SalesforceWay <em>Functional Programming and Haskell</em></a></li>
<li><a href="https://salesforceway.com/podcast/solid-principles">SalesforceWay <em>SOLID Principles</em></a></li>
<li><a href="https://dotnetrocks.com/?show=1685">.NET Rocks! <em>There is a Silver Bullet with Mark Seemann</em></a></li>
<li><a href="https://www.dotnetrocks.com/?show=1542">.NET Rocks! <em>Constraints Liberate with Mark Seemann</em></a></li>
<li><a href="http://nodogmapodcast.bryanhogan.net/85-mark-seemann-dependency-rejection-part-2">No dogma podcast <em>Mark Seemann, Dependency Rejection, Part 2</em></a></li>
<li><a href="http://nodogmapodcast.bryanhogan.net/84-mark-seemann-dependency-rejection-part-1">No dogma podcast <em>Mark Seemann, Dependency Rejection, Part 1</em></a></li>
<li><a href="http://www.dotnetrocks.com/?show=1418">.NET Rocks! <em>Conway's Law with Mark Seemann</em></a></li>
<li><a href="http://developeronfire.com/episode-183-mark-seemann-value-and-quality">Developer On Fire <em>Mark Seemann - Value and Quality</em></a></li>
<li><a href="http://nodogmapodcast.bryanhogan.net/54-mark-seemann-functional-programming-and-f">No dogma podcast <em>Mark Seemann, Functional Programming and F#</em></a></li>
<li><a href="https://www.functionalgeekery.com/episode-57-mark-seemann">Functional Geekery <em>Mark Seemann</em></a></li>
<li><a href="http://www.dotnetrocks.com/?show=1304">.NET Rocks! <em>Learning Haskell with Mark Seemann</em></a></li>
<li><a href="http://www.dotnetrocks.com/?show=1206">.NET Rocks! <em>Property-Based Testing using F# with Mark Seemann</em></a></li>
<li><a href="http://developeronfire.com/episode-024-mark-seemann-abstract-value">Developer On Fire <em>Mark Seemann - Abstract Value</em></a></li>
<li><a href="http://www.dotnetrocks.com/?show=1170">.NET Rocks! <em>Less is More in Languages with Mark Seemann</em></a></li>
<li><a href="http://www.dotnetrocks.com/?show=1001">.NET Rocks! <em>Getting into the Zone with Mark Seemann</em></a></li>
<li><a href="http://herdingcode.com/herding-code-165-mark-seemann-on-autofixture-and-unit-testing">Herding Code <em>Mark Seemann on Autofixture and Unit Testing</em></a></li>
<li><a href="http://www.dotnetrocks.com/?show=797">.NET Rocks! <em>Mark Seemann Talks Web API and REST</em></a></li>
</ul>
</p>
<h3 id="contact">
Contact me <a href="#contact" title="permalink">#</a>
</h3>
<p>
There's lots of ways to contact me, and you are welcome to do so, e.g. if you want to hire me, want me to speak at a conference or user group meeting, or simply if you have a question you think I should answer here on the blog. In case of public speaking, you can also review <a href="/schedule">my public speaking schedule</a>.
</p>
<p>
One way to contact me is via email. Here's a little test of your sentience: take each segment of the following email address, and reverse it (e.g. [email protected] would become [email protected]): [email protected].
</p>
<p>
If you learned something from this blog, or otherwise derived value from it, please consider <a href="/support">donating or otherwise supporting the blog</a>. No amount is too small - I write this blog for free, so I appreciate any donation.
</p>
<p>
<a href="http://stackoverflow.com/users/126014/mark-seemann">
<img src="http://stackoverflow.com/users/flair/126014.png?theme=clean" width="208" height="58" alt="profile for Mark Seemann at Stack Overflow, Q&A for professional and enthusiast programmers" title="profile for Mark Seemann at Stack Overflow, Q&A for professional and enthusiast programmers">
</a>
</p>
<p>
<a href="https://twitter.com/{{ site.author.twitter }}" class="twitter-follow-button" data-show-count="false">Follow @{{ site.author.twitter }}</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</p>
<p>
<a href="http://www.linkedin.com/in/ploeh" ><img src="http://www.linkedin.com/img/webpromo/btn_profile_bluetxt_80x15.gif" width="80" height="15" border="0" alt="View Mark Seemann's profile on LinkedIn"></a>
</p>
<p>
<a href="https://github.com/ploeh">My profile on GitHub</a>
</p>
<p>
<a href="http://www.last.fm/user/ploeh">My profile on Last.fm</a>
</p>
<p>
<a href="https://www.goodreads.com/author/show/4383188.Mark_Seemann">My profile on Goodreads</a>
</p>