Create vcards post

master
jowj 5 years ago
parent 2c15fd516a
commit cf0c199dd2

@ -0,0 +1,89 @@
---
title: vcards
categories: personal
---
this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting "Computer Things" to a usable state for my grandmother was pretty rough.
One of the things that was unexpectedly frustrating was transferring stuff (photos, contacts, whatever) from my granddad's account to my grandmothers. as near as i can tell, a different family member had been helping my grandmother and closed several of my grandfather's old accounts. including email accounts and /iCloud/ accounts.
normally, transferring contacts from one persons icloud to another's is pretty straight forward (there's an export button on icloud.com), but if you can't succesfully auth to icloud it gets a lot trickier. there's probably a few ways to do this, but the tack i ended up taking was:
1. find a totally different source for the contacts (in this case, my grandfather's outlook 2010 install)
2. export those contacts to vcards
3. import those vcards to icloud.com under the new account
That is the bones of what happened, but the details kept screwing me over.
first, outlook 2010 contact exports by default come out in an outlook specific format (.msg) that cannot be imported into icloud. ok well fine, surely there's a straight forward way to deal with that.
good news: you can directly export contacts from outlook to vcf
bad news: its fucking hidden behind a "send as business card" dialogue option that is fucking unintuitive. thanks 2010 microsoft.
worse news: it sends a very old .vcf format, 2.1. The minimum I could get working with icloud was 3.0
ok well surely you can convert the 2.1 version to 3.0? in fact, what is even the difference? here is some wikipedia examples:
```
BEGIN:VCARD
VERSION:2.1
N:Gump;Forrest;;Mr.
FN:Forrest Gump
ORG:Bubba Gump Shrimp Co.
TITLE:Shrimp Man
PHOTO;GIF:http://www.example.com/dir_photos/my_photo.gif
TEL;WORK;VOICE:(111) 555-1212
TEL;HOME;VOICE:(404) 555-1212
ADR;WORK;PREF:;;100 Waters Edge;Baytown;LA;30314;United States of America
LABEL;WORK;PREF;ENCODING=QUOTED-PRINTABLE;CHARSET=UTF-8:100 Waters Edge=0D=
=0ABaytown\, LA 30314=0D=0AUnited States of America
ADR;HOME:;;42 Plantation St.;Baytown;LA;30314;United States of America
LABEL;HOME;ENCODING=QUOTED-PRINTABLE;CHARSET=UTF-8:42 Plantation St.=0D=0A=
Baytown, LA 30314=0D=0AUnited States of America
EMAIL:forrestgump@example.com
REV:20080424T195243Z
END:VCARD
```
```
BEGIN:VCARD
VERSION:3.0
N:Gump;Forrest;;Mr.;
FN:Forrest Gump
ORG:Bubba Gump Shrimp Co.
TITLE:Shrimp Man
PHOTO;VALUE=URI;TYPE=GIF:http://www.example.com/dir_photos/my_photo.gif
TEL;TYPE=WORK,VOICE:(111) 555-1212
TEL;TYPE=HOME,VOICE:(404) 555-1212
ADR;TYPE=WORK,PREF:;;100 Waters Edge;Baytown;LA;30314;United States of America
LABEL;TYPE=WORK,PREF:100 Waters Edge\nBaytown\, LA 30314\nUnited States of America
ADR;TYPE=HOME:;;42 Plantation St.;Baytown;LA;30314;United States of America
LABEL;TYPE=HOME:42 Plantation St.\nBaytown\, LA 30314\nUnited States of America
EMAIL:forrestgump@example.com
REV:2008-04-24T19:52:43Z
END:VCARD
```
the thing that caused most of the issues for the contact set I was working on was the ~TEL;~ lines. the type declarations, when present, needed to be altered. to fix this is pretty simple:
```
cat /path/to/dir/* > all-outlook-contacts.vcf
sed -e 's/TEL;/TEL;TYPE=/g' -e 's/VERSION:2.1/VERSION:3.0/g' ../new-contacts/all-outlook-contacts.vcf > ../new-contacts/all-CLEANED.vcf
```
yes thats right, ' i am very 3 now ' is most of the work lmao. this worked, but I still couldn't import the vcf files to icloud - it would think for a while, then error saying that at least one of the entries was unreadable. i skimmed through the file visually and found some lines that were interesting - on a few cards there was a LANGUAGE declaration:
```
cat ../new-contacts/all-outlook-contacts.vcf | grep =en
>N;LANGUAGE=en-us:last first
>N;LANGUAGE=en-us:last first
>N;LANGUAGE=en-us:last first
>N;LANGUAGE=en-us:last first
```
wtf is that, that isn't mentioned in the spec until vcards 4.0
my best guess is that this is just some Fancy Colour from outlook specifically, because nobody else was talking about this based on quick google searches. I just removed it from these 4 cards and went on to import them to icloud succesfully.
the lesson i learned during this process is:
- don't close people's accounts right away; make sure everything is prepared before accounts are closed.
- by the time i die i should establish a fucking runbook to go over the necessary steps for people who aren't technically inclined
- open formats are great

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -20,7 +20,7 @@
<meta property="og:url" content="http://localhost:4000/" />
<meta property="og:site_name" content="josiah ledbetter" />
<script type="application/ld+json">
{"@type":"WebSite","url":"http://localhost:4000/","headline":"josiah ledbetter","name":"josiah ledbetter","@context":"http://schema.org"}</script>
{"name":"josiah ledbetter","@type":"WebSite","url":"http://localhost:4000/","headline":"josiah ledbetter","@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -24,7 +24,7 @@
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-15T00:00:00-05:00" />
<script type="application/ld+json">
{"@type":"BlogPosting","url":"http://localhost:4000/personal/2019/04/15/friendsgiving.html","headline":"friendsgiving","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/personal/2019/04/15/friendsgiving.html"},"description":"look at how pretty this fucking table is my sister made a bunch of that stuff there; the candles were all melted on to the wood and the gourds that they were resting on; the wreathes of Whatever Plant were picked from her garden; even the table it all sat on was made by my sister and her family","@context":"http://schema.org"}</script>
{"description":"look at how pretty this fucking table is my sister made a bunch of that stuff there; the candles were all melted on to the wood and the gourds that they were resting on; the wreathes of Whatever Plant were picked from her garden; even the table it all sat on was made by my sister and her family","@type":"BlogPosting","url":"http://localhost:4000/personal/2019/04/15/friendsgiving.html","headline":"friendsgiving","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/personal/2019/04/15/friendsgiving.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -24,7 +24,7 @@
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-15T00:00:00-05:00" />
<script type="application/ld+json">
{"@type":"BlogPosting","url":"http://localhost:4000/personal/2019/04/15/lt_thanksgiving.html","headline":"lt-friendsgiving","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/personal/2019/04/15/lt_thanksgiving.html"},"description":"seattle we flew in to seattle from austin at 845 am. dont take that flight it was fucking horrible but it did give us a full day there despite flying for 4 hours.","@context":"http://schema.org"}</script>
{"description":"seattle we flew in to seattle from austin at 845 am. dont take that flight it was fucking horrible but it did give us a full day there despite flying for 4 hours.","@type":"BlogPosting","url":"http://localhost:4000/personal/2019/04/15/lt_thanksgiving.html","headline":"lt-friendsgiving","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/personal/2019/04/15/lt_thanksgiving.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -24,7 +24,7 @@
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-15T00:00:00-05:00" />
<script type="application/ld+json">
{"@type":"BlogPosting","url":"http://localhost:4000/personal/2019/04/15/rad_boys_only.html","headline":"rad boys only","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/personal/2019/04/15/rad_boys_only.html"},"description":"rad boys only we are boys and we are rad sometimes our cooking makes us sad","@context":"http://schema.org"}</script>
{"description":"rad boys only we are boys and we are rad sometimes our cooking makes us sad","@type":"BlogPosting","url":"http://localhost:4000/personal/2019/04/15/rad_boys_only.html","headline":"rad boys only","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/personal/2019/04/15/rad_boys_only.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>

@ -0,0 +1,141 @@
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Begin Jekyll SEO tag v2.5.0 -->
<title>vcards | josiah ledbetter</title>
<meta name="generator" content="Jekyll v3.7.4" />
<meta property="og:title" content="vcards" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting “Computer Things” to a usable state for my grandmother was pretty rough." />
<meta property="og:description" content="this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting “Computer Things” to a usable state for my grandmother was pretty rough." />
<link rel="canonical" href="http://localhost:4000/personal/2019/04/18/vcards.html" />
<meta property="og:url" content="http://localhost:4000/personal/2019/04/18/vcards.html" />
<meta property="og:site_name" content="josiah ledbetter" />
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-18T00:00:00-05:00" />
<script type="application/ld+json">
{"description":"this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting “Computer Things” to a usable state for my grandmother was pretty rough.","@type":"BlogPosting","url":"http://localhost:4000/personal/2019/04/18/vcards.html","headline":"vcards","dateModified":"2019-04-18T00:00:00-05:00","datePublished":"2019-04-18T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/personal/2019/04/18/vcards.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>
<body>
<div id="container">
<div class="inner">
<header>
<h1>josiah ledbetter</h1>
</header>
<section id="downloads" class="clearfix">
</section>
<hr>
<section id="main_content">
<p>this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting “Computer Things” to a usable state for my grandmother was pretty rough.</p>
<p>One of the things that was unexpectedly frustrating was transferring stuff (photos, contacts, whatever) from my granddads account to my grandmothers. as near as i can tell, a different family member had been helping my grandmother and closed several of my grandfathers old accounts. including email accounts and /iCloud/ accounts.</p>
<p>normally, transferring contacts from one persons icloud to anothers is pretty straight forward (theres an export button on icloud.com), but if you cant succesfully auth to icloud it gets a lot trickier. theres probably a few ways to do this, but the tack i ended up taking was:</p>
<ol>
<li>find a totally different source for the contacts (in this case, my grandfathers outlook 2010 install)</li>
<li>export those contacts to vcards</li>
<li>import those vcards to icloud.com under the new account</li>
</ol>
<p>That is the bones of what happened, but the details kept screwing me over.</p>
<p>first, outlook 2010 contact exports by default come out in an outlook specific format (.msg) that cannot be imported into icloud. ok well fine, surely theres a straight forward way to deal with that.</p>
<p>good news: you can directly export contacts from outlook to vcf
bad news: its fucking hidden behind a “send as business card” dialogue option that is fucking unintuitive. thanks 2010 microsoft.
worse news: it sends a very old .vcf format, 2.1. The minimum I could get working with icloud was 3.0</p>
<p>ok well surely you can convert the 2.1 version to 3.0? in fact, what is even the difference? here is some wikipedia examples:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>BEGIN:VCARD
VERSION:2.1
N:Gump;Forrest;;Mr.
FN:Forrest Gump
ORG:Bubba Gump Shrimp Co.
TITLE:Shrimp Man
PHOTO;GIF:http://www.example.com/dir_photos/my_photo.gif
TEL;WORK;VOICE:(111) 555-1212
TEL;HOME;VOICE:(404) 555-1212
ADR;WORK;PREF:;;100 Waters Edge;Baytown;LA;30314;United States of America
LABEL;WORK;PREF;ENCODING=QUOTED-PRINTABLE;CHARSET=UTF-8:100 Waters Edge=0D=
=0ABaytown\, LA 30314=0D=0AUnited States of America
ADR;HOME:;;42 Plantation St.;Baytown;LA;30314;United States of America
LABEL;HOME;ENCODING=QUOTED-PRINTABLE;CHARSET=UTF-8:42 Plantation St.=0D=0A=
Baytown, LA 30314=0D=0AUnited States of America
EMAIL:forrestgump@example.com
REV:20080424T195243Z
END:VCARD
</code></pre></div></div>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>BEGIN:VCARD
VERSION:3.0
N:Gump;Forrest;;Mr.;
FN:Forrest Gump
ORG:Bubba Gump Shrimp Co.
TITLE:Shrimp Man
PHOTO;VALUE=URI;TYPE=GIF:http://www.example.com/dir_photos/my_photo.gif
TEL;TYPE=WORK,VOICE:(111) 555-1212
TEL;TYPE=HOME,VOICE:(404) 555-1212
ADR;TYPE=WORK,PREF:;;100 Waters Edge;Baytown;LA;30314;United States of America
LABEL;TYPE=WORK,PREF:100 Waters Edge\nBaytown\, LA 30314\nUnited States of America
ADR;TYPE=HOME:;;42 Plantation St.;Baytown;LA;30314;United States of America
LABEL;TYPE=HOME:42 Plantation St.\nBaytown\, LA 30314\nUnited States of America
EMAIL:forrestgump@example.com
REV:2008-04-24T19:52:43Z
END:VCARD
</code></pre></div></div>
<p>the thing that caused most of the issues for the contact set I was working on was the ~TEL;~ lines. the type declarations, when present, needed to be altered. to fix this is pretty simple:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cat /path/to/dir/* &gt; all-outlook-contacts.vcf
sed -e 's/TEL;/TEL;TYPE=/g' -e 's/VERSION:2.1/VERSION:3.0/g' ../new-contacts/all-outlook-contacts.vcf &gt; ../new-contacts/all-CLEANED.vcf
</code></pre></div></div>
<p>yes thats right, i am very 3 now is most of the work lmao. this worked, but I still couldnt import the vcf files to icloud - it would think for a while, then error saying that at least one of the entries was unreadable. i skimmed through the file visually and found some lines that were interesting - on a few cards there was a LANGUAGE declaration:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cat ../new-contacts/all-outlook-contacts.vcf | grep =en
&gt;N;LANGUAGE=en-us:last first
&gt;N;LANGUAGE=en-us:last first
&gt;N;LANGUAGE=en-us:last first
&gt;N;LANGUAGE=en-us:last first
</code></pre></div></div>
<p>wtf is that, that isnt mentioned in the spec until vcards 4.0</p>
<p>my best guess is that this is just some Fancy Colour from outlook specifically, because nobody else was talking about this based on quick google searches. I just removed it from these 4 cards and went on to import them to icloud succesfully.</p>
<p>the lesson i learned during this process is:</p>
<ul>
<li>dont close peoples accounts right away; make sure everything is prepared before accounts are closed.</li>
<li>by the time i die i should establish a fucking runbook to go over the necessary steps for people who arent technically inclined</li>
<li>open formats are great</li>
</ul>
</section>
<footer>
</footer>
</div>
</div>
</body>
</html>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -43,6 +43,10 @@
<ul>
<li><a href="/personal/2019/04/18/vcards.html">vcards</a></li>
<li><a href="/personal/2019/04/15/rad_boys_only.html">rad boys only</a></li>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -24,7 +24,7 @@
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-15T00:00:00-05:00" />
<script type="application/ld+json">
{"@type":"BlogPosting","url":"http://localhost:4000/projects/2019/04/15/agares.html","headline":"agares","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/projects/2019/04/15/agares.html"},"description":"agares, a multi armed demon well, originally i dont think the multi armed part was mentioned in the “list of demons” i found on the internet. now, though, agares is absolutely multi armed because I keep adding so much bullshit to this project.","@context":"http://schema.org"}</script>
{"description":"agares, a multi armed demon well, originally i dont think the multi armed part was mentioned in the “list of demons” i found on the internet. now, though, agares is absolutely multi armed because I keep adding so much bullshit to this project.","@type":"BlogPosting","url":"http://localhost:4000/projects/2019/04/15/agares.html","headline":"agares","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/projects/2019/04/15/agares.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -24,7 +24,7 @@
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-15T00:00:00-05:00" />
<script type="application/ld+json">
{"@type":"BlogPosting","url":"http://localhost:4000/projects/2019/04/15/hosting_static_sites_on_s3.html","headline":"Hosting static sites on S3","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/projects/2019/04/15/hosting_static_sites_on_s3.html"},"description":"Hosting static sites on S3","@context":"http://schema.org"}</script>
{"description":"Hosting static sites on S3","@type":"BlogPosting","url":"http://localhost:4000/projects/2019/04/15/hosting_static_sites_on_s3.html","headline":"Hosting static sites on S3","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/projects/2019/04/15/hosting_static_sites_on_s3.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -24,7 +24,7 @@
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-15T00:00:00-05:00" />
<script type="application/ld+json">
{"@type":"BlogPosting","url":"http://localhost:4000/projects/2019/04/15/mojojojo_bot.html","headline":"mojojojo-bot","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/projects/2019/04/15/mojojojo_bot.html"},"description":"mojojojo-bot this was relatively easy to build initially (straight from a template), but building any functionality that I wanted into was, as expected, hard. because i am garbage at python.","@context":"http://schema.org"}</script>
{"description":"mojojojo-bot this was relatively easy to build initially (straight from a template), but building any functionality that I wanted into was, as expected, hard. because i am garbage at python.","@type":"BlogPosting","url":"http://localhost:4000/projects/2019/04/15/mojojojo_bot.html","headline":"mojojojo-bot","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/projects/2019/04/15/mojojojo_bot.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
@ -24,7 +24,7 @@
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-15T00:00:00-05:00" />
<script type="application/ld+json">
{"@type":"BlogPosting","url":"http://localhost:4000/projects/2019/04/15/workingcopy.html","headline":"editing files tracked in gif while on your phone","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/projects/2019/04/15/workingcopy.html"},"description":"editing files tracked in gif while on your phone","@context":"http://schema.org"}</script>
{"description":"editing files tracked in gif while on your phone","@type":"BlogPosting","url":"http://localhost:4000/projects/2019/04/15/workingcopy.html","headline":"editing files tracked in gif while on your phone","dateModified":"2019-04-15T00:00:00-05:00","datePublished":"2019-04-15T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/projects/2019/04/15/workingcopy.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>

@ -4,7 +4,7 @@
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=8bb325e95d122b26bb2ddb5e3304ccd6e7fb897d">
<link rel="stylesheet" href="/assets/css/style.css?v=2c15fd516a5923b61ef16c7030a397a7a75ce78e">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>

Loading…
Cancel
Save