<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: You Got This</title>
    <description>The latest articles on DEV Community by You Got This (@yougotthisconf).</description>
    <link>https://dev.to/yougotthisconf</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F1700%2F9c0449f6-1e15-4b60-9111-4bd406ef1335.png</url>
      <title>DEV Community: You Got This</title>
      <link>https://dev.to/yougotthisconf</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/yougotthisconf"/>
    <language>en</language>
    <item>
      <title>Shipping stickers for You Got This 2020: From Home</title>
      <dc:creator>Hugh Wells</dc:creator>
      <pubDate>Mon, 31 Aug 2020 20:32:27 +0000</pubDate>
      <link>https://dev.to/yougotthisconf/shipping-stickers-for-you-got-this-2020-from-home-6m8</link>
      <guid>https://dev.to/yougotthisconf/shipping-stickers-for-you-got-this-2020-from-home-6m8</guid>
      <description>&lt;p&gt;&lt;a href="https://yougotthis.io/"&gt;You Got This&lt;/a&gt; is a community conference series which focuses on the non-technical, often emotionally-labourious skills needed to be successful at work. In June, they ran their first online conference - &lt;a href="https://home.yougotthis.io"&gt;You Got This From Home&lt;/a&gt;. They decided to provide a little sticker joy to all attendees during these tough times, and collected addresses during sign up for those that wanted a little surprise to arrive on their doorstep. &lt;/p&gt;


&lt;blockquote class="ltag__twitter-tweet"&gt;
      &lt;div class="ltag__twitter-tweet__media"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WsVoIXjf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/media/EdrzPKvXkAEBB8k.jpg" alt="unknown tweet media content"&gt;
      &lt;/div&gt;

  &lt;div class="ltag__twitter-tweet__main"&gt;
    &lt;div class="ltag__twitter-tweet__header"&gt;
      &lt;img class="ltag__twitter-tweet__profile-image" src="https://res.cloudinary.com/practicaldev/image/fetch/s--UFiGxSi6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/profile_images/1220049703024369668/oSSshSk2_normal.jpg" alt="Coco Chan profile image"&gt;
      &lt;div class="ltag__twitter-tweet__full-name"&gt;
        Coco Chan
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__username"&gt;
        @_crmzchan_
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__twitter-logo"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--P4t6ys1m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-f95605061196010f91e64806688390eb1a4dbc9e913682e043eb8b1e06ca484f.svg" alt="twitter logo"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__body"&gt;
      Happy mail! 📮😍&lt;br&gt;&lt;br&gt;Thank you &lt;a href="https://twitter.com/yougotthisconf"&gt;@yougotthisconf&lt;/a&gt; &lt;a href="https://twitter.com/crablabuk"&gt;@crablabuk&lt;/a&gt; 
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__date"&gt;
      10:24 AM - 24 Jul 2020
    &lt;/div&gt;


    &lt;div class="ltag__twitter-tweet__actions"&gt;
      &lt;a href="https://twitter.com/intent/tweet?in_reply_to=1286608091958652929" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-reply-action.svg" alt="Twitter reply action"&gt;
      &lt;/a&gt;
      &lt;a href="https://twitter.com/intent/retweet?tweet_id=1286608091958652929" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-retweet-action.svg" alt="Twitter retweet action"&gt;
      &lt;/a&gt;
      0
      &lt;a href="https://twitter.com/intent/like?tweet_id=1286608091958652929" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-like-action.svg" alt="Twitter like action"&gt;
      &lt;/a&gt;
      2
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/blockquote&gt;


&lt;p&gt;The event was run by Shy and Kevin, and while Shy handled the sticker distribution throughout the Americas, I was the person who handled all of the shipments across Europe and Asia. Shipping 300 sets of stickers gave me a good excuse to (potentially) overengineer a solution to make it happen, and here's how it went down...&lt;/p&gt;

&lt;h2&gt;
  
  
  Sanitizing Data
&lt;/h2&gt;

&lt;p&gt;First step was to sanitise the address data. This had already been sorted by country and region via &lt;a href="https://smartystreets.com/"&gt;SmartyStreet's API&lt;/a&gt; and the data looked like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;id,full_name,address,country,region
51,The Queen,"Buckingham Palace, London, SW1A 1AA, UK",UK,EU
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;The first thing to note is the address is (usually) comma delimited. Some people used full stops (others didn't use anything!) but most used commas to indicate each line of their address. As the plan was to put this through a mail merge, the first thing was to replace these commas with line breaks (I used Python):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;csv&lt;/span&gt;
&lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="nb"&gt;open&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'data.csv'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;newline&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;''&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;csvfile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;reader&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;csv&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;DictReader&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;csvfile&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="nb"&gt;open&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'output.csv'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'w'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;newline&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;''&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;savefile&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="n"&gt;writer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;csv&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;DictWriter&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;savefile&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;fieldnames&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;reader&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;fieldnames&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="n"&gt;writer&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;writeheader&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;

        &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;row&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;reader&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
            &lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'address'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'address'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;replace&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;','&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
            &lt;span class="n"&gt;writer&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;writerow&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;row&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;This did what you'd expect, and replaced any "," characters in the address field with "\n". &lt;/p&gt;

&lt;h2&gt;
  
  
  Preparing Envelopes
&lt;/h2&gt;

&lt;p&gt;Next step was to design a template to directly print onto the envelopes. Since Linux and OSS rocks, we're using LibreOffice here. Kevin came up with a beautiful design:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4HSfvYqu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/gtmh6vgxiiau69de54ua.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4HSfvYqu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/gtmh6vgxiiau69de54ua.png" alt="Envelope design with YGT branding"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once we've selected our document size with &lt;strong&gt;Format -&amp;gt; Page Style&lt;/strong&gt; and selected C6 (the size Kevin's design was for), we can then insert some placeholders for the data we're going to mail merge:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pHZaH1Qk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/bmp5b7zdzgpmfxn6t0h7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pHZaH1Qk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/bmp5b7zdzgpmfxn6t0h7.png" alt="Envelope design with some text placeholders overlaid"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You might think those are text boxes, but they're not! LibreOffice cannot mail merge data into textboxes, so these use a LibreOffice concept called &lt;a href="https://help.libreoffice.org/4.3/Writer/Frame"&gt;frames&lt;/a&gt;. You can place these via &lt;strong&gt;Insert -&amp;gt; Frame -&amp;gt; Frame Interactively&lt;/strong&gt;, and then dragging out the frame like a textbox. It will have a border by default but by with &lt;strong&gt;Right Click -&amp;gt; Properties&lt;/strong&gt;, you can customise this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LAvNgQLk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/7qwl7jpspa3679zz762b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LAvNgQLk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/7qwl7jpspa3679zz762b.png" alt="Window showing border customisation options"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Once completed, you can modify text within the frame as normal (eg. font, colour, size etc). &lt;/p&gt;

&lt;p&gt;If you are using LibreOffice as installed by default on a Linux distro, it's likely you won't have their database package, Base, installed. With apt you need to type &lt;code&gt;sudo apt install libreoffice&lt;/code&gt; to get the all the missing components. (You can install just Base, but it does have a few dependencies you'll need to install as well). &lt;/p&gt;

&lt;p&gt;You will also be likely missing the database engine Base needs (you will later get "General input/output error" when trying to interact with a database). This is also installable via apt: &lt;code&gt;sudo apt install libreoffice-sdbc-hsqldb&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Importing our CSV into Base is a bit weird (you can't directly use a CSV to mail merge). &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open Base and create a new database
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--J7JHEcFy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/y0wrr6alru18vh8zbkv6.png" alt="Menu to create a new database"&gt;
&lt;/li&gt;
&lt;li&gt;You do want Base to "register" the database (this makes it available to other LibreOffice applications automatically), and by clicking Finish you should be promped to save it 
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kEu1fVi4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/l8vgoyuqdas6bvigtjkx.png" alt="Options to configure the database"&gt;
&lt;/li&gt;
&lt;li&gt;You should now have the database open in Base. You now open your CSV alongside it in Calc
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--t2rMBHrh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/0ob0pwx2inylanswck1s.png" alt="Spreadsheet of data alongside database instance"&gt;
&lt;/li&gt;
&lt;li&gt;You now select all your data and copy it to your clipboard. In Base you go to &lt;strong&gt;Edit -&amp;gt; Paste&lt;/strong&gt; and a menu will appear!
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8EQ1x7Kw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/5iu02k61w8w1euo7j4k9.png" alt="Menu offering to create a new table"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The rest is fairly self-explanatory. You will need to create a new primary key field (which Base will autoincrement for you) - I wasn't able to get it to accept the existing one. &lt;/p&gt;

&lt;p&gt;Going back to you LibreOffice Writer template, by selecting &lt;strong&gt;View -&amp;gt; Data Sources&lt;/strong&gt; you will now see your database you just created:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--S9ZkIK5q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fouqrnxwv9yc86ir8rb4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--S9ZkIK5q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fouqrnxwv9yc86ir8rb4.png" alt="The database displayed with the template"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Drag on the column names, and drop into your frames where you'd like that column to appear:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PQarRfxe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/6hz1l06qhiqjb087es55.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PQarRfxe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/6hz1l06qhiqjb087es55.png" alt="Template with placeholders referencing data columns"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Phew. Almost there. &lt;/p&gt;
&lt;h2&gt;
  
  
  Printing Envelopes
&lt;/h2&gt;

&lt;p&gt;Use the standard print dialogue in LibreOffice and select &lt;strong&gt;Yes&lt;/strong&gt; when it asks if you want to print a form letter. I did try printing directly to the printer from LibreOffice but it crashed during the process, however small I made the job. &lt;/p&gt;

&lt;p&gt;However, you can instead ask LibreOffice to merge the data to individual files; I chose PDFs: &lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7OGHZWEf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/2594frog4bhoxnc0ql1o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7OGHZWEf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/2594frog4bhoxnc0ql1o.png" alt="Print dialogue configured to print to individual PDFs"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Depending how big your database is, LibreOffice will think for a while. You'll find some very nice looking envelopes in your destination folder:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WiiX1ha6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/01ea0r747guyycdf8od2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WiiX1ha6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/01ea0r747guyycdf8od2.png" alt="Envelope with merged data"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(spot the error: I didn't run the line break script on this CSV)&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;I then wrote a little Bash script to queue all the PDFs for printing:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="o"&gt;((&lt;/span&gt;&lt;span class="nv"&gt;i&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1&lt;span class="p"&gt;;&lt;/span&gt;i&amp;lt;&lt;span class="o"&gt;=&lt;/span&gt;278&lt;span class="p"&gt;;&lt;/span&gt;i++&lt;span class="o"&gt;))&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;do
    &lt;/span&gt;lp &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$i&lt;/span&gt;&lt;span class="s2"&gt;.pdf"&lt;/span&gt;
&lt;span class="k"&gt;done&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;And you'll just need to sit and wait then! It took around 4 hours to print all 278 envelopes on an HP inkjet. You can then use your database to query how many of each region you're sending to, which is useful when buying stamps (we were going to use a franking machine, but it broke). &lt;/p&gt;

&lt;p&gt;Then time to stuff all those envelopes and stick very expensive special stickers (aka stamps) on the front!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7rLmscgg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/rsjl36pb0ps2983sxhf8.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7rLmscgg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/rsjl36pb0ps2983sxhf8.jpeg" alt="Stamps and airmail stickers"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope you enjoy your stickers, and I also hope this guide is helpful to anyone else using LibreOffice for mailmerge :-) &lt;/p&gt;

&lt;p&gt;~ Hugh&lt;/p&gt;


&lt;blockquote class="ltag__twitter-tweet"&gt;
      &lt;div class="ltag__twitter-tweet__media"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--nS1Tr5sm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/media/EeGYufHWoAE0XZE.jpg" alt="unknown tweet media content"&gt;
      &lt;/div&gt;

  &lt;div class="ltag__twitter-tweet__main"&gt;
    &lt;div class="ltag__twitter-tweet__header"&gt;
      &lt;img class="ltag__twitter-tweet__profile-image" src="https://res.cloudinary.com/practicaldev/image/fetch/s--axuaX0h---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://pbs.twimg.com/profile_images/1281200111008260097/V23wjLo4_normal.png" alt="Jodie profile image"&gt;
      &lt;div class="ltag__twitter-tweet__full-name"&gt;
        Jodie
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__username"&gt;
        @jodieneville
      &lt;/div&gt;
      &lt;div class="ltag__twitter-tweet__twitter-logo"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--P4t6ys1m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-f95605061196010f91e64806688390eb1a4dbc9e913682e043eb8b1e06ca484f.svg" alt="twitter logo"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__body"&gt;
      Thank you for my stickers &lt;a href="https://twitter.com/yougotthisconf"&gt;@yougotthisconf&lt;/a&gt; 👨‍🚀🤜 
    &lt;/div&gt;
    &lt;div class="ltag__twitter-tweet__date"&gt;
      14:18 PM - 29 Jul 2020
    &lt;/div&gt;


    &lt;div class="ltag__twitter-tweet__actions"&gt;
      &lt;a href="https://twitter.com/intent/tweet?in_reply_to=1288478895377977344" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-reply-action.svg" alt="Twitter reply action"&gt;
      &lt;/a&gt;
      &lt;a href="https://twitter.com/intent/retweet?tweet_id=1288478895377977344" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-retweet-action.svg" alt="Twitter retweet action"&gt;
      &lt;/a&gt;
      0
      &lt;a href="https://twitter.com/intent/like?tweet_id=1288478895377977344" class="ltag__twitter-tweet__actions__button"&gt;
        &lt;img src="https://practicaldev-herokuapp-com.freetls.fastly.net/assets/twitter-like-action.svg" alt="Twitter like action"&gt;
      &lt;/a&gt;
      6
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/blockquote&gt;


&lt;p&gt;PS. You're incredibly welcome. I had a lot of fun doing it! &lt;/p&gt;

</description>
    </item>
    <item>
      <title>Announcing You Got This 2020: From Home</title>
      <dc:creator>Kevin Lewis</dc:creator>
      <pubDate>Thu, 19 Mar 2020 18:42:02 +0000</pubDate>
      <link>https://dev.to/yougotthisconf/announcing-you-got-this-2020-from-home-k45</link>
      <guid>https://dev.to/yougotthisconf/announcing-you-got-this-2020-from-home-k45</guid>
      <description>&lt;p&gt;We hope you, your family and friends are keeping safe. While health comes first and always will, it sucks that many events have needed to postpone or cancel in light of recent events. The organizers of the UK and New York You Got This events have decided that we can at least try and provide some useful content to fill the void.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--D_1MNF-m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/l0kngscqfnv02d5pedh3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--D_1MNF-m--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/l0kngscqfnv02d5pedh3.png" alt="" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enter &lt;a href="https://home.yougotthis.io"&gt;You Got This 2020: From Home&lt;/a&gt;. It’s a free, one-day and fully-online version of You Got This that we’ve just announced to be happening on June 6 2020.&lt;/p&gt;

&lt;p&gt;8 great speakers on a range of topics around core skills (to be announced), live captioning, and we’re mailing out stickers to folks who register.&lt;/p&gt;

&lt;p&gt;So please do sign up and encourage your friends and colleagues to register.&lt;/p&gt;

&lt;p&gt;Finally, we’re looking for a few sponsors. If you work at a company that might be interested - please get in touch and let us know.&lt;/p&gt;

</description>
      <category>event</category>
      <category>conference</category>
      <category>online</category>
    </item>
    <item>
      <title>You Got This 2020 Retrospective</title>
      <dc:creator>Kevin Lewis</dc:creator>
      <pubDate>Mon, 17 Feb 2020 07:40:46 +0000</pubDate>
      <link>https://dev.to/yougotthisconf/you-got-this-2020-retrospective-1cd8</link>
      <guid>https://dev.to/yougotthisconf/you-got-this-2020-retrospective-1cd8</guid>
      <description>&lt;p&gt;The second You Got This conference took place on Saturday 18th January 2020, in Birmingham, UK.&lt;/p&gt;

&lt;p&gt;Our focus for this event remains on the “core skills” that are often overlooked but can be invaluable for having a happy and healthy career. &lt;/p&gt;

&lt;p&gt;Thanks to the large amount of thoughtful feedback in 2019, the Underland Events team were able to make the 2020 conference more inclusive and impactful.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2ZZsfni_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/qtedilfq625nioi6dngi.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2ZZsfni_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/qtedilfq625nioi6dngi.jpg" alt="The audience watching a talk" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Like last year, this retrospective is meant to be a short read covering key feedback - both in what our attendees enjoyed and points for future improvement.&lt;/p&gt;

&lt;h1&gt;
  
  
  The top-line
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;We managed to have 221 attendees turn up on-the-day. With the change in location away from the UK's capital, it was especially good to see that numbers increased on last year.&lt;/li&gt;
&lt;li&gt;Only a 15% no-show rate, which is much better than we expected and certainly much lower than other events we've run.&lt;/li&gt;
&lt;li&gt;We gave away 55 scholarships - 15 of which covering travel, accommodation and childcare costs.&lt;/li&gt;
&lt;li&gt;56% of attendees who disclosed their pronouns didn't use he/him, which is wonderful. We hope everyone had a great time! &lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Format
&lt;/h1&gt;

&lt;p&gt;In a change from last year, we organised a dry social at the end of the day (in addition to comfort breaks and opportunities to socialise in between talks). We were pleased to observe about a quarter of our attendees took part in this.&lt;/p&gt;

&lt;p&gt;Some people felt that 9 talks was too many for a single day conference. We had provided this number because we wanted to give value for our ticket cost. In future we'll work harder to emphasise the quiet breakout space, networking opportunities, and the fact that all content is optional (and recorded). We will also consider the total runtime of the event. &lt;/p&gt;

&lt;p&gt;We also heard that attendees would have valued a variety in content - mentioning workshops and panels. We'll consider this when organising the next event. There was also feedback on the lack of Q&amp;amp;A sessions after talks. At You Got This we encourage conversation with speakers in breaks as this is often more comfortable for everyone.&lt;/p&gt;

&lt;h1&gt;
  
  
  Content
&lt;/h1&gt;

&lt;p&gt;Broadly, people enjoyed the talks. We invited three of our speakers to give keynotes, and selected the rest through a talk submission process. Talks were then blind-reviewed to get from the 100+ we had received to the top 6. All of our talks, including transcripts, can be found on the &lt;a href="https://yougotthis.io"&gt;You Got This website&lt;/a&gt;. Thank you again to our video sponsor Pusher for recording all of the talks on the day. &lt;/p&gt;

&lt;p&gt;Our talks switched between positive lessons to help attendees improve their careers, and more hard-hitting talks about some of the negative aspects of the tech industry. We're proud of the content our speakers provided, but in hindsight we could have ordered the talks to minimise context-switching between these two very contrasting viewpoints.&lt;/p&gt;

&lt;p&gt;We know sometimes it's hard to talk about the negative realities that some people have faced in tech. We want to make sure this doesn't put people off entering the industry, but equips them on what to do if they find themselves in such situations. We feel this &lt;strong&gt;is&lt;/strong&gt; important as these topics are not often covered at other conferences.&lt;/p&gt;

&lt;h1&gt;
  
  
  Food
&lt;/h1&gt;

&lt;p&gt;We had comment that we should have provided breakfast given the full-on day with an early start. We totally agree and generally try to provide breakfast at events that start pre-11am, but we didn't this year on a budgetary basis. We'll definitely try and do this next time.&lt;/p&gt;

&lt;p&gt;This said, we're happy to have provided an all-vegan event (with the exception of a cow milk option for teas/coffees). In future we'll continue to do this but try and use a local, independent caterer if possible.&lt;/p&gt;

&lt;p&gt;We had a food wastage plan in place thanks to the wonderful team at Millennium Point (our venue). We gave a local homeless shelter lots of drinks, sanitary products and the 10 portions of lunch that were left over. &lt;/p&gt;

&lt;h1&gt;
  
  
  Comfort and Experience
&lt;/h1&gt;

&lt;p&gt;We always try to focus on providing an inclusive and comfortable experience at You Got This. However this year, one failure on our part was turning all toilets into gender-neutral facilities without noting which ones had sanitary bins 🤦🏻‍♂️. I think this is a great example of how having a more diverse team leads to a more inclusive event. Fortunately, this is a lesson that only needs to be learnt once. &lt;/p&gt;

&lt;h1&gt;
  
  
  The Roll Call
&lt;/h1&gt;

&lt;p&gt;Right, time for the thanks. &lt;/p&gt;

&lt;p&gt;Firstly thanks to our wonderful MCs and speakers for providing such amazing content - &lt;a href="https://twitter.com/jesslynnrose"&gt;Jess&lt;/a&gt;, &lt;a href="https://twitter.com/mrjesslynnrose"&gt;Matt&lt;/a&gt;, &lt;a href="https://twitter.com/KeziyahL"&gt;Keziyah&lt;/a&gt;, &lt;a href="https://twitter.com/MaximumGilliard"&gt;Matthew&lt;/a&gt;, &lt;a href="https://twitter.com/a_adewusi"&gt;Amina&lt;/a&gt;, &lt;a href="https://twitter.com/gawwrgi"&gt;Gargi&lt;/a&gt;, &lt;a href="https://twitter.com/mseckington"&gt;Melinda&lt;/a&gt;, &lt;a href="https://twitter.com/chatterboxCoder"&gt;Nathaniel&lt;/a&gt;, &lt;a href="https://twitter.com/yoursruthlessly"&gt;Ruth&lt;/a&gt;, &lt;a href="https://twitter.comdancparkes/"&gt;Dan&lt;/a&gt; and &lt;a href="https://twitter.com/RedRoxProjects"&gt;Amy&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Thank you to sponsors who helped us make this event feasible and accessible with a low ticket cost. They are: Auth0, Balsamiq, DigitalOcean, GitHub Education, Major League Hacking, Mozilla, Proactive, Pusher, Samsung Internet and Twilio.&lt;/p&gt;

&lt;p&gt;Thank you to the whole delivery team and venue staff - they made the event a joy to deliver. Big props to Sunny who did a lot of the planning and comms for the event.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.filmmakeratlarge.com/"&gt;Alex Frois&lt;/a&gt; filmed the talks, but also did a bunch of other little things that made our event easier to run. Andrew Howell was a great live captioner, &lt;a href="https://twitter.com/harshpalbhirth"&gt;Harshpal&lt;/a&gt; our photographer and &lt;a href="https://twitter.com/bevishalperry"&gt;Bevis&lt;/a&gt; who managed our social media coverage of the day.&lt;/p&gt;

&lt;h1&gt;
  
  
  So What's Next?
&lt;/h1&gt;

&lt;p&gt;This was the last event from the Underland Events team, but You Got This UK 2021 will still happen as a voluntary effort with some more people joining the organising team (news about this soon). It'll happen in early 2021 and will return to London.&lt;/p&gt;

&lt;p&gt;You may have also noticed that I specified 'UK'. We really want to encourage other teams around the world to run more events that focus on core skills. As a result we're framing You Got This as a series of community-run conferences which we will lend support to. If you are interested get in touch and we can discuss how this will work. &lt;/p&gt;

&lt;p&gt;In the meantime we are pleased to welcome &lt;a href="https://adulting.dev"&gt;Adulting.Dev&lt;/a&gt; to the network - an annual conference in New York run by the lovely &lt;a href="https://twitter.com/ShyRuparel"&gt;Shy Ruparel&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>retrospective</category>
      <category>events</category>
      <category>inclusion</category>
    </item>
    <item>
      <title>What to expect from You Got This 2020</title>
      <dc:creator>Kevin Lewis</dc:creator>
      <pubDate>Wed, 08 Jan 2020 08:56:40 +0000</pubDate>
      <link>https://dev.to/yougotthisconf/getting-the-most-from-you-got-this-2020-1n6e</link>
      <guid>https://dev.to/yougotthisconf/getting-the-most-from-you-got-this-2020-1n6e</guid>
      <description>&lt;p&gt;&lt;a href="https://2020.yougotthis.io"&gt;You Got This 2020&lt;/a&gt; is less than 2 weeks away. We're really excited, and wanted to talk more about why we're running the event and what you can expect.&lt;/p&gt;

&lt;h2&gt;
  
  
  But first, why?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://underland.events"&gt;The Underland team&lt;/a&gt; feel it's really important that we talk more about the non-technical skills that surround our industry but rarely get mentioned. Content about 'soft skills' (we call them 'core skills') and others that require emotional labour are a staple of many tech conferences, but often as only one or two talks in a side track. We wanted to build a conference where this was the main theme, and successfully ran 'You Got This!' for the first time last year. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--CYbCaK4K--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/x66a6yq6aitaf8mtc773.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--CYbCaK4K--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/x66a6yq6aitaf8mtc773.png" alt="Montage of photos from 2019's event" width="800" height="237"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In 2019 we were lucky to have amazing speakers covering topics like overcoming imposter syndrome, building good self-care rituals, managing money and morality &amp;amp; ethics in tech, among others. &lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/xdizooyxRjk"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Roll on 2020
&lt;/h2&gt;

&lt;p&gt;This year we're back and in Birmingham, with 9 great speakers across one day in one stream. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kqjsONIF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/p4lbjvcd0ahysnlbyro0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kqjsONIF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://thepracticaldev.s3.amazonaws.com/i/p4lbjvcd0ahysnlbyro0.png" alt="Millennium Point from outside, with a park in front of it" width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The event is in one of our favourite venues, Millennium Point, which is in the centre of Birmingham - right near Moor Street and New Street stations. We're kicking off talks at 10am and are running right through to 5:45pm with some networking drinks afterwards, but have built in lots of time to unwind, chat to people or take a break if needed. &lt;/p&gt;

&lt;h2&gt;
  
  
  Building an inclusive event
&lt;/h2&gt;

&lt;p&gt;At the very top of our list is making sure we build an environment where everyone has a great time, feels welcome and included in every activity. When people signed up we asked them what we can do to make the event more comfortable. Here's a summary of the key things we have been able to organise in response:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A quiet space people can use for having a break, quiet contemplation or prayer. &lt;/li&gt;
&lt;li&gt;All toilets are gender neutral - 'with urinals', 'without urinals' and 'accessible' options. &lt;/li&gt;
&lt;li&gt;All food provided is vegan. Other dietary requirements have been factored in and food labelling will be clear.&lt;/li&gt;
&lt;li&gt;We'll be providing live captioning, as well as transcripts post-event. &lt;/li&gt;
&lt;li&gt;Our venue is wheelchair accessible with no-stair options for any attendee available on request. &lt;/li&gt;
&lt;li&gt;This is a dry event, including networking drinks at the end.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The talks
&lt;/h2&gt;

&lt;p&gt;We have 9 talks throughout the day, and the &lt;a href="https://2020.yougotthis.io/schedule/"&gt;full schedule is online&lt;/a&gt;. We're excited about all the talks this year. If you haven't seen the lineup yet - it's really wonderful, topics include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The dangers of unconditional job love&lt;/li&gt;
&lt;li&gt;Investing in your future&lt;/li&gt;
&lt;li&gt;Finding mentors even when you don't know how &lt;/li&gt;
&lt;li&gt;Making your work visible in your organisation&lt;/li&gt;
&lt;li&gt;One aimed more at managers - developing your developers&lt;/li&gt;
&lt;li&gt;Making your first days in a new job count&lt;/li&gt;
&lt;li&gt;How company culture affects performance reviews&lt;/li&gt;
&lt;li&gt;Unionisation in tech &lt;/li&gt;
&lt;li&gt;Knowing when to walk away from a job&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Along with last year's talks our conference is becoming a really powerful bank of resources for people, not just in tech, but across creative industries. &lt;/p&gt;

&lt;h2&gt;
  
  
  My top tips to get the most from You Got This
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Actively listen
&lt;/h3&gt;

&lt;p&gt;We're all guilty of spending many conference sessions in our laptops squeezing out some more work, or distracted by Twitter. Try and actively listen to the talks as they happen and don't worry too much about notes - all the talks will be recorded with transcripts so you can always refer back to them later. &lt;/p&gt;

&lt;h3&gt;
  
  
  2. Talk to people
&lt;/h3&gt;

&lt;p&gt;This is a rare space where talking about the thoughts, feelings and concerns you may have as people in tech is absolutely encouraged. You'll be surrounded by your peers, sponsors who see the value of talking about these themes, and our knowledgeable speakers who will be happy to share a conversation in the breaks. &lt;/p&gt;

&lt;p&gt;Everyone is friendly - if they weren't, this is likely not the type of event they'd be at. If you need help or just someone to talk to feel free to approach any of our team and we'll be there for you. &lt;/p&gt;

&lt;h3&gt;
  
  
  3. Listen to your body
&lt;/h3&gt;

&lt;p&gt;Actively listening, talking to people, and just being at conferences in general is exhausting - we know this. If you're struggling to concentrate, need a break or just need to skip a session you are encouraged to do so. &lt;/p&gt;

&lt;p&gt;We have a quiet room, but also feel free to leave and get some fresh air outside. We'll be happy for you to return when you're ready. &lt;/p&gt;

&lt;h1&gt;
  
  
  We are so excited!
&lt;/h1&gt;

&lt;p&gt;The community of people who attend our events is what makes them special, and we're really excited to be able to run You Got This again. If you have any questions in the meantime feel free to reach out and we'll do what we can to help. 💖&lt;/p&gt;

</description>
      <category>conference</category>
      <category>eventsinyourcity</category>
      <category>events</category>
    </item>
  </channel>
</rss>
