<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" lang="en-US" xml:lang="en-US">
  <head>
    <title data-ignore-plain-text>I learned so much from this website 🤯</title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta name="format-detection" content="address=no">
    <!--[if (gte mso 9)|(IE)]>
    <style type="text/css" media="screen">
      li {
        text-indent: -1em;
      }
    </style>
    <![endif]-->
    <style type="text/css" media="all">
      body,
.section-text-area,
.section-text-area-wrapper,
.section-text-cell {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-word-break: break-all;
    word-break: break-word;
}
body {
    width: 100% !important;
    min-width: 100% !important;
    -ms-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    mso-line-height-rule: exactly;
}
p {
    margin-block: 0;
}
@media only screen and (max-width:  593px ) {
    table#newsletter-table {
        border: 0 !important;
    }
    table#newsletter-email {
        width: 100% !important;
    }
    img.section-scaleable-image,
    img.section-empty-img {
        max-width: 100% !important;
        height: auto !important;
    }
    .bg-none {
        background: none !important;
    }
    .hauto {
        height: auto !important;
    }
    .show-desktop-only {
        display: none !important;
    }
    .show-mobile-only {
        display: block !important;
        float: none !important;
        line-height: auto !important;
        max-height: inherit !important;
        max-width: inherit !important;
        margin-top: 0px !important;
        overflow: visible !important;
        visibility: inherit !important;
        width: auto !important;
    }
    .stack-cell-wrap {
        display: block !important;
    }
    .stack-cell-up {
        display: table-header-group !important;
    }
    .stack-cell-down {
        display: table-footer-group !important;
    }
    .mw100p {
        max-width: 100% !important;
    }
    .section-horizontal-padding,
    .padding-mobile-both {
        padding-left: 22px !important;
        padding-right: 22px !important;
    }
    .padding-mobile-left {
        padding-left: 22px !important;
    }
    .padding-mobile-right {
        padding-right: 22px !important;
    }
    .text-left {
        text-align: left !important;
    }
    .text-right {
        text-align: right !important;
    }
    .w100p {
        width: 100% !important;
    }
}
.button-style-solid:hover,
.button-style-rounded:hover {
    opacity: .8 !important;
}
a:hover {
    text-decoration: none !important;
}
span.mail-merge-preview {
    border-bottom: 2px dotted currentColor;
    display: inline-block;
    line-height: 1em !important;
    margin-bottom: .125em !important;
}
table#newsletter-section-body .linked-site-title-link {
    color: #0e8ac4 !important;
}
#header-header-section-split-left-0 .brand-name .linked-site-title-link {
    color: #000;
    text-decoration: none;
}
#footer-footer-section-stacked-top-0 .brand-name .linked-site-title-link {
    color: #000;
    text-decoration: none;
}
#footer-footer-section-stacked-top-0 .footer-text .linked-site-title-link {
    color: #0e8ac4;
}

    </style>
    
    
    <!--[if mso]>
    <noscript>
      <xml>
        <o:OfficeDocumentSettings>
          <o:AllowPNG/>
          <o:PixelsPerInch>96</o:PixelsPerInch>
        </o:OfficeDocumentSettings>
      </xml>
    </noscript>
    <![endif]-->
    
    <!--[if (mso)|(mso 16)]>
      <style type="text/css">
        a {text-decoration: none;}
      </style>
    <![endif]-->
  </head>
  <body style="padding:0;margin:0;text-align:center;background-color:#fff;">
    <table role="article" aria-label="I learned so much from this website 🤯" lang="en-US" cellpadding="0" cellspacing="0" border="0" align="center" id="newsletter-table" style="font-size:16px;font-weight:normal;width:100%;padding:0px;background-color:#fff;border-top:44px solid #fff;border-bottom:44px solid #fff;margin:0 auto;text-align:center;table-layout:fixed;">
  <tbody><tr>
    <td align="center" valign="top" bgcolor="#FFFFFF" id="newsletter-cell" style="font-size:1em;">
      <div data-ignore-plain-text class="newsletter-preview-text" style="color:transparent;display:none !important;height:0;max-height:0;max-width:0;opacity:0;overflow:hidden;mso-hide:all;visibility:hidden;width:0;">
        
            
            Hi 👋 This week I want to tell you about a website I discovered back in 2016, that really helped me improve my knowledge of iOS, Swift and even Objective-C.͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;͏‌&nbsp;
        
      </div>
      <table border="0" cellpadding="0" cellspacing="0" width="594" bgcolor="transparent" id="newsletter-email">
        <tbody><tr>
          <td align="center" valign="top" id="newsletter-email-wrapper" class="book-sans">
            <table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" id="newsletter-section-header">
              <tbody><tr>
                <td align="center" valign="middle" id="newsletter-section-header-cell">
                  
<div id="header-header-section-split-left-0">





<table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="transparent" class="header-section header-section-split section-content" style="background-color:transparent;">
  <tbody><tr>
    <td class="section-content-cell" style="padding-top:22px;padding-right:22px;padding-bottom:27px;padding-left:22px;">
      <table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0">
        <tbody><tr>
          <td align="left" valign="middle" width="50%" class="section-text-area">
            
  <p class="brand-name" style="margin:0 0 1.25em 0;font-weight:normal;margin-top:0;margin-bottom:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;color:#000;font-size:18px;line-height:1em;mso-line-height-alt:18px;white-space:pre-wrap;margin-left:0px;"><strong><a href="https://www.swiftwithvincent.com" rel="nofollow" style="color:#0e8ac4 !important;">Swift with Vincent</a></strong></p>
  
  

          </td>
          <td align="right" valign="middle" width="50%" class="section-text-area">
            <p class="email-title" style="line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;height:1.618em;margin-top:0;margin-bottom:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:12px;mso-line-height-alt:12px;color:#000;white-space:pre-wrap;margin-right:0px;"></p>
          </td>
        </tr>
      </tbody></table>
    </td>
  </tr>
</tbody></table>

</div>
                </td>
              </tr>
            </tbody></table>
            <table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" id="newsletter-section-body">
              <tbody><tr>
                <td align="center" valign="top" width="100%" id="newsletter-section-body-cell">
                  
<div id="text-text-section-0">



<table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="transparent" class="text-section section-content">
  <tbody><tr>
    <td valign="top" class="section-text-area section-content-cell" style="padding-top:10px;padding-right:30px;padding-bottom:10px;padding-left:30px;color:#000;background-color:transparent;">
      <h2 style="color:inherit;margin:1.414em 0 .5em;font-weight:400;line-height:1.25em;font-size:2.8271459439999997em;mso-line-height-alt:2.8271459439999997em;margin-top:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;letter-spacing:-.01em;text-align:center;">I learned so much from this website 🤯</h2><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">Hi 👋</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">As I write this <strong>new email</strong>, you are <strong>900</strong> to be <strong>subscribed</strong> to my newsletter: <strong>thank you</strong> so <strong>much</strong> for your <strong>support</strong> 🖤</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">This week I want to try <strong>something new</strong>, something a bit <strong>more personal</strong>.</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">I want to <strong>tell you</strong> about a <strong>website</strong> I discovered <strong>back in 2016</strong>, that really <strong>helped </strong>me <strong>improve</strong> my <strong>knowledge</strong> of <strong>iOS</strong>, <strong>Swift</strong> and even <strong>Objective-C</strong>.</p><p style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;text-align:center;" class=""><em>(remember, this was in 2016, Objective-C was still very popular! 👴🏻)</em></p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">If you were <strong>already part</strong> of the iOS community <strong>7 years ago</strong>, you might actually have <strong>already guessed</strong> which <strong>website</strong> I’m referring to!</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;margin-bottom:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">I’m talking, of course, about the legendary <a href="https://nshipster.com" rel="nofollow" style="color:#0e8ac4 !important;"><strong>NSHipster</strong></a>!</p>
    </td>
  </tr>
</tbody></table>

</div>
<div id="image-image-section-side-1">
<table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" align="center" bgcolor="transparent" class="image-section side-layout section-content" style="width:100% !important;">

  

  
    
    <tbody><tr><td><table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" align="center" bgcolor="transparent" class="side-layout" style="width:100% !important;"><tbody><tr>

    
    <td class="show-desktop-only section-spacing-left" width="44"></td>
  

  <th class="stack-cell-wrap w100p section-image-cell section-content-cell section-hoverable-image" align="left" data-aspect="ORIGINAL" style="padding:0;width:33%;vertical-align:middle;font-weight:normal;">
    
  <a href="https://nshipster.com" style="color:#0e8ac4 !important;"><img class="section-scaleable-image" src="https://images.squarespace-cdn.com/content/63139bb1e1a1a078e071f30c/cbafc375-8d05-45c7-9bc0-1192634ec0da/logo-PhotoRoom.png-PhotoRoom.png?content-type=image%2Fpng&amp;format=750w" width="297" alt="" style="font-size:.7072135785007072em;display:block;border:0;text-decoration:none;line-height:0;background-color:transparent;font-weight:normal;height:auto;width:100%;max-width:100%;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;"></a>


  </th>
    

  <th class="stack-cell-wrap w100p section-text-area section-content-cell" align="left" style="color:#000;vertical-align:middle;font-weight:normal;">
    <table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" align="center" class="side-layout" style="width:100% !important;"><tbody><tr><td class="section-text-cell" style="padding-top:22px;padding-right:22px;padding-bottom:22px;padding-left:22px;">
      <div class="section-caption-text" style="position:relative;"><p class="" style="font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;margin-top:0;margin-bottom:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;color:#313131;">Maybe <strong>seeing</strong> this <strong>logo</strong> will bring back some fond <strong>memories</strong> 🥲</p></div>
    </td></tr></tbody></table>
  </th>
    
    <td class="show-desktop-only section-spacing-right" width="44"></td>
  

</tr></tbody></table></td></tr>


    
  
  


</tbody></table>

</div>
<div id="text-text-section-2">



<table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="transparent" class="text-section section-content">
  <tbody><tr>
    <td valign="top" class="section-text-area section-content-cell padding-mobile-both" style="padding-top:11px;padding-right:44px;padding-bottom:11px;padding-left:44px;color:#313131;background-color:transparent;">
      <p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;margin-top:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">Sadly, this <strong>amazing </strong>website <strong>hasn’t seen</strong> any <strong>new content</strong> since WWDC <strong>2020</strong>…</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">But <strong>trust me</strong>, even if it is a <strong>few years old</strong>, it is still an absolute <strong>gold</strong> <strong>mine</strong> of <strong>knowledge</strong> for <strong>any iOS developer</strong>.</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;"><strong>Regardless</strong> of how much <strong>experience</strong> you <strong>have</strong>, I’m sure you will <strong>learn</strong> something <strong>new</strong> if you starting <strong>browsing</strong> the many <strong>articles</strong> available on <a href="https://nshipster.com" rel="nofollow" style="color:#0e8ac4 !important;"><strong>NSHipster</strong></a> 😌</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">So to help you <strong>get started</strong>, I wanted to <strong>share</strong> with you a <strong>few articles</strong> that I think <strong>any iOS developer </strong>would find <strong>useful</strong>!</p><h4 style="color:inherit;margin:1.414em 0 .5em;font-weight:400;line-height:1.25em;font-size:1.414em;mso-line-height-alt:1.414em;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;letter-spacing:.02em;"><a href="https://nshipster.com/void/" rel="nofollow" style="color:#0e8ac4 !important;"><strong>Void</strong></a><strong> &amp; </strong><a href="https://nshipster.com/never/" rel="nofollow" style="color:#0e8ac4 !important;"><strong>Never</strong></a></h4><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">I’m sure you’ve <strong>already encountered</strong> these <strong>two type</strong> as you <strong>were writing</strong> Swift code.</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">But do you <strong>really know </strong>what <strong>makes</strong> them <strong>special</strong>?</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">These two <strong>articles</strong> will <strong>deep dive</strong> into why <strong>Void</strong> and <strong>Never</strong> are such a <strong>fundamental</strong> <strong>part</strong> of Swift’s <strong>type system</strong>.</p><h4 style="color:inherit;margin:1.414em 0 .5em;font-weight:400;line-height:1.25em;font-size:1.414em;mso-line-height-alt:1.414em;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;letter-spacing:.02em;"><a href="https://nshipster.com/optional-throws-result-async-await/" rel="nofollow" style="color:#0e8ac4 !important;"><strong>Optional, throws, Result, async/await</strong></a></h4><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">You might <strong>have</strong> <strong>noticed</strong> that Swift takes <strong>error handling</strong> quite <strong>seriously</strong>.</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">So much so that the <strong>language</strong> actually <strong>has</strong> quite a <strong>few different</strong> <strong>mechanisms</strong> to <strong>propagate</strong> and <strong>handle</strong> <strong>errors</strong>!</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">This article <strong>goes over</strong> all these<strong> mechanisms</strong> and, more importantly, <strong>explains</strong> their <strong>differences</strong> and why they all <strong>came to be</strong>.</p><h4 style="color:inherit;margin:1.414em 0 .5em;font-weight:400;line-height:1.25em;font-size:1.414em;mso-line-height-alt:1.414em;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;letter-spacing:.02em;"><a href="https://nshipster.com/method-swizzling/" rel="nofollow" style="color:#0e8ac4 !important;"><strong>Method Swizzling</strong></a></h4><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">Maybe you’ve heard <strong>people talk</strong> of “<strong>method swizzling</strong>” but you’re <strong>not really sure</strong> what it <strong>means</strong>.</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">For the <strong>short version</strong>: swizzling is essentially <strong>dark iOS magic</strong>, that allows to <strong>replace</strong> at <strong>runtime</strong> the <strong>implementation</strong> of a <strong>method</strong> 🤯</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">For the <strong>long version</strong>, this article will <strong>explain</strong> in details <strong>how</strong> swizzling is <strong>actually possible</strong>, what can be <strong>achieved</strong> with it and <strong>why</strong> it is a <strong>tool</strong> that must be <strong>handled</strong> with a <strong>lot of caution</strong>.</p><h4 style="color:inherit;margin:1.414em 0 .5em;font-weight:400;line-height:1.25em;font-size:1.414em;mso-line-height-alt:1.414em;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;letter-spacing:.02em;"><a href="https://nshipster.com/macos-dynamic-desktop/" rel="nofollow" style="color:#0e8ac4 !important;"><strong>Bonus: macOS Dynamic Desktop</strong></a></h4><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">This <strong>last </strong>one <strong>isn’t about iOS</strong>, but if you’re an <strong>Apple user</strong>, I’m sure you will <strong>enjoy</strong> the <strong>topic</strong>!</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">You might <strong>remember</strong> that <strong>macOS Mojave</strong> introduced a pretty <strong>cool</strong> <strong>feature</strong>: dynamic<strong> wallpapers</strong> that <strong>adapt</strong> to the <strong> time</strong>.</p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">You might have also <strong>wondered</strong> <strong>how</strong> these <strong>wallpapers</strong> actually <strong>worked</strong> <strong>under-the-hood</strong>! </p><p class="" style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;margin-bottom:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;">Well <strong>guess</strong> what? It is <strong>precisely</strong> the <strong>topic</strong> of this <strong>bonus</strong> article 👌</p>
    </td>
  </tr>
</tbody></table>

</div>
<div id="text-text-section-3">



<table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="transparent" class="text-section section-content">
  <tbody><tr>
    <td valign="top" class="section-text-area section-content-cell padding-mobile-both" style="padding-top:11px;padding-right:44px;padding-bottom:0px;padding-left:44px;color:#313131;background-color:transparent;">
      <p style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;margin-top:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;text-align:center;" class=""><em>That’s all for this email, thanks for reading it!</em></p><p style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;text-align:center;" class=""><em>If you’ve enjoyed it, feel free to forward it<br>to your friends and colleagues 🙌</em></p><p style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;text-align:center;" class=""><em> I wish you an amazing week!</em></p><p style="color:inherit;font-size:1em;line-height:1.618em;margin:0 0 1.25em 0;font-weight:normal;margin-bottom:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;text-align:center;" class=""><em> ❤️</em></p>
    </td>
  </tr>
</tbody></table>

</div>
                </td>
              </tr>
            </tbody></table>
            
              <table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" id="newsletter-section-footer">
                <tbody><tr>
                  <td align="center" valign="top" id="newsletter-section-footer-cell">
                    
<div id="footer-footer-section-stacked-top-0">



<table role="presentation" width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="transparent" class="footer-section footer-section-stacked section-content" style="background-color:transparent;">
  <tbody><tr>
    <td align="center" valign="top" class="section-text-area section-content-cell" style="padding-top:22px;padding-right:22px;padding-bottom:22px;padding-left:22px;">
      
  
  
  
    
  

      

      
      
  
    <p class="footer-company-info" style="line-height:1.618em;font-weight:normal;margin-top:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;color:#000;font-size:11px;margin:0 0 13.75px 0;padding:0;">
  <a style="color:#000;text-decoration:none;font-size:inherit;font-family:inherit;font-weight:inherit;line-height:inherit;cursor:default;">
  E-mail sent by Vincent Pradeilles, 
  Lyon, 
  France 🇫🇷</a>
</p>
  

      
<p class="footer-links" style="line-height:1.618em;font-weight:normal;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;color:#000;font-size:11px;margin:0 0 13.75px 0;padding:0;">
  Powered by <a href="https://www.squarespace.com?channel=product_refer&amp;subchannel=customer&amp;source=email_campaigns_button&amp;campaign=63139bb1e1a1a078e071f30c&amp;utm_medium=product_refer&amp;utm_source=email_campaigns_button" class="sqsp-link" style="color:#000;text-decoration:underline;display:inline-block;">Squarespace</a>
</p>


      <p class="footer-links" style="line-height:1.618em;font-weight:normal;margin-bottom:0;font-family:'DejaVu Sans Condensed', 'Liberation Sans', 'Nimbus Sans L', 'Helvetica Neue', Helvetica, Arial, sans-serif;color:#000;font-size:11px;margin:0 0 13.75px 0;padding:0;">
  <a href="#" class="unsubscribe-link" style="text-decoration:underline;color:#313131;">
    <span class="unsubscribe-link-text" style="font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;">Unsubscribe</span>
  </a>
</p>

    </td>
  </tr>
</tbody></table>

</div>
                  </td>
                </tr>
              </tbody></table>
            
          </td>
        </tr>
      </tbody></table>
    </td>
  </tr>
</tbody></table>

  
</body></html>
