Slide 1

Slide 1 text

THE BARE MINIMUM YOU, AS A DEVELOPER, SHOULD BE DOING WHEN YOU WANT ME, A USER, TO BE ABLE TO RECEIVE EMAIL FROM YOUR WEBSITE. Thursday, 21 February 13

Slide 2

Slide 2 text

@GAVINMONTAGUE Thursday, 21 February 13

Slide 3

Slide 3 text

LEAD DEVELOPER @ Thursday, 21 February 13

Slide 4

Slide 4 text

#HUMBLEBRAG IMMINENT Thursday, 21 February 13

Slide 5

Slide 5 text

2009 Thursday, 21 February 13

Slide 6

Slide 6 text

2009 2009: 20K EMAILS PER MONTH Thursday, 21 February 13

Slide 7

Slide 7 text

2009 2009: ~90% DELIVERY RATE Thursday, 21 February 13

Slide 8

Slide 8 text

2009 2009: (PROBABLY) Thursday, 21 February 13

Slide 9

Slide 9 text

2012 Thursday, 21 February 13

Slide 10

Slide 10 text

2012 2012: 300K EMAILS PER DAY Thursday, 21 February 13

Slide 11

Slide 11 text

2012 2012: >99% DELIVERY RATE Thursday, 21 February 13

Slide 12

Slide 12 text

2012 2012: (DEFINITELY) Thursday, 21 February 13

Slide 13

Slide 13 text

WE SEND QUITE A LOT OF EMAIL Thursday, 21 February 13

Slide 14

Slide 14 text

Disclaimer: this talk contains no stylesheet or frontend stuff. (Go look at the Email Standards Project for that) Thursday, 21 February 13

Slide 15

Slide 15 text

Disclaimer: this talk contains no stylesheet or frontend stuff. (Go look at the Email Standards Project for that) Thursday, 21 February 13

Slide 16

Slide 16 text

Disclaimer: this talk contains no stylesheet or frontend stuff. (Go look at the Email Standards Project for that) Thursday, 21 February 13

Slide 17

Slide 17 text

TIP #1 FOR SENDING EMAIL FROM YOUR OWN SERVERS Thursday, 21 February 13

Slide 18

Slide 18 text

DON’T. Thursday, 21 February 13

Slide 19

Slide 19 text

LET SOMEONE DO IT FOR YOU Thursday, 21 February 13

Slide 20

Slide 20 text

LET SOMEONE DO IT FOR YOU Thursday, 21 February 13

Slide 21

Slide 21 text

D.I.Y. EMAIL SERVER Thursday, 21 February 13

Slide 22

Slide 22 text

D.I.Y. EMAIL SERVER Thursday, 21 February 13

Slide 23

Slide 23 text

D.I.Y. EMAIL SERVER Thursday, 21 February 13

Slide 24

Slide 24 text

D.I.Y. EMAIL SERVER Thursday, 21 February 13

Slide 25

Slide 25 text

D.I.Y. EMAIL SERVER Thursday, 21 February 13

Slide 26

Slide 26 text

DONE, RIGHT? Thursday, 21 February 13

Slide 27

Slide 27 text

NOPE. Thursday, 21 February 13

Slide 28

Slide 28 text

IF YOU’RE USING THE “STANDARD” TOOLS A LANGUAGE PROVIDES AND NOTHING ELSE FOR SENDING EMAIL, YOU’RE PROBABLY DOING IT WRONG. Thursday, 21 February 13

Slide 29

Slide 29 text

Thursday, 21 February 13

Slide 30

Slide 30 text

PREFLIGHT CHECKLIST Thursday, 21 February 13

Slide 31

Slide 31 text

PREFLIGHT CHECKLIST •Are you on a shared IP address? Thursday, 21 February 13

Slide 32

Slide 32 text

PREFLIGHT CHECKLIST •Are you on a shared IP address? •Check your IP address for previous abuse Thursday, 21 February 13

Slide 33

Slide 33 text

PREFLIGHT CHECKLIST •Are you on a shared IP address? •Check your IP address for previous abuse •Set up postmaster@...., abuse@... Thursday, 21 February 13

Slide 34

Slide 34 text

PREFLIGHT CHECKLIST •Are you on a shared IP address? •Check your IP address for previous abuse •Set up postmaster@...., abuse@... •Make sure your DNS registration details are up to date Thursday, 21 February 13

Slide 35

Slide 35 text

Edit > View Source Thursday, 21 February 13

Slide 36

Slide 36 text

Edit > View Source Thursday, 21 February 13

Slide 37

Slide 37 text

SETTING UP RDNS Thursday, 21 February 13

Slide 38

Slide 38 text

SETTING UP RDNS Received: from mx4.nyi.mail.srv.osa ([10.202.2.203]) by compute4.internal (LMTPProxy); Tue, 19 Feb 201 Received: from nestor.itison.com (nestor.itison.com [31.222.170.118]) by mx4.messagingengine.com (Postfix for ; Tue, 19 Feb 2013 03:24:38 -0500 (EST) Received: from localhost.localdomain (localhost [127.0.0.1]) Thursday, 21 February 13

Slide 39

Slide 39 text

SETTING UP RDNS Received: from mx4.nyi.mail.srv.osa ([10.202.2.203]) by compute4.internal (LMTPProxy); Tue, 19 Feb 201 Received: from nestor.itison.com (nestor.itison.com [31.222.170.118]) by mx4.messagingengine.com (Postfix for ; Tue, 19 Feb 2013 03:24:38 -0500 (EST) Received: from localhost.localdomain (localhost [127.0.0.1]) Thursday, 21 February 13

Slide 40

Slide 40 text

SENDER POLICY FRAMEWORK (SPF) Thursday, 21 February 13

Slide 41

Slide 41 text

SENDER POLICY FRAMEWORK (SPF) “WHO CAN SEND EMAIL FOR THIS DOMAIN? Thursday, 21 February 13

Slide 42

Slide 42 text

SENDER POLICY FRAMEWORK (SPF) Thursday, 21 February 13

Slide 43

Slide 43 text

SENDER POLICY FRAMEWORK (SPF) by mx.google.com with ESMTP id rw7si9680451wjb Mon, 11 Feb 2013 02:17:50 -0800 (PST) Received-SPF: pass (google.com: domain of [email protected] designates 31.222.170.188 as permitted sender) client-ip=31.222.170.188; Authentication-Results: mx.google.com; spf=pass (google.com: domain of [email protected] designates 31.222.170.188 as permitted sender) [email protected]; dkim=pass [email protected] Received: from localhost.localdomain (localhost [127.0.0.1]) by ince.itison.com (Postfix) with ESMTP id 044AC228D3 for ; Mon, 11 Feb 2013 10:17:49 +0000 ( Thursday, 21 February 13

Slide 44

Slide 44 text

SENDER POLICY FRAMEWORK (SPF) by mx.google.com with ESMTP id rw7si9680451wjb Mon, 11 Feb 2013 02:17:50 -0800 (PST) Received-SPF: pass (google.com: domain of [email protected] designates 31.222.170.188 as permitted sender) client-ip=31.222.170.188; Authentication-Results: mx.google.com; spf=pass (google.com: domain of [email protected] designates 31.222.170.188 as permitted sender) [email protected]; dkim=pass [email protected] Received: from localhost.localdomain (localhost [127.0.0.1]) by ince.itison.com (Postfix) with ESMTP id 044AC228D3 for ; Mon, 11 Feb 2013 10:17:49 +0000 ( Thursday, 21 February 13

Slide 45

Slide 45 text

DOMAIN KEYS (DKIM) Thursday, 21 February 13

Slide 46

Slide 46 text

DOMAIN KEYS (DKIM) Received: from localhost.localdomain (localhost [127.0.0.1]) by nestor.itison.com (Postfix) with ESMTP id BBD6D20CAE for ; Tue, 19 Feb 2013 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=itison.com; s=nestor; t=1361262270; bh=QaZ2zdOM7wm/2XXqa6uJJgRm2OQqYOgCdjUxGX4WPLo=; h=Date:From:Reply-To:To:Subject:List-Unsubscribe; b=+Gp5sOmfHTkDL26/IliNbgpAGvWaTzzKVboWpAHb3tBPvnKU8O+Gr3JXgl43MlH95 juUg83Ww8xfHNTe4poLAjADyFA9TR1chGcQLFN/GEA+X7Wwbg2X1F9kvTn7idgI0Hf I8Te84VxgZ5vHBuAlbWIWoKTE4MxIoPOJPJJGZxM= Date: Tue, 19 Feb 2013 08:22:44 +0000 From: itison Thursday, 21 February 13

Slide 47

Slide 47 text

DOMAIN KEYS (DKIM) Received: from localhost.localdomain (localhost [127.0.0.1]) by nestor.itison.com (Postfix) with ESMTP id BBD6D20CAE for ; Tue, 19 Feb 2013 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=itison.com; s=nestor; t=1361262270; bh=QaZ2zdOM7wm/2XXqa6uJJgRm2OQqYOgCdjUxGX4WPLo=; h=Date:From:Reply-To:To:Subject:List-Unsubscribe; b=+Gp5sOmfHTkDL26/IliNbgpAGvWaTzzKVboWpAHb3tBPvnKU8O+Gr3JXgl43MlH95 juUg83Ww8xfHNTe4poLAjADyFA9TR1chGcQLFN/GEA+X7Wwbg2X1F9kvTn7idgI0Hf I8Te84VxgZ5vHBuAlbWIWoKTE4MxIoPOJPJJGZxM= Date: Tue, 19 Feb 2013 08:22:44 +0000 From: itison Thursday, 21 February 13

Slide 48

Slide 48 text

Thursday, 21 February 13

Slide 49

Slide 49 text

CAN-SPAM (US) Thursday, 21 February 13

Slide 50

Slide 50 text

CAN-SPAM (US) • Don’t use fraudulent channels/tools Thursday, 21 February 13

Slide 51

Slide 51 text

CAN-SPAM (US) • Don’t use fraudulent channels/tools • Don’t obscure sender identity Thursday, 21 February 13

Slide 52

Slide 52 text

CAN-SPAM (US) • Don’t use fraudulent channels/tools • Don’t obscure sender identity • Include physical postal address Thursday, 21 February 13

Slide 53

Slide 53 text

CAN-SPAM (US) • Don’t use fraudulent channels/tools • Don’t obscure sender identity • Include physical postal address • Indicate if message is advertisement Thursday, 21 February 13

Slide 54

Slide 54 text

CAN-SPAM (US) • Don’t use fraudulent channels/tools • Don’t obscure sender identity • Include physical postal address • Indicate if message is advertisement • Include a conspicuous unsubscribe method Thursday, 21 February 13

Slide 55

Slide 55 text

CAN-SPAM (US) • Don’t use fraudulent channels/tools • Don’t obscure sender identity • Include physical postal address • Indicate if message is advertisement • Include a conspicuous unsubscribe method • Process all unsubscribe requests in < 10 days Thursday, 21 February 13

Slide 56

Slide 56 text

CAN-SPAM (US) • Don’t use fraudulent channels/tools • Don’t obscure sender identity • Include physical postal address • Indicate if message is advertisement • Include a conspicuous unsubscribe method • Process all unsubscribe requests in < 10 days • As an agent/source you share responsibility Thursday, 21 February 13

Slide 57

Slide 57 text

CAN-SPAM (US) • Don’t use fraudulent channels/tools • Don’t obscure sender identity • Include physical postal address • Indicate if message is advertisement • Include a conspicuous unsubscribe method • Process all unsubscribe requests in < 10 days • As an agent/source you share responsibility • Any message sent to a “harvested” address is spam. Thursday, 21 February 13

Slide 58

Slide 58 text

E.C. (EC Directive) Regulations 2002 Thursday, 21 February 13

Slide 59

Slide 59 text

E.C. (EC Directive) Regulations 2002 • No, the last slide was all bullet points • This isn’t a lecture. • You’re not a lecturer, Gavin • I refuse to contain two slides of bullet points back- to-back • This isn’t what I want to be. • I wanted to be one of those fun presentations with photos of lolcats. :( Thursday, 21 February 13

Slide 60

Slide 60 text

“OPERATIONALLY, WE DEFINE SPAM AS WHATEVER CONSUMERS DON’T WANT IN THEIR INBOX.” MILES LIBBEY ANTI-SPAM, YAHOO Thursday, 21 February 13

Slide 61

Slide 61 text

“I DON’T CARE IF THEY’VE TRIPLE OPTED- IN AND GIVEN YOU THEIR CREDIT CARD NUMBER. RELEVANCE RULES, AND CATERING TO END USER PREFERENCES IS TOP PRIORITY.” CHARLES STILES POSTMASTER, AOL Thursday, 21 February 13

Slide 62

Slide 62 text

FEEDBACK IS IMPORTANT Thursday, 21 February 13

Slide 63

Slide 63 text

LINE OF TITLE TEXT FEEDBACK IS IMPORTANT Thursday, 21 February 13

Slide 64

Slide 64 text

Thursday, 21 February 13

Slide 65

Slide 65 text

REGISTER FOR FEEDBACK LOOPS Thursday, 21 February 13

Slide 66

Slide 66 text

REGISTER FOR FEEDBACK LOOPS Thursday, 21 February 13

Slide 67

Slide 67 text

REGISTER FOR FEEDBACK LOOPS Thursday, 21 February 13

Slide 68

Slide 68 text

REGISTER FOR FEEDBACK LOOPS Thursday, 21 February 13

Slide 69

Slide 69 text

Thursday, 21 February 13

Slide 70

Slide 70 text

SET UP LIST UNSUBSCRIBE HEADERS Thursday, 21 February 13

Slide 71

Slide 71 text

SET UP LIST UNSUBSCRIBE HEADERS Thursday, 21 February 13

Slide 72

Slide 72 text

SET UP LIST UNSUBSCRIBE HEADERS Message-Id: <[email protected]> Subject: Please confirm your email address with itison Mime-Version: 1.0 Content-Type: multipart/alternative;..... List-Unsubscribe: Thursday, 21 February 13

Slide 73

Slide 73 text

WHAT’S YOUR SPAM SCORE? X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 74

Slide 74 text

WHAT’S YOUR SPAM SCORE? X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 75

Slide 75 text

WHAT’S YOUR SPAM SCORE? Subject almost says No prescription X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 76

Slide 76 text

WHAT’S YOUR SPAM SCORE? CGI in .biz TLD X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 77

Slide 77 text

WHAT’S YOUR SPAM SCORE? Date: is 6 to 12 hours after Received X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 78

Slide 78 text

WHAT’S YOUR SPAM SCORE? Uses a mis-spelled version of cialis. X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 79

Slide 79 text

WHAT’S YOUR SPAM SCORE? HTML has unbalanced body tags X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 80

Slide 80 text

WHAT’S YOUR SPAM SCORE? HTML font color similar to background X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 81

Slide 81 text

WHAT’S YOUR SPAM SCORE? HTML: images with 0-400 bytes of words X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 82

Slide 82 text

WHAT’S YOUR SPAM SCORE? Something is emphatically guaranteed X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 83

Slide 83 text

WHAT’S YOUR SPAM SCORE? Subject line starts with Buy or Buying X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 84

Slide 84 text

WHAT’S YOUR SPAM SCORE? Message says that prices aren't too expensive X-Sieve: CMU Sieve 2.4 X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, HTML_IMAGE_RATIO_06 0.001, HTML_MESSAGE 0.001, RCVD_IN_RP_CERTIFIED -3, RCVD_IN_RP_SAFE -2, RP_MATCHES_RCVD -0.001, URI_NOVOWEL 0.5, LANGUAGES unknown, BAYES_USED global, SA_VERSION 3.3.1 X-Spam-source: IP='31.222.170.118', Host='nestor.itison.com', Country='GB', FromHeader='com', MailFrom='com' X-Spam-charsets: plain='utf-8', html='utf-8' Thursday, 21 February 13

Slide 85

Slide 85 text

TRACKING Thursday, 21 February 13

Slide 86

Slide 86 text

TRACKING WHO GOT WHAT Thread-Topic: Hello! Thread-Index: Ac4N79a7oEDJf+ZLS9m3xcdfi2OHCAAM2Y+AABkdfTA= Date: Tue, 19 Feb 2013 14:32:07 +0000 Deferred-Delivery: Tue, 19 Feb 2013 14:32:00 +0000 Message-ID: References: <[email protected]> In-Reply-To: <[email protected]> Accept-Language: en-GB, en-US Content-Language: en-US Thursday, 21 February 13

Slide 87

Slide 87 text

TRACKING WHO GOT WHAT Thread-Topic: Hello! Thread-Index: Ac4N79a7oEDJf+ZLS9m3xcdfi2OHCAAM2Y+AABkdfTA= Date: Tue, 19 Feb 2013 14:32:07 +0000 Deferred-Delivery: Tue, 19 Feb 2013 14:32:00 +0000 X-App-Message-ID: References: <[email protected]> In-Reply-To: <[email protected]> Accept-Language: en-GB, en-US Content-Language: en-US Thursday, 21 February 13

Slide 88

Slide 88 text

TRACKING WHO GOT WHAT Thread-Topic: Hello! Thread-Index: Ac4N79a7oEDJf+ZLS9m3xcdfi2OHCAAM2Y+AABkdfTA= Date: Tue, 19 Feb 2013 14:32:07 +0000 Deferred-Delivery: Tue, 19 Feb 2013 14:32:00 +0000 Return-Path: In-Reply-To: <[email protected]> Accept-Language: en-GB, en-US Content-Language: en-US Thursday, 21 February 13

Slide 89

Slide 89 text

HANDLING INCOMING EMAIL OUTBOUND EMAIL IS HARD. INBOUND EMAIL IS HELL. LET SOMEONE ELSE DO IT. Thursday, 21 February 13

Slide 90

Slide 90 text

Thursday, 21 February 13

Slide 91

Slide 91 text

YOUR OWN METRICS ARE THE BEST GUIDE TO WHEN SOMETHING’S BROKEN Thursday, 21 February 13

Slide 92

Slide 92 text

YOUR OWN METRICS ARE THE BEST GUIDE TO WHEN SOMETHING’S BROKEN •Bounce Rate (very reliable) Thursday, 21 February 13

Slide 93

Slide 93 text

YOUR OWN METRICS ARE THE BEST GUIDE TO WHEN SOMETHING’S BROKEN •Bounce Rate (very reliable) •Junk Rates (very reliable) Thursday, 21 February 13

Slide 94

Slide 94 text

YOUR OWN METRICS ARE THE BEST GUIDE TO WHEN SOMETHING’S BROKEN •Bounce Rate (very reliable) •Junk Rates (very reliable) •Open Rates (sort of reliable) Thursday, 21 February 13

Slide 95

Slide 95 text

YOUR OWN METRICS ARE THE BEST GUIDE TO WHEN SOMETHING’S BROKEN •Bounce Rate (very reliable) •Junk Rates (very reliable) •Open Rates (sort of reliable) •Click Rates (very reliable) Thursday, 21 February 13

Slide 96

Slide 96 text

YOUR OWN METRICS ARE THE BEST GUIDE TO WHEN SOMETHING’S BROKEN •Bounce Rate (very reliable) •Junk Rates (very reliable) •Open Rates (sort of reliable) •Click Rates (very reliable) •Read time Rates (not at all reliable) Thursday, 21 February 13

Slide 97

Slide 97 text

DEAL WITH BROKEN WINDOWS QUICKLY CHECK FOR BROKEN WINDOWS OFTEN & FIX THEM QUICKLY Thursday, 21 February 13

Slide 98

Slide 98 text

A LITTLE ARTIFICIAL BOOST CAN HELP Thursday, 21 February 13

Slide 99

Slide 99 text

A LITTLE ARTIFICIAL BOOST CAN HELP Thursday, 21 February 13

Slide 100

Slide 100 text

MISC. Thursday, 21 February 13

Slide 101

Slide 101 text

Thursday, 21 February 13

Slide 102

Slide 102 text

DON’T SEND APP MAIL FROM YOUR ROOT DOMAIN Thursday, 21 February 13

Slide 103

Slide 103 text

DON’T SEND APP MAIL FROM YOUR ROOT DOMAIN Thursday, 21 February 13

Slide 104

Slide 104 text

DON’T SEND APP MAIL FROM YOUR ROOT DOMAIN YOUR TEAMMATES HAVE DIFFERENT NEEDS & GET TETCHY WHEN YOU BREAK THEIR EMAIL Thursday, 21 February 13

Slide 105

Slide 105 text

Thursday, 21 February 13

Slide 106

Slide 106 text

WARM UP NEW SERVERS Thursday, 21 February 13

Slide 107

Slide 107 text

Thursday, 21 February 13

Slide 108

Slide 108 text

NOREPLY@... = F**K YOU Thursday, 21 February 13

Slide 109

Slide 109 text

NOREPLY@... = F**K YOU Thursday, 21 February 13

Slide 110

Slide 110 text

Message-Id: <[email protected]> Subject: Please confirm your email address with itison Mime-Version: 1.0 X-Auto-Response-Suppress: OOF, AutoReply Content-Type: multipart/alternative;..... List-Unsubscribe: Thursday, 21 February 13

Slide 111

Slide 111 text

I’M NOT IN THE OFFICE RIGHT NOW Message-Id: <[email protected]> Subject: Please confirm your email address with itison Mime-Version: 1.0 X-Auto-Response-Suppress: OOF, AutoReply Content-Type: multipart/alternative;..... List-Unsubscribe: Thursday, 21 February 13

Slide 112

Slide 112 text

Thursday, 21 February 13

Slide 113

Slide 113 text

WHO ARE YOU AND WHY ARE YOU TALKING TO ME? Thursday, 21 February 13

Slide 114

Slide 114 text

WHO ARE YOU AND WHY ARE YOU TALKING TO ME? Thursday, 21 February 13

Slide 115

Slide 115 text

CATCH TYPOS - MAILCHECK.JS var domains = ['hotmail.com', 'gmail.com', 'aol.com']; var topLevelDomains = ["com", "net", "org"]; var superStringDistance = function(string1, string2) { // a string distance algorithm of your choosing } $('#email').on('blur', function() { $(this).mailcheck({ domains: domains, topLevelDomains: topLevelDomains, distanceFunction: superStringDistance, suggested: function(element, suggestion) { }, empty: function(element) { } }); }); Thursday, 21 February 13

Slide 116

Slide 116 text

MAKE IT EASY TO LEAVE Thursday, 21 February 13

Slide 117

Slide 117 text

MAKE IT EASY TO LEAVE Thursday, 21 February 13

Slide 118

Slide 118 text

MAKE IT EASY TO LEAVE Thursday, 21 February 13

Slide 119

Slide 119 text

MAKE IT EASY TO LEAVE Thursday, 21 February 13

Slide 120

Slide 120 text

KTHXBI @GAVINMONTAGUE / LEFTBRAINED.CO.UK Photo Credits en.wikipedia.org/wiki/ARPANET flickr.com/photos/epsos/8270256961/ flickr.com/photos/postalheritage/5053533875/ flickr.com/photos/photosbydanielle/2264349960/ Thursday, 21 February 13

Slide 121

Slide 121 text

BTW, WE’RE HIRING. Thursday, 21 February 13