<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ Travel - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ Browse thousands of programming tutorials written by experts. Learn Web Development, Data Science, DevOps, Security, and get developer career advice. ]]>
        </description>
        <link>https://www.freecodecamp.org/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ Travel - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Fri, 26 Jun 2026 17:32:35 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/news/tag/travel/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ How to Create a Travel Bucket List Map with Gatsby, React Leaflet, & Hygraph ]]>
                </title>
                <description>
                    <![CDATA[ Traveling is fun and we all have a lot of places we want to visit, but rarely do we have time to do it all at once. That’s what bucket lists are for! How can we create a custom mapping app that we can show all of our the destinations ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-create-a-travel-bucket-list-map-with-gatsby-react-leaflet-graphcms/</link>
                <guid isPermaLink="false">66b8e3580cedc1f2a4f7069b</guid>
                
                    <category>
                        <![CDATA[ beginners guide ]]>
                    </category>
                
                    <category>
                        <![CDATA[ cms ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Gatsby ]]>
                    </category>
                
                    <category>
                        <![CDATA[ GatsbyJS ]]>
                    </category>
                
                    <category>
                        <![CDATA[ graphcms ]]>
                    </category>
                
                    <category>
                        <![CDATA[ headless cms ]]>
                    </category>
                
                    <category>
                        <![CDATA[ JavaScript ]]>
                    </category>
                
                    <category>
                        <![CDATA[ leaflet ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Mapping ]]>
                    </category>
                
                    <category>
                        <![CDATA[ maps ]]>
                    </category>
                
                    <category>
                        <![CDATA[ react-leaflet ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ technology ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Tutorial ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Colby Fayock ]]>
                </dc:creator>
                <pubDate>Tue, 23 Jun 2020 14:45:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2020/06/travel-bucket-list.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>Traveling is fun and we all have a lot of places we want to visit, but rarely do we have time to do it all at once. That’s what bucket lists are for! How can we create a custom mapping app that we can show all of our the destinations on our bucket list?</p>
<p>Note: As of July 2022, GraphCMS is now <a target="_blank" href="https://hygraph.com/">Hygraph</a>.</p>
<ul>
<li><a class="post-section-overview" href="#heading-what-are-we-going-to-build">What are we going to build?</a></li>
<li><a class="post-section-overview" href="#heading-step-1-creating-a-new-app-with-gatsby-starter-leaflet">Step 1: Creating a new app with Gatsby Starter Leaflet</a></li>
<li><a class="post-section-overview" href="#heading-step-2-creating-and-managing-a-list-of-travel-locations-with-graphcms">Step 2: Creating and managing a list of travel locations with GraphCMS</a></li>
<li><a class="post-section-overview" href="#heading-step-3-querying-our-graphcms-location-data-with-gatsby-and-graphql">Step 3: Querying our GraphCMS location data with Gatsby and GraphQL</a></li>
<li><a class="post-section-overview" href="#heading-step-4-creating-a-bucket-list-of-destinations-and-adding-them-to-the-map">Step 4: Creating a bucket list of destinations and adding them to the map</a></li>
<li><a class="post-section-overview" href="#heading-what-else-other-features-can-we-add-to-our-app">What else other features can we add to our app?</a></li>
<li><a class="post-section-overview" href="#heading-want-to-learn-more-about-maps">Want to learn more about maps?</a></li>
</ul>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/isbr52VKjb0" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<h2 id="heading-what-are-we-going-to-build">What are we going to build?</h2>
<p>We’re going to build a mapping app with <a target="_blank" href="https://www.gatsbyjs.org/">Gatsby</a> managed by a CMS that will both display markers on a map and show our locations in a simple text-based list for our bucket list locations.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/travel-bucket-list-demo.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Demo of a Travel Bucket List mapping app</em></p>
<p>We’ll spin up the app with a <a target="_blank" href="https://github.com/colbyfayock/gatsby-starter-leaflet">Gatsby Starter for Leaflet</a> and then we’ll use <a target="_blank" href="https://graphcms.com/">GraphCMS</a> to create and manage the list of locations for our map!</p>
<h2 id="heading-woah-a-mapping-app">Woah, a mapping app?</h2>
<p>Yup. If you haven't played with maps before, don't be discouraged! It's not as bad as you probably think. If you'd rather start with mapping basics, you can  <a target="_blank" href="https://www.freecodecamp.org/news/easily-spin-up-a-mapping-app-in-react-with-leaflet/">read more about how mapping works</a>  first.</p>
<h2 id="heading-step-1-creating-a-new-app-with-gatsby-starter-leaflet">Step 1: Creating a new app with Gatsby Starter Leaflet</h2>
<p>We’ll start off with Gatsby Starter Leaflet. This is going to give us a basic React application with our mapping tools already built in.</p>
<h3 id="heading-creating-a-new-gatsby-app-with-gatsby-starter-leaflet">Creating a new Gatsby app with Gatsby Starter Leaflet</h3>
<p>To get started, navigate to where you want to create your new app and run:</p>
<pre><code class="lang-shell">gatsby new my-travel-bucket-list https://github.com/colbyfayock/gatsby-starter-leaflet
</code></pre>
<p><em>Note: you can replace <code>my-travel-bucket-list</code> with whatever you want. This will be used to create the new folder for the app.</em></p>
<p>Once you run that, Gatsby will pull down the Starter and install the dependencies. After it’s complete, navigate to that directory and run the development command:</p>
<pre><code class="lang-shell">cd my-travel-bucket-list
yarn develop
# or
npm run develop
</code></pre>
<p>Once it’s finished location, your app should be ready to go!</p>
<h3 id="heading-cleaning-our-some-demo-code">Cleaning our some demo code</h3>
<p>Because we’re using a Starter, it has a little bit of demo code. Let’s clean that out to avoid any confusion.</p>
<p>Open up the <code>src/pages/index.js</code> file.</p>
<p>First, remove everything inside of <code>mapEffect</code> except the first line and set up an alias for <code>leafletElement</code> to <code>map</code>:</p>
<pre><code class="lang-js"><span class="hljs-keyword">async</span> <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">mapEffect</span>(<span class="hljs-params">{ leafletElement: map } = {}</span>) </span>{
  <span class="hljs-keyword">if</span> ( !map ) <span class="hljs-keyword">return</span>;
}
</code></pre>
<p>With that gone, we can remove the <code>markerRef</code> definition at the top of the <code>IndexPage</code> component, remove the <code>ref={markerRef}</code> prop from our <code>&lt;Marker&gt;</code> component, and the <code>useRef</code> import next to React.</p>
<p>Now, we can remove all of the variables that start with <code>popup</code> and <code>time</code>, including:</p>
<ul>
<li>timeToZoom</li>
<li>timeToOpenPopupAfterZoom</li>
<li>timeToUpdatePopupAfterZoom</li>
<li>popupContentHello</li>
<li>popupContentGatsby</li>
</ul>
<p>Lastly, you can remove all of the following lines:</p>
<pre><code class="lang-js"><span class="hljs-keyword">import</span> L <span class="hljs-keyword">from</span> <span class="hljs-string">'leaflet'</span>;
...
import { promiseToFlyTo, getCurrentLocation } <span class="hljs-keyword">from</span> <span class="hljs-string">'lib/map'</span>;
...
import gatsby_astronaut <span class="hljs-keyword">from</span> <span class="hljs-string">'assets/images/gatsby-astronaut.jpg'</span>;
...
const ZOOM = <span class="hljs-number">10</span>;
</code></pre>
<p>Once done, we should be ready to go with a basic app with a map!</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/new-app-gatsby-starter-leaflet.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>New app with Gatsby Starter Leaflet</em></p>
<p><a target="_blank" href="https://github.com/colbyfayock/my-travel-bucket-list/commit/63eed5a7a208ede6f8eeec44e0c08b594b407360">Follow along with the commit!</a></p>
<h2 id="heading-step-2-creating-and-managing-a-list-of-travel-locations-with-graphcms">Step 2: Creating and managing a list of travel locations with GraphCMS</h2>
<h3 id="heading-creating-a-graphcms-account">Creating a GraphCMS account</h3>
<p>To get started with GraphCMS, you’ll need an account. I’m not going to walk you through this part, but the good news is they have a generous free tier that makes it easy to sign up for us to use for our demo!</p>
<p><a target="_blank" href="https://app.graphcms.com/signup">Sign up for GraphCMS</a></p>
<p>Alternatively, if you already have an account, you can make sure you’re logged in.</p>
<h3 id="heading-creating-a-new-graphcms-project">Creating a new GraphCMS project</h3>
<p>Once logged in, we’ll want to create a new project. We’re going to create one manually, so once at the <a target="_blank" href="https://app.graphcms.com/">GraphCMS Dashboard</a>, select <strong>Create new project</strong>:</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-create-new-project.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Creating a new project in GraphCMS</em></p>
<p>Here, you can enter whatever you’d like for the <strong>Name</strong> and <strong>Description</strong> such as:</p>
<ul>
<li>Name: My Travel Bucket List</li>
<li>Description: The locations that I want to travel to some day!</li>
</ul>
<p>Below that you’ll see a map where you’ll select a <strong>Region</strong>. This is where your database data will live, so while it probably doesn’t matter too much for our purposes, you can choose the one that’s closest to you.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-configure-new-project.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Configuring a new project in GraphCMS</em></p>
<p>After you select your options, go ahead and click <strong>Create Project</strong>.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-select-plan.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Selecting the Personal plan in GraphCMS</em></p>
<p>Next, you’ll be presented with billing options. Since we’re just creating a demo, under <strong>Personal</strong> select <strong>Continue</strong> at which point we’ll be dropped into our new GraphCMS project dashboard.</p>
<h3 id="heading-creating-a-new-content-model-schema-with-graphcms">Creating a new Content Model Schema with GraphCMS</h3>
<p>In GraphCMS, a Content Model refers to a specific type of data that has specific properties associated with it. In our case, our Model will be a Destination, which will be defined by a Name and a Location.</p>
<p>First, navigate to the <strong>Schema</strong> section of GraphCMS in the left sidebar and select <strong>Create Model</strong>.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-create-new-schema-model.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Creating a new Schema Model in GraphCMS</em></p>
<p>Once selected, you’ll see a popup that asks for a bit more information. Here, you can type in “Destination” as the <strong>Display Name</strong>, which will also fill in most of the other fields. We’ll leave those as is.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-configure-new-content-model.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Configuring a new Model in GraphCMS</em></p>
<p>Feel free to add a description if you’d like, but it’s not required. Then select <strong>Create model</strong>.</p>
<p>Now that we have our Model, we need our properties.</p>
<p>First, select <strong>Single line text</strong> in the right list of fields and add a <strong>Display Name</strong> of “Name”. This will also fill out <strong>App Id</strong> which you can leave as is. Then click <strong>Create</strong>.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-configure-text-field.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Adding and configuring a new text field in GraphCMS</em></p>
<p>Next, scroll down in the field options on the right and under <strong>Location</strong> select <strong>Map</strong>. Add “Location” as the <strong>Display Name</strong>, which will set the <strong>App Id</strong> as “location” which you can leave as is. Then same as before, click <strong>Create</strong>.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-configure-new-map-field.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Adding and configuring a new map field in GraphCMS</em></p>
<p>Now we have a Content Model which we’ll use to create our locations!</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-destination-content-model.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Destination content Model in GraphCMS</em></p>
<h3 id="heading-creating-our-locations">Creating our locations</h3>
<p>Finally, let’s create our locations. Navigate over to <strong>Content</strong> in the GraphCMS dashboard, make sure you’ve selected <strong>Destination</strong> under <strong>System</strong> (should be the only one), and select <strong>Create New</strong>.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-add-new-content.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Create new Destination Content in GraphCMS</em></p>
<p>Now we can start adding all of our locations! First, add the name of your location in the <strong>Name</strong> field, then you can use the <strong>Search</strong> box under <strong>Location</strong> to find that location on the map.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-create-new-destination-content-item.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Adding a new Destination Content item in GraphCMS</em></p>
<p>Once you’re good, hit <strong>Save and publish</strong>. This will create your first location!</p>
<p>Follow those same steps and create as many locations as you want.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-destination-content-items.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>List of Destination Content items in GraphCMS</em></p>
<p>We’ll use these for our map and bucket list.</p>
<h2 id="heading-step-3-querying-our-graphcms-location-data-with-gatsby-and-graphql">Step 3: Querying our GraphCMS location data with Gatsby and GraphQL</h2>
<p>Now that we have our locations, let’s use them!</p>
<h3 id="heading-adding-a-plugin-to-gatsby-to-query-our-graphql-data">Adding a plugin to Gatsby to query our GraphQL data</h3>
<p>First, we need to <a target="_blank" href="https://www.gatsbyjs.org/packages/gatsby-source-graphql/">add a new plugin</a> to our Gatsby project to query our GraphQL data. In your terminal make sure your development server isn’t running and run:</p>
<pre><code class="lang-shell">yarn add gatsby-source-graphql
# or
npm install gatsby-source-graphql
</code></pre>
<p>Next, open up your <code>gatsby-config.js</code> file in the root of your project and add the following to your plugins:</p>
<pre><code class="lang-json">{
  resolve: 'gatsby-source-graphql',
  options: {
    typeName: 'GCMS',
    fieldName: 'gcms',
    url: '[API ENDPOINT]',
  }
}
</code></pre>
<p>This will be what sources our data from GraphCMS, but we need an endpoint.</p>
<h3 id="heading-finding-our-api-endpoint-for-graphcms">Finding our API endpoint for GraphCMS</h3>
<p>Open back up your browser and head over to your GraphCMS project. After selecting <strong>Settings</strong> in the left navigation, select <strong>API Access</strong>.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-api-access.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>API Access in GraphCMS</em></p>
<p>Before we copy our API Endpoint, first we need to update our permissions so we can query our API. Under <strong>Public API Permissions</strong>, check the box next to <strong>Content from stage Published</strong> and click <strong>Save</strong>.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-configure-api-access.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Configuring API permissions in GraphCMS</em></p>
<p>Next, copy the URL under <strong>Endpoints</strong>:</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/graphcms-copy-api-access-endpoint.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Copying API Endpoint in GraphCMS</em></p>
<p>And paste that in to your <code>gatsby-config.js</code> file that we modified above:</p>
<pre><code class="lang-json">{
  resolve: 'gatsby-source-graphql',
  options: {
    typeName: 'GCMS',
    fieldName: 'gcms',
    url: 'https:<span class="hljs-comment">//[region-id].graphcms.com/v2/[project-id]/master',</span>
  },
},
</code></pre>
<p><em>Note: your URL will have actual values inside of <code>[region-id]</code> and <code>[project-id]</code>.</em></p>
<p>Save your <code>gatsby-config.js</code> file and start your development server backup (<code>yarn develop</code>) and we’re ready to go!</p>
<h3 id="heading-querying-our-locations-via-graphql">Querying our locations via GraphQL</h3>
<p>Finally, let’s actually query our data so that we’ll be able to use it in our app.</p>
<p>We’re going to create a new <a target="_blank" href="https://reactjs.org/docs/hooks-reference.html">React Hook</a> that we’ll be able to use to grab our locations anywhere within our app.</p>
<p>Under <code>src/hooks/index.js</code>, add the following line to the existing list:</p>
<pre><code class="lang-js"><span class="hljs-keyword">export</span> { <span class="hljs-keyword">default</span> <span class="hljs-keyword">as</span> useDestinations } <span class="hljs-keyword">from</span> <span class="hljs-string">'./useDestinations'</span>;
</code></pre>
<p>This will allow us to more conveniently import our hook which we’ll create next.</p>
<p>Under <code>src/hooks</code>, create a new file <code>useDestinations.js</code> and paste in this code:</p>
<pre><code class="lang-js"><span class="hljs-keyword">import</span> { graphql, useStaticQuery } <span class="hljs-keyword">from</span> <span class="hljs-string">'gatsby'</span>;

<span class="hljs-keyword">export</span> <span class="hljs-keyword">default</span> <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">useDestinations</span>(<span class="hljs-params"></span>) </span>{
  <span class="hljs-keyword">const</span> { gcms = {} } = useStaticQuery( graphql<span class="hljs-string">`
    query {
      gcms {
        destinations {
          id
          name
          location {
            latitude
            longitude
          }
        }
      }
    }
  `</span> );

  <span class="hljs-keyword">let</span> { destinations } = gcms;

  <span class="hljs-keyword">return</span> {
    destinations,
  };
}
</code></pre>
<p>Here, we’re:</p>
<ul>
<li>Importing the <code>graphql</code> and <code>useStaticQuery</code> utilities from Gatsby</li>
<li>We’re creating a new function (or hook) that is exported by default</li>
<li>In that function, we’re using <code>useStaticQuery</code> to create a new GraphQL query which asks GraphCMS to return the data structure we defined.</li>
<li>That query returns a value which we destructure immediately to grab the <code>gmcs</code> object</li>
<li>We destructure <code>destinations</code> from <code>gmcs</code> and return it as part of a new object from our hook</li>
</ul>
<p>With this, we can now use our hook anywhere in our app!</p>
<p>Head over to your <code>src/pages/index.js</code> file, first import our new hook:</p>
<pre><code class="lang-js"><span class="hljs-keyword">import</span> { useDestinations } <span class="hljs-keyword">from</span> <span class="hljs-string">'hooks'</span>;
</code></pre>
<p>And at the top of the <code>IndexPage</code> component, query our data:</p>
<pre><code class="lang-js"><span class="hljs-keyword">const</span> { destinations } = useDestinations();
</code></pre>
<p>This puts all of our locations into the <code>destinations</code> variable. We can test that this works by console logging it out:</p>
<pre><code class="lang-js"><span class="hljs-built_in">console</span>.log(<span class="hljs-string">'destinations'</span>, destinations);
</code></pre>
<p>And once we open up our browser and look in our web developer tools console, we can see our location data!</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/gatsby-starter-leaflet-logging-graphcms-destinations.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Logging destinations data to the web console</em></p>
<h2 id="heading-step-4-creating-a-bucket-list-of-destinations-and-adding-them-to-the-map">Step 4: Creating a bucket list of destinations and adding them to the map</h2>
<p>We’re going to start with creating a simple text list of our destinations. This will let us see all of our destinations in an easy to read format.</p>
<h3 id="heading-creating-a-text-list-of-our-destinations">Creating a text list of our destinations</h3>
<p>Inside of our <code>IndexPage</code> and above “Still Getting Started?”, let’s add the following code:</p>
<pre><code class="lang-jsx">&lt;h2&gt;My Destinations&lt;/h2&gt;
<span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">ul</span>&gt;</span>
  { destinations.map(destination =&gt; {
    const { id, name } = destination;
    return <span class="hljs-tag">&lt;<span class="hljs-name">li</span> <span class="hljs-attr">key</span>=<span class="hljs-string">{id}</span>&gt;</span>{ name }<span class="hljs-tag">&lt;/<span class="hljs-name">li</span>&gt;</span>
  })}
<span class="hljs-tag">&lt;/<span class="hljs-name">ul</span>&gt;</span></span>
</code></pre>
<p>This code:</p>
<ul>
<li>Adds a new header for our list</li>
<li>Creates a new unordered list</li>
<li>Loops through our <code>destinations</code> and creates a new list item for each destination that include’s the location’s name</li>
</ul>
<p>Once we hit save and reload, we should see our list under our map!</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/app-adding-list-of-destinations.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>New basic list of destinations in the app</em></p>
<p>The list looks a little odd though right? We probably want to format it a little better to fit into the page.</p>
<p>Open up <code>src/assets/stylesheets/pages/_home.scss</code> and inside of the <code>.home-start</code> class, add:</p>
<pre><code class="lang-scss"><span class="hljs-selector-class">.home-start</span> {

  ...

  <span class="hljs-selector-tag">ul</span> {
    <span class="hljs-attribute">list-style</span>: none;
    <span class="hljs-attribute">padding</span>: <span class="hljs-number">0</span>;
    <span class="hljs-attribute">margin</span>: <span class="hljs-number">1.2em</span> <span class="hljs-number">0</span>;
  }
</code></pre>
<p>Let’s also modify the <code>h2</code> to space things out a little better:</p>
<pre><code class="lang-scss"><span class="hljs-selector-class">.home-start</span> {

  ...

  <span class="hljs-selector-tag">h2</span> {

    <span class="hljs-attribute">margin-top</span>: <span class="hljs-number">2em</span>;

    &amp;<span class="hljs-selector-pseudo">:first-child</span> {
      <span class="hljs-attribute">margin-top</span>: <span class="hljs-number">0</span>;
    }

  }
</code></pre>
<p>Once you hit save and reload, it should look a little better.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/app-fixing-styles-list-of-destinations.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Destinations in the app with cleaned up styles</em></p>
<p>Feel free to make additional changes, but we’ll leave it there for now.</p>
<h3 id="heading-adding-our-destinations-to-the-map">Adding our destinations to the map</h3>
<p>Now we can finally add our destinations to the map!</p>
<p>Inside of our <code>&lt;Map&gt;</code> component, we already have a <code>&lt;Marker&gt;</code>. This allows us to easily add a marker to the map given a position. We’ll take this concept and combine it with our text list to add our locations to the map.</p>
<p>Let’s update our <code>&lt;Map&gt;</code> code to match the following:</p>
<pre><code class="lang-jsx">&lt;<span class="hljs-built_in">Map</span> {...mapSettings}&gt;
  { destinations.map(<span class="hljs-function"><span class="hljs-params">destination</span> =&gt;</span> {
    <span class="hljs-keyword">const</span> { id, name, location } = destination;
    <span class="hljs-keyword">const</span> position = [location.latitude, location.longitude];
    <span class="hljs-keyword">return</span> <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">Marker</span> <span class="hljs-attr">key</span>=<span class="hljs-string">{id}</span> <span class="hljs-attr">position</span>=<span class="hljs-string">{position}</span> /&gt;</span></span>
  })}
&lt;/<span class="hljs-built_in">Map</span>&gt;
</code></pre>
<p>Here we:</p>
<ul>
<li>Loop through our <code>destinations</code> to dynamically create a new list of components inside our <code>&lt;Map&gt;</code></li>
<li>Inside each loop instance, we destructure our date from <code>destination</code></li>
<li>We create a new <code>position</code> array with the latitude and longitude</li>
<li>Create a new <code>Marker</code> where we use our position to add it to the map</li>
</ul>
<p>This gives us our markers on the map!</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/mapping-app-with-destination-markers.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Markers for each destination in the mapping app</em></p>
<p>But we want to know what each of those locations are, so let’s also add a popup to each marker that will show the name.</p>
<p>First, we need to import <code>Popup</code> from <code>react-leaflet</code>:</p>
<pre><code class="lang-js"><span class="hljs-keyword">import</span> { Marker, Popup } <span class="hljs-keyword">from</span> <span class="hljs-string">'react-leaflet'</span>;
</code></pre>
<p>Then, let’s update our <code>&lt;Marker&gt;</code> component to return:</p>
<pre><code class="lang-jsx"><span class="hljs-keyword">return</span> (
  <span class="xml"><span class="hljs-tag">&lt;<span class="hljs-name">Marker</span> <span class="hljs-attr">key</span>=<span class="hljs-string">{id}</span> <span class="hljs-attr">position</span>=<span class="hljs-string">{position}</span>&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">Popup</span>&gt;</span>{ name }<span class="hljs-tag">&lt;/<span class="hljs-name">Popup</span>&gt;</span>
  <span class="hljs-tag">&lt;/<span class="hljs-name">Marker</span>&gt;</span></span>
);
</code></pre>
<p>And once we save and open back up our map, you can now click on each marker and see our destinations name!</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/mapping-app-with-destination-marker-popup.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Popup for each destination marker in the mapping app</em></p>
<h3 id="heading-before-were-done-center-the-map">Before we’re done, center the map</h3>
<p>Previously, our demo map centered on Washington, DC. Let’s update that to the center of the world since our map doesn’t focus on the United States.</p>
<p>Update the <code>LOCATION</code> variable to:</p>
<pre><code class="lang-js"><span class="hljs-keyword">const</span> LOCATION = {
  <span class="hljs-attr">lat</span>: <span class="hljs-number">0</span>,
  <span class="hljs-attr">lng</span>: <span class="hljs-number">0</span>,
};
</code></pre>
<p>And with that, we have our map!</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2020/06/mapping-app-with-travel-bucket-list-markers.jpg" alt="Image" width="600" height="400" loading="lazy">
<em>Final mapping app with markers and popups for each destination</em></p>
<p><a target="_blank" href="https://github.com/colbyfayock/my-travel-bucket-list/commit/56dbadb74cea2770174eb8ea7c039be27ca18971">Follow along with the commit!</a></p>
<h2 id="heading-what-else-other-features-can-we-add-to-our-app">What else other features can we add to our app?</h2>
<h3 id="heading-add-a-way-to-check-off-each-location">Add a way to check off each location</h3>
<p>Inside GraphCMS, you can add a new field to your Destination content model that allows you to select whether you visited each location or not.</p>
<p>With this value, we can add it to our query and update our map with some kind of indicator like a checkmark to show that we’ve checked it off our bucket list!</p>
<h3 id="heading-customize-your-map-background-styles">Customize your map background styles</h3>
<p>We’re using a public version of <a target="_blank" href="https://www.openstreetmap.org/#map=5/38.007/-95.844">OpenStreetMap</a> which is open source, but <a target="_blank" href="https://www.mapbox.com/">Mapbox</a> offers some cool maps we can use to make it look a little more impressive.</p>
<p>If you want to get started changing your map styles, you can <a target="_blank" href="https://www.freecodecamp.org/news/how-to-set-up-a-custom-mapbox-basemap-with-gatsby-and-react-leaflet/">check out this other walkthrough</a> of mine to learn how to use Mapbox.</p>
<p><a target="_blank" href="https://www.colbyfayock.com/2020/04/how-to-set-up-a-custom-mapbox-basemap-style-with-react-leaflet-and-leaflet-gatsby-starter">Check out the blog post</a> or <a target="_blank" href="https://www.youtube.com/watch?v=KcPJr1b_rv0">watch the video</a>!</p>
<h3 id="heading-style-the-map-markers-with-a-custom-image">Style the map markers with a custom image</h3>
<p>You can check out my video walk through on how to change the markers to a custom image.</p>
<p>Take that a step further and use the feature above to dynamically show a different marker image when you’ve checked off a location.</p>
<p><a target="_blank" href="https://egghead.io/lessons/react-customize-geojson-data-markers-with-a-react-leaflet-icon-image?pl=mapping-with-react-leaflet-e0e0&amp;af=atzgap">Check out the video on Egghead.io!</a></p>
<h2 id="heading-want-to-learn-more-about-maps">Want to learn more about maps?</h2>
<p>Check out some of my other tutorials and videos:</p>
<ul>
<li><a target="_blank" href="https://egghead.io/playlists/mapping-with-react-leaflet-e0e0?af=atzgap">Mapping with React Leaflet</a> (<a target="_blank" href="https://egghead.io/?af=atzgap">egghead.io</a>)</li>
<li><a target="_blank" href="https://www.youtube.com/playlist?list=PLFsfg2xP7cbJTnTFH3OGXEAt9O1mpoqpR">Mapping Apps with React, Gatsby, &amp; Leaflet</a> (<a target="_blank" href="https://www.youtube.com/channel/UC7Wpv0Aft4NPNhHWW_JC4GQ">youtube.com</a>)</li>
<li><a target="_blank" href="https://www.colbyfayock.com/2020/03/how-to-create-a-coronavirus-covid-19-dashboard-map-app-with-gatsby-and-leaflet">How to create a Coronavirus (COVID-19) Dashboard &amp; Map App with Gatsby and Leaflet</a> (colbyfayock.com)</li>
<li><a target="_blank" href="https://www.colbyfayock.com/2020/03/how-to-create-a-summer-road-trip-mapping-app-with-gatsby-and-leaflet">How to Create a Summer Road Trip Mapping App with Gatsby and Leaflet</a> (colbyfayock.com)</li>
<li><a target="_blank" href="https://www.freecodecamp.org/news/easily-spin-up-a-mapping-app-in-react-with-leaflet/">How to build a mapping app in React the easy way with Leaflet</a> (colbyfayock.com)</li>
<li><a target="_blank" href="https://www.colbyfayock.com/2020/03/anyone-can-map-inspiration-and-an-introduction-to-the-world-of-mapping">Anyone Can Map! Inspiration and an introduction to the world of mapping</a> (colbyfayock.com)</li>
</ul>
<h2 id="heading-whats-on-your-travel-bucket-list">What’s on your travel bucket list?</h2>
<p><a target="_blank" href="https://twitter.com/colbyfayock">Let me know on Twitter!</a></p>
<div class="embed-wrapper">
        <blockquote class="twitter-tweet">
          <a href="https://twitter.com/colbyfayock/status/1275441134144110595"></a>
        </blockquote>
        <script defer="" src="https://platform.twitter.com/widgets.js" charset="utf-8"></script></div>
<div id="colbyfayock-author-card">
  <p>
    <a href="https://twitter.com/colbyfayock">
      <img src="https://res.cloudinary.com/fay/image/upload/w_2000,h_400,c_fill,q_auto,f_auto/w_1020,c_fit,co_rgb:007079,g_north_west,x_635,y_70,l_text:Source%20Sans%20Pro_64_line_spacing_-10_bold:Colby%20Fayock/w_1020,c_fit,co_rgb:383f43,g_west,x_635,y_6,l_text:Source%20Sans%20Pro_44_line_spacing_0_normal:Follow%20me%20for%20more%20JavaScript%252c%20UX%252c%20and%20other%20interesting%20things!/w_1020,c_fit,co_rgb:007079,g_south_west,x_635,y_70,l_text:Source%20Sans%20Pro_40_line_spacing_-10_semibold:colbyfayock.com/w_300,c_fit,co_rgb:7c848a,g_north_west,x_1725,y_68,l_text:Source%20Sans%20Pro_40_line_spacing_-10_normal:colbyfayock/w_300,c_fit,co_rgb:7c848a,g_north_west,x_1725,y_145,l_text:Source%20Sans%20Pro_40_line_spacing_-10_normal:colbyfayock/w_300,c_fit,co_rgb:7c848a,g_north_west,x_1725,y_222,l_text:Source%20Sans%20Pro_40_line_spacing_-10_normal:colbyfayock/w_300,c_fit,co_rgb:7c848a,g_north_west,x_1725,y_295,l_text:Source%20Sans%20Pro_40_line_spacing_-10_normal:colbyfayock/v1/social-footer-card" alt="Follow me for more Javascript, UX, and other interesting things!" width="2000" height="400" loading="lazy">
    </a>
  </p>
  <ul>
    <li>
      <a href="https://twitter.com/colbyfayock">? Follow Me On Twitter</a>
    </li>
    <li>
      <a href="https://youtube.com/colbyfayock">?️ Subscribe To My Youtube</a>
    </li>
    <li>
      <a href="https://www.colbyfayock.com/newsletter/">✉️ Sign Up For My Newsletter</a>
    </li>
  </ul>
</div>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Why conferences and meet-ups are important for developers ]]>
                </title>
                <description>
                    <![CDATA[ By Peter-John Welcome In 2018, I was fortunate enough to attend and speak at many meet-ups and conferences in South Africa and abroad. As a local meet-up organiser of GDG Johannesburg, I end up being at a meet-up at least once a month, but I do try a... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/why-conferences-and-meet-ups-are-important-for-developers-47806552faa8/</link>
                <guid isPermaLink="false">66c3668721ae2d74bb7009ea</guid>
                
                    <category>
                        <![CDATA[ conference ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Life lessons ]]>
                    </category>
                
                    <category>
                        <![CDATA[ networking ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Fri, 29 Mar 2019 18:08:55 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*3tdP4w7wAAwoSxMljMKbog.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Peter-John Welcome</p>
<p>In 2018, I was fortunate enough to attend and speak at many meet-ups and conferences in South Africa and abroad. As a local meet-up organiser of GDG Johannesburg, I end up being at a meet-up at least once a month, but I do try and go to other local meet-ups in my city. I was also lucky enough to attend four local conferences and community events, and I helped organise Devfest South Africa. Finally, I got to go to four awesome conferences abroad in different countries which truly changed the way I saw developer conferences.</p>
<p>This got me thinking — why do developers attend or speak at meet-ups and conferences and how beneficial are they to developers and their careers? This brought up 4 main topics that could answer these questions: Learning, Sharing, Networking and Collaborating.</p>
<h4 id="heading-learning">Learning</h4>
<p>Many developers go to meet-ups and conferences to learn something new, about either a specific topic or just something new that they might not have heard about. With many resources out there such as blogs and Youtube, we have many platforms to learn from, so what do meet-ups and conferences give us that’s different?</p>
<p>Well first, we get to learn from the best. Most of the time, speakers and attendees are people that have been working with a specific technology for a while and have experienced the good and bad. Learning in this environment is very different because everyone is there to learn or share their knowledge with each other, whereas at work you are mostly there to get the job done 80% of the time.</p>
<p>You also find people sharing different ways of using a specific technology that maybe the speaker didn’t mention and many new amazing ideas and techniques are developed in these kind of environments. In person communication is something awesome and helps any developer grow.</p>
<h4 id="heading-sharing">Sharing</h4>
<p>With learning being a big part of meet-ups and conferences, there will need to be people sharing content. This is normally the speakers that are up on stage sharing their experiences with a specific technology or something they think is awesome and you would try it out. The content shared by speakers is what attracts many attendees to these events, but sharing doesn’t just stop there — it goes beyond that.</p>
<p>People share a lot of useful information about a specific topic in the questions they ask after the session. The conversations that happen after the session can be vital to the problem you are trying to solve in your workplace and the ideas shared afterwards can be more helpful than the content provided in the session. The transfer of knowledge during these events can help with the growth of a developer and even their organisation.</p>
<p>When it comes to learning, sharing is very important, as sharing can lead to solving complex problems and creating great friendships between people. A lot of the points I’ve made about sharing have a lot to do with networking with other developers during these events. This shows that networking at meet-ups and conferences is important when attending these events.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/YVDduiPl8J-u2GT7cL7AiLDxl5YO4UMkMbLd" alt="Image" width="800" height="533" loading="lazy"></p>
<h4 id="heading-networking">Networking</h4>
<p>Networking is not something that every developer is fond of, but this communication between people is what brings so many benefits to developers at these events. Networking is where we talk about what we do, problems we might be having with some technology, or even just making new friends that do similar work as you do. This is where we share ideas, learn from each other and help each other grow. I found that this how I learnt the most from awesome people.</p>
<p>This is also how we collaborate with other people, by speaking about open source projects you might be working on or talking about the amazing culture you have at your company. This opens up so many opportunities for developers to explore. Organisers also network at these events to identify potential speakers for their own meet ups and conferences. It gives developers the opportunity to express their interests and passion about a product or technology.</p>
<p>One of the most important things I’ve taken away from most of the conferences and meet ups is making new friends with like minded people. These friendships could turn into working together in future on an open source project or just knowing someone at the next event you go to. It could also be someone you spoke to about an SDK or tool they work on and you could provide them with feedback. This then creates that community of collaboration between developers.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/sqXkA-6rEiWeCX1mKmtBn8rThuVAjonCjGIT" alt="Image" width="800" height="600" loading="lazy"></p>
<h4 id="heading-collaborating">Collaborating</h4>
<p>Collaboration doesn’t always start at conferences or meet-ups but this could be a starting point where a few people meet and they end up making something great.</p>
<p>When it comes to collaboration, I’m not only talking about creating software together but also helping each other create new developer communities or just helping towards a cause that many believe in. These are all things that could happen at these events.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/HAVIbZ0jErQgFBTAiKArbe-usRq6i3wTR7De" alt="Image" width="800" height="533" loading="lazy"></p>
<h4 id="heading-final-thoughts">Final thoughts</h4>
<p>For me personally, I think that having these type of communities in the software engineering space is amazing. They help many people become part of this learning, sharing, networking and collaborating environment that so many other industries don’t have.</p>
<p>These events are also fun especially when you get to visit new countries and explore amazing cultures and speak to people about how software engineering is similar on the other side of the world.</p>
<p>I would say, if you do get an opportunity to join a development community or help steer one in a new direction, grab it with both hands. You will get to meet some awesome people along the away =)</p>
<p>If you have any thoughts, let me know in the comments below.</p>
<p>Get in touch.</p>
<p><a target="_blank" href="https://twitter.com/pjapplez"><strong>Peter-John (@pjapplez) | Twitter</strong></a><br><a target="_blank" href="https://twitter.com/pjapplez">_The latest Tweets from Peter-John (@pjapplez). Mobile Engineering Lead @DVT_Corporate , Technology Explorer…_twitter.com</a></p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to transition from being an in-office to a remote programmer ]]>
                </title>
                <description>
                    <![CDATA[ By James Quinlan My name is James, and I’m a Software Engineer at a company called Yesware, based in Boston. Yesware is the fourth job I’ve had in which I’m paid to write code, but it’s the third time now that I’ve transitioned from being an in-offic... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-transition-from-being-an-in-office-to-remote-employee-98433d0a92c1/</link>
                <guid isPermaLink="false">66c35533dae03919d93dc022</guid>
                
                    <category>
                        <![CDATA[ General Programming ]]>
                    </category>
                
                    <category>
                        <![CDATA[ remote-working ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Web Development ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Wed, 10 Oct 2018 17:18:49 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/0*-sZTiLGxw7TjXYdF" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By James Quinlan</p>
<p>My name is James, and I’m a Software Engineer at a company called <a target="_blank" href="https://www.yesware.com/">Yesware</a>, based in Boston. Yesware is the fourth job I’ve had in which I’m paid to write code, but it’s the <strong>third</strong> time now that I’ve transitioned from being an in-office employee to a remote one. </p>
<p>Since I’ve handled this transition a few times now, in varying degrees of complexity/difficulty, I figured I probably have at least a few words for anyone else looking to begin working remotely.</p>
<p>But first, a warning: survivorship bias guarantees that your mileage may vary with regard to anything I say here. Switching to a remote position has worked for me in the past, but that in no way means it will work for anyone else in the same ways. </p>
<p>You don’t often see articles entitled “How I Completely Failed to Work Remotely and Botched my Dream Gig”, but I’m sure there are many cases of folks doing exactly that. That would actually probably be a more helpful article, so consider this an open invitation for someone to write it as a response.</p>
<p>Also, I talk about my place of work in this article a fair bit, but I’d like to state clearly that I wasn’t asked to, or otherwise encouraged to at all. Any reference I make to my employer is included only because I see it as relevant or helpful to others, so as to get an idea of how a company might support its employees.</p>
<h2 id="heading-why-remote">Why Remote?</h2>
<p>This is a question I won’t dwell on too much because there are endless blogs, listicles, and books written on the subject _(<a target="_blank" href="https://www.amazon.com/dp/B00C0ALZ0W/ref=dp-kindle-redirect?_encoding=UTF8&amp;btkr=1">Remote: Office Not Required</a> is a decent intro to the benefits of remote work, but it won’t tell you how to do it. It’s also roughly half pictures)_.</p>
<p>Remote work is fantastic for some personality types as it affords much more freedom. Some folks just enjoy being able to <em>move</em>, to be able to go where their friends/family/bucket-lists take them. Being able to take your job where you want to go is, in my opinion, less stressful than having to factor in finding another one if you decide to leave. Simply put, it resolves any dichotomies between having a job you enjoy, and anything else you want to do.</p>
<p>You can have your cake and eat it too.</p>
<blockquote>
<p>The phrase above should always be accompanied with a resounding “within reason”. I suspect your employer wouldn’t be too keen on the idea of using remote work as a means of somehow having another separate full-time job somewhere else.</p>
</blockquote>
<h2 id="heading-why-not">Why Not?</h2>
<p>Remote work can be much harder depending on a myriad of details related to one’s personality, the nature of their work, their company’s culture, etc.</p>
<p>Are you the type of person who can self-regulate and ensure you’re allowing for extended periods of focus, wherever you are? Is the work you’re doing something that can be done without any coworkers immediately available? Is the company you work for willing to put in the extra effort to ensure you feel connected and valued? Do you have some misconception that remote work means doing any less work? Do you have a spouse or other close family member who this will affect? Is the Wi-Fi going to be any good where you’ll be based?</p>
<p>I’ll leave you to ruminate on those questions, but there are many reasons that being remote wouldn’t be a good fit. They each warrant an honest discussion with yourself, those close to you, and your employer.</p>
<h2 id="heading-how-to-tell-your-company">How To Tell Your Company</h2>
<p>Eventually, you’ll need to broach the subject with your boss, and while there are various ways to do this, there is only one I recommend.</p>
<p>The <em>worst</em> way I ever went about it featured me telling my boss that I was moving in two weeks, no ifs-ands-or-buts about it. I was essentially abruptly quitting, without really offering to discuss the matter. I knew I had to go, and I was ready to leave my job to make that happen, but I feel as though I had cornered my boss.</p>
<p>After my spiel (“I grew up here, I’m ready to leave, I need to do this”, etc.), he told me to just work from Boston, and that there was no reason I couldn’t stay on the team while working elsewhere. This was <em>incredibly</em> surprising to me, and something I hadn’t considered. I ended up taking the offer. A few weeks later I was in Boston working the same job as before, and paying significantly more in rent.</p>
<p>This method felt wrong for a few reasons. Namely, I didn’t bring the idea up as a conversation, and I went in defensively, expecting the worst. Also, I didn’t value my role in the job enough! I didn’t expect that I was valued enough by my company to warrant letting me move and stay on the team, and that was unfair to myself.</p>
<p>By the next time I had to have the same conversation, I was already 9 months into my tenure at Yesware. I had an opportunity to move to Spain with a friend, but I valued my job an <em>enormous</em> amount.</p>
<p>I was simply learning and growing too much to justify leaving.</p>
<blockquote>
<p>While this honestly wasn’t factored into the decision to stay at Yesware, I was also going to need an American job for my residence visa in Spain anyway. Without them, I almost certainly wouldn’t have been able to go.</p>
</blockquote>
<p>Since I felt more comfortable at Yesware than any previous company I’ve worked at, I figured I’d just talk to my boss about the opportunity openly. I wrote him an email one morning stating plainly that I had an opportunity to move to Spain in the upcoming Fall, and I wanted to talk about if that would be possible while still working for Yesware. I dug up the original email, and the sentence that best captures its spirit was “I just want to open this dialogue to see what is and isn’t possible, without any expectations.”</p>
<p>My boss and I immediately had a short 1-on-1 meeting to talk about the idea further, and we agreed that, while it was unlikely to happen, we could at least see what it would take to work. If there were no <em>legal</em> reasons we couldn’t do it, and the company felt confident that my work wouldn’t suffer, we felt as though it should be fine.</p>
<p>Over the next few months, we discussed what it would take to demonstrate that I can handle remote work, and that our team can. We organized a month long experiment where our engineering team of ~6 people would be remote every day, and I used this as an opportunity to show that I can be perfectly productive (often times much more so) while at home. Eventually, once we had clarified everything with the Yesware legal team, I was made aware that I could work from Europe if I so chose.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Jb8hz0Pk7ZzHLsSNu4JBJDWpCOmN0B202yLi" alt="Image" width="800" height="533" loading="lazy">
_“brown concrete buildings” by [Unsplash](https://unsplash.com/@alelmes?utm_source=medium&amp;utm_medium=referral" rel="noopener" target="_blank" title=""&gt;Alasdair Elmes on &lt;a href="https://unsplash.com?utm_source=medium&amp;utm_medium=referral" rel="noopener" target="<em>blank" title=")</em></p>
<p>The most important thing I learned from this is that discussing big changes like this requires one to be honest, upfront, and realistic. By making sure Yesware knew I wouldn’t leave the company if they said no, I helped make the process easier for them to consider. We also put in the extra work to make sure it would go over smoothly by making sure the team would be comfortable with me being remote, and by proving that our productivity wasn’t jeopardized.</p>
<h2 id="heading-what-does-it-actually-take-to-work-remotely">What Does It Actually Take To Work Remotely</h2>
<p>I’d like to take a moment to reiterate my warning message at the beginning of this article, in which I claim that just because this works for me, it doesn’t mean it will work for anyone else. You’ve been warned.</p>
<p>The biggest struggles I expect one to encounter when starting to work remotely are, in no particular order, managing to keep a normal schedule, creating a space conducive to focusing, and feeling connected to your team. They are also 3 sides to the same geometrically-impossible coin. For me, managing to succeed in one of those areas makes succeeding in the others easier.</p>
<p>Here are some ways I do that, and some ways that my team supports me:</p>
<p><strong>Stick to a routine:</strong> Pick a chunk (or chunks) of time every day to focus on work. While a remote schedule often means some degree of freedom when choosing when to work, we can get a lot out of maintaining some sort of normal hours. I tend to stick roughly to working hours EST (which is 3pm to 11pm for me in Spain), but I also know I’m most focused first thing in the morning, so I always do an hour or two in the morning, then trim a little off my evening hours when my team doesn’t tend to schedule meetings.</p>
<p><strong>Schedule time for casual conversation:</strong> By being remote, you’re going to miss out on casual chats at lunch with your team, and you’re going to be deprived of spontaneous conversations with other departments at the proverbial water cooler. These can be vital interactions, however, and they warrant being protected. Find time to engage coworkers in non-work discussions so you can continue to develop natural friendships with those you spend so much of your day with.</p>
<p>For example, my team often uses our bi-weekly retro meetings to talk about whatever we want for an hour. We do end up being able to talk about things that have gone well or poorly since the previous iteration of the meeting, but we don’t worry about being completely distracted for an hour with a coworker’s photos from a trip abroad, or the grizzly details of an ongoing murder investigation <em>(this is just run-of-the-mill morbid curiosity, nothing to be alarmed by, I promise)</em>.</p>
<p>Our daily standups can also get a little carried away sometimes, but as long as they stay within the allotted 15 minute window, everyone is happy to chat a little bit about whatever. It helps to bring the team a little closer in a small but ultimately meaningful way.</p>
<p><strong>Set up your ideal workspace:</strong> This is a big one for me personally. There is a profound difference in my productivity when I am working with all the tools I need versus when I am not.</p>
<p>For example, I’ve realized that the correct keyboard for me is a dealbreaker, and I tend to work faster with another monitor hooked up to my machine. Also, my back gets achy after sitting for too long, so I usually use a standing desk, or an ergonomic chair.</p>
<p>Invest in your workspace, and the boost you’ll experience in being able to focus will ensure the money is made back. Yesware has a generous employee expensing policy, so I’m encouraged to buy what I feel I need to be healthy and productive on the company’s dollar. If your employer can’t make the same offer, it’s still important to spend what you can on having a proper battle station.</p>
<p><strong>Get out of the house:</strong> Now that your consummate work station is complete with an ergonomic keyboard and mouse, powered standing desk, miniature koi pond, 4K monitor, and Newton’s cradle, leave it all and go somewhere else. Work a part of your day at home, and maybe finish the evening at a coffee shop, or library, or a friends house. Do everything you can to not get stuck inside, because when you work where you live it’s a serious risk.</p>
<p>When I was in the US and working remotely, I would always either skateboard or go for a walk immediately after finishing work (now I just do it <em>before</em>). I also purposefully avoid buying any sort of coffeemaker so I need to physically leave the house to get coffee, and my regrettable caffeine addiction mandates that I leave at least once to satisfy the craving. Some folks go so far as to pay for a membership at a coworking space just so they can actually <em>go</em> to work. While I haven’t made this jump quite yet, I can understand the appeal.</p>
<p>We need to carefully illustrate the differences between working and not working. It isn’t as easy when the place where I work is also the place where I unwind.</p>
<p><strong>Hop on a video call:</strong> This is one of the more team-oriented pieces of advice for making a remote job work. When it comes to getting answers or clarification on something, or needing to discuss an issue that’s even partially technical, it can be much easier to just hop on a video call instead of having to type everything out in Slack, or whichever medium you use for such communication.</p>
<p>Our goal is to make our being in another location as simple and straightforward as possible for our team, and that often means acknowledging that talking can be better than typing. Since going remote, I’m now more likely to just hop on a call with a team member to discuss something, rather than spending 15 minutes discussing in Slack. Plus the face-to-face time is just nice anyway.</p>
<p><strong>Iterate:</strong> If this is the first time you’ll be working remotely, or your company is making the transition to support remote workers for the first time, it’s going to take some trial and error to make everything work fluidly. Check in with your team or manager to see how things have been (this would be a perfect topic for retro), and experiment with different practices if there are issues.</p>
<p>For example, because Yesware recently started to open up our engineering teams to remote applicants we’ve had to experiment with different video conference solutions to see what works best for our space. It’s an ongoing endeavor, but we are closing in on what feels like the right product, which will ensure remote workers (hopefully) never have a problem calling into meetings and planning sessions. Besides, any large transition is going to demand time before feeling comfortable, so give it a couple weeks being remote before panicking that you can’t handle it.</p>
<p><strong>Meet up every once in a while:</strong> Being a remote employee doesn’t mean never seeing the rest of your team or company. Schedule a trip every year to go to headquarters for a week, or go once a quarter just for some of that coveted face-to-face time. Or work remotely from the same city, and head into the office when you feel like it. Being remote doesn’t necessitate being hundreds of miles away, and we can still gain a lot by regularly working from home even if the company’s office is nearby.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Rp1UEwtVRCDErCDlN9PWyH5oZTW28B4WyuXy" alt="Image" width="800" height="533" loading="lazy">
_“person using laptop” by [Unsplash](https://unsplash.com/@kaitlynbaker?utm_source=medium&amp;utm_medium=referral" rel="noopener" target="_blank" title=""&gt;Kaitlyn Baker on &lt;a href="https://unsplash.com?utm_source=medium&amp;utm_medium=referral" rel="noopener" target="<em>blank" title=")</em></p>
<p>While those are practical tips for being comfortable while working remotely, the actual switch can be fairly daunting. To make that transition smoother, try easing into it one day at a time.</p>
<p>When I was ramping up to move abroad and work remotely, I started by working from home every Wednesday, since it was uncommon for my team to have anything special on that day. After a month of that, I worked from home 2 or 3 times a week, and purposefully chose days that had important planning meetings, so I could get a feel for how to navigate critical meetings without being in the room.</p>
<p>By the time my entire team began the remote experiment, I was already fairly comfortable, and after 3 weeks of being completely remote, I felt even <em>more</em> productive than I was in the office. If you can afford to, begin the switch to remote work slowly.</p>
<p>I’m sure you totally expected something like this at the end of the article, but <strong>Yesware is hiring engineers of all levels.</strong> Again, I haven’t been coerced into saying any of this, I just genuinely love where I work and I’m excited for our future. I’d be a fool not to encourage kind, driven, and smart folks to join us. <a target="_blank" href="https://www.yesware.com/company/">Check out our company page for a list of positions</a>, and to get a feel for us. And yes, we’re accepting remote applications.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ The Benefits of Speaking at Tech Conferences ]]>
                </title>
                <description>
                    <![CDATA[ By Umar Hansa I’m a web developer. Having spoken at a few tech conferences, I thought I’d share some benefits I experienced through speaking️. If you’re considering speaking, maybe this article can provide some extra insight. When you decide to spea... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/the-benefits-of-speaking-at-tech-conferences-c36348c50ac1/</link>
                <guid isPermaLink="false">66d4617338f2dc3808b79111</guid>
                
                    <category>
                        <![CDATA[ conference ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Life lessons ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Public Speaking ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Tue, 02 Oct 2018 20:40:36 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/0*u3k4XUlqa8TJ5ivE" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Umar Hansa</p>
<p>I’m a web developer. Having spoken at a few tech conferences, I thought I’d share some benefits I experienced through speaking️. If you’re considering speaking, maybe this article can provide some extra insight.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*-Y1nmkPeHNJeVUpR" alt="Image" width="800" height="450" loading="lazy"></p>
<p>When you decide to speak at a conference, it’s not just that 20–40 minute talk slot you’re involved with. Other factors come into play like preparation, travel and money.</p>
<p>There are some more obvious benefits, such as learning new technologies, getting out of your comfort zone, and personal branding. But in this article, I hope to share some of the less obvious benefits, such as traveling, easier access to future conferences, and some other aspects.</p>
<p>For me, the biggest benefit is travel️. All-expenses-paid trips to new countries can be really great. If you want to go traveling but money’s an issue, being a speaker at an international conference can help with that.</p>
<p>I’ve been lucky enough to explore the Netherlands (??), United States (??)️, Ireland (??)️, Czech Republic (??)️, Switzerland (??)️, Poland (??)️, Ukraine (??)️, Romania (??)️, Greece (??)️, Germany (??) ️and more. All I really paid for was food and additional accommodations.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*u3k4XUlqa8TJ5ivE" alt="Image" width="800" height="533" loading="lazy"></p>
<p>There are huge benefits to traveling in general which I won’t cover here, but you can research yourself. Conference organizers are usually happy to help you explore their city in a way which makes you comfortable. They can tell you the good spots to go to without you having to read through endless TripAdvisor reviews which have questionable integrity. You can ask organizers for advice at pretty much any stage, and they’ll try to accommodate you.</p>
<p>If you have a partner or a close friend ?, you may both be able to tick off traveling from your bucket lists. If you ask the organizers, your partner can probably attend the conference and speaker’s dinner too. They may not be interested in the conference topics, but it will still be an experience for them to see you speak. On a few occasions, I requested the organizers book a flight for my partner too, and this typically came out of my speaker payment️.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*oxjksyJ9rIbM2Yic" alt="Image" width="800" height="719" loading="lazy">
<em>Most of these visits are through conferences. Not shown: U.S. where I attended Google I/O a few times and spoke in New York</em></p>
<p>I find a good strategy is for your partner or friend to explore the city independently while you’re at the conference. You can meet up afterwards. But the real benefit of the ‘travel’ aspect is through the extra days you book where you don’t have important commitments to attend to.</p>
<p>The trick is to extend the days you’re located within that country. When the conference has a decent budget, the organizers will pay for your flights plus a few nights at a hotel, but you can request the return flight is (for example) one week after the conference️. In between, you’ll want to stay at an <a target="_blank" href="https://www.airbnb.com">Airbnb</a> or a hostel, rather than the expensive hotel they book for you on conference nights.</p>
<p>On one occasion, I negotiated with the conference organizer to cover a very cheap Airbnb for me and my partner for a whole week instead of a fancy hotel for a few nights. All we had to pay for was food and bus tickets for that whole trip.</p>
<h4 id="heading-accommodations">Accommodations</h4>
<p>In my experience, it’s almost always been super fancy hotels by my standards. It feels unusual at times, but definitely an interesting experience. If the conference pays for your hotel, they’ll probably include a hotel breakfast too!</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*mEjLeeVWg1dAn8Bq" alt="Image" width="800" height="599" loading="lazy"></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*B-Fw8mtJe5OvNqgJ" alt="Image" width="800" height="599" loading="lazy">
<em>2 fancy 4 me</em></p>
<p>When you arrive at the conference city, rather than paying lots of money for a roaming data plan, the organizers can hook you up with a prepaid sim card which includes data. Make sure you ask about this if you believe you’ll benefit from it.</p>
<p>Some conference give speaker gifts ?️ too, which is very nice. It’s also very touching to receive a handwritten card. Extra touches like these create strong positive vibes on the trip and makes the overall event a rewarding experience. Be careful to manage expectations with yourself however, otherwise you’ll take these things for granted.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*Qjdr425P5ryHIT8o" alt="Image" width="800" height="599" loading="lazy">
<em>Local snacks, travel card and a sim card</em></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*LDtkh2lHIqq6_koB" alt="Image" width="800" height="600" loading="lazy">
<em>Fancy chocolate</em></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*TiKFsSdcfx09DvE1" alt="Image" width="737" height="983" loading="lazy"></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*vnJkixJ8wyJbEsFE" alt="Image" width="800" height="599" loading="lazy"></p>
<p>One time, I received a wireless keyboard plus fitness tracker as a gift, which was a surprise!</p>
<p>When you network with conference organizers, it’s not unheard of that you’ll be invited back again in the future, maybe as a speaker or an attendee. I was once fortunate enough to be invited back to run a workshop.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*elTMthqWcCYTMx0q" alt="Image" width="737" height="983" loading="lazy">
<em>Stole this after the workshop, it’s now my new duvet cover</em></p>
<p>Networking allows you to gravitate towards people you care about. Here are some types of networking I’ve observed and experienced:</p>
<ul>
<li>A previous speaker had returned as a photographer (so there’s room to grow into other roles if you meet the right people).</li>
<li>Another previous speaker had taken over the video editing work a conference needed. I guess a dedicated audio/video production team would normally be contacted, but in this case the organizers went with someone they knew personally.</li>
<li>Sometimes, attendees who work at cool companies happen to work nearby, and it’s not uncommon to get invited to their workplace for a lunch and chat…and maybe pool.</li>
</ul>
<h4 id="heading-flights"><strong>Flights</strong></h4>
<p>The organizers pay for an economy return flight on the dates I ask for. On multiple occasions I’ve asked if I can stop-over in a new country and usually pay for the extra flight cost.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*m6VHglfb7Gpst3Py" alt="Image" width="800" height="599" loading="lazy"></p>
<p><strong>Tip:</strong> You may want to do the stop-over in your return journey since your talk would have finished by that point.</p>
<p>On a few occasions, after arriving at the conference destination, the organizers were waiting for me at the airport to direct me to a taxi which took me straight to the hotel — very convenient.</p>
<p>If you might want to use public transport later on, you can ask the organizer what sort of travel card to buy (airports sometimes sell these) — this can also be useful if you don’t speak their local language.</p>
<h4 id="heading-subject">Subject</h4>
<p>A note on recycling talks: that is, giving the same talk at multiple conferences. Generally, this is fine. If in doubt, ask the organizers.</p>
<p>Once you’ve given a talk, you can reuse the following at a new conference:</p>
<ul>
<li>?️ Your talk proposal document (such as ‘In my talk, the audience will learn…’) which you send to the organizers for them to consider you</li>
<li>?️ Slides</li>
<li>?️ Speech</li>
</ul>
<p>And those three reusable points can save many days worth of preparation. Realistically, you’ll iterate upon your slides but for the most part things can stay the same.</p>
<p>You’ll have to use common sense to decide when to stop reusing your talk, however one big factor for me is: when do I stop learning? If I continuously reuse the same talk, I won’t have any new topics to learn about. <strong>Using a conference talk is a great excuse to learn a new technology, technique or concept.</strong></p>
<h4 id="heading-branding">Branding</h4>
<p>Speaking even just once allows you to build and maintain a personal brand. This can help with future speaking gigs and work opportunities. For example I met the CEO of a company which I was later employed by. I met this CEO during the break of one conference right after they complimented my talk!</p>
<p>By building my brand, I’m pleased to say I’ve been a <a target="_blank" href="https://developers.google.com/experts/people/umar-hansa">Google Developer Expert</a> for over 5 years ✨️!</p>
<p><strong>Note:</strong> conference speaking has helped, but is not the main reason I was accepted into the GDE program.</p>
<h4 id="heading-after">After</h4>
<p>When you arrive back home after a conference, you’ll want to take a retrospective look on what happened️. For example:</p>
<ul>
<li>What did you gain and was the whole thing worth it?</li>
<li>How was timing and pacing during the talk?</li>
<li>Did you feel fully prepared before the talk? If not, what was left to do?</li>
</ul>
<p>For myself, it’s inevitable that I’ll feel motivated and passionate to achieve new life goals. This probably sounds cheesy, but that’s the effect of being put into a new location with a new routine!</p>
<p>A while after my talks, I sometimes get:</p>
<ul>
<li>?️ A thank you email</li>
<li>?️ Professionally shot photographs of me speaking</li>
<li>?️ A video link of my talk</li>
</ul>
<p>So if ever I need a normal looking photo of myself, maybe to use as a profile picture somewhere, or because an employer is asking, I can use the ‘professional’ looking photo.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*qDtXct0wEQCDJtYS" alt="Image" width="800" height="589" loading="lazy">
<em>Don’t think I should use this as a LinkedIn profile pic</em></p>
<p>My conference talk videos have helped me out too:</p>
<ul>
<li>If I ask to speak at a new conference, I can simply send that video link to the organizers so they get a feel for my speaking skills.</li>
<li>If done tastefully, you can include a link to your video in job application cover letters, it normally reflects well.</li>
<li>When I watch my talk well after I’ve presented it, I pick up on all sorts of mistakes which helps me improve for next time.</li>
</ul>
<p>When I receive the video from the conference organizers, which is after the conference has finished, I embark upon one final task. Getting conference talk material online so others can benefit.</p>
<p>For my conference <a target="_blank" href="https://www.youtube.com/watch?v=qIWNoJv4Lyc">talk at ScotlandJS</a>, I went through a few steps to get the <a target="_blank" href="https://umaar.github.io/node-mini-projects-talk/">slides online</a> ?️:</p>
<ul>
<li>Removed any references which don’t make sense in a non-speech environment.</li>
<li>Replaced all live demos with either videos, or code demos.</li>
<li>Link to the video from the slides.</li>
</ul>
<p>This combination of steps helps ensures the content is still useful to the tech community after the talk is given. I’ll also leave a comment in the <a target="_blank" href="https://www.youtube.com/watch?v=qIWNoJv4Lyc">YouTube video</a> linking to the slides. Where possible, I’ll go through the video and collect timestamps️ corresponding to the individual topics. This is so folks can easily jump to parts of the video without having to watch the whole thing.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*BET1xZ7qGaHBsojKtkVHLA.png" alt="Image" width="549" height="185" loading="lazy">
<em>Timestamps link to a specific point in the YouTube video</em></p>
<p>All of this post-conference activity doesn’t take very long, helps provide value to the community, and results in building up your personal brand. If your content is good, your talk will live on!</p>
<p><strong>Tip:</strong> If you speak about a niche or specialized topic, there’s a chance you’ll be presented with opportunities ? for work as and when others in the industry encounter your slides and video.</p>
<p><strong>Employers</strong></p>
<p>There are many industries where the employer will not support you in attending conferences, but tech is not one of them. I’ve <a target="_blank" href="https://twitter.com/umaar/status/941755764405948417">written some advice</a> on this topic before, go and have a read if you think it applies to you.</p>
<p>Almost all of my employers have supported me in attending conferences. This means:</p>
<ul>
<li>I can attend a conference during ‘work time’ ?️ without booking holiday.</li>
<li>I can travel during ‘work time’ as the conference will increase my skill set for work.</li>
<li>I don’t always get paid for speaking, when this happens, a few employers allowed me to expense transport costs.</li>
<li>To solidify what I’ve learned and to share knowledge with my peers, they’ll encourage me to give an internal tech talk which in turn increases my evangelism skills.</li>
</ul>
<p>Some employers ask you to book holiday if you are speaking at a conference. They might do this if they feel the conference topics are unrelated to what you do, or maybe they’ve never allowed such a thing before. If so, consider communicating to your line manager about the <a target="_blank" href="https://twitter.com/umaar/status/941755764405948417">benefits</a> of you speaking or even attending a conference.</p>
<h4 id="heading-here-are-a-few-things-to-watch-out-for"><strong>Here are a few things to watch out for:</strong></h4>
<p>Sometimes I end up in interesting situations like:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*JpqzI7VL0jYF1KKH" alt="Image" width="800" height="533" loading="lazy"></p>
<p>In this photo, I believe a local television network wanted me to say nice things about the developer community in their city but I get nervous with those things. Looking back, it’s really no biggie if you pass on an opportunity you’re uncomfortable/shy/nervous about…apart from the talk itself!</p>
<p>Another example is a Q&amp;A session after your talk, if you’re not into it, just let the organizers know as early as possible so they can have an alternative plan. Looking back on this opportunity and many others, I don’t regret a single one!</p>
<p>Each Q&amp;A, panel session, group chat and recorded interview was an honor to be part of and I am glad I did it.</p>
<h4 id="heading-people-thinking-youre-smarter-than-you-are"><strong>People thinking you’re smarter than you are</strong> ️</h4>
<p>I am a front-end web developer. With all the speaking, some employers and potential employers end up thinking I’m much more skilled than I actually am.</p>
<p>Not everyone makes the distinction between evangelism and web development. Many speakers I’ve seen are real experts at their craft so this won’t apply to everyone.</p>
<h4 id="heading-a-wrong-way-to-travel"><strong>A wrong way to travel?</strong></h4>
<p>I don’t really think there are right and wrong ways to travel since people desire different experiences which changes throughout one’s life. I feel a lot of my traveling for conference were very luxurious (such as airport pickups). This is however totally within my control, if I want a more independent experience, I can simply mention I don’t need an airport pickup and fancy hotels to the organizers.</p>
<p>Just a heads up however, doing conference speaking for long enough can warp your perspective of what it means to travel.</p>
<h3 id="heading-conclusion-recap"><strong>Conclusion / Recap</strong></h3>
<p>Speaking at a conference is a unique experience:</p>
<ul>
<li>You’ll get out of your comfort zone</li>
<li>You’ll learn a new technology (assuming your talk is about something you don’t already know)</li>
<li>You’ll build a network of friends</li>
<li>You may receive some cool speaker gifts</li>
<li>You’ll get to explore a new location and culture</li>
<li>You can get a holiday out of the whole experience while paying very low expenses — your partner or friend can also share this benefit</li>
<li>You’ll have a bunch of resources and assets from your talk which you can use in CV’s, cover letters and portfolios</li>
<li>You’ll improve your personal brand and evangelism skills</li>
<li>You’ll get out of your usual routine and be exposed to a different culture</li>
</ul>
<p>Public speaking will bring a bunch of goodness to you regardless of the industry. Here’s a big list of <a target="_blank" href="https://github.com/softwaremill/it-cfp-list">call for papers</a> where you can submit a talk proposal and have the organizers consider your talk.</p>
<p>For my next talk, I’ll get some videos up onto my <a target="_blank" href="https://www.youtube.com/c/UmarHansa?sub_confirmation=1">YouTube channel</a> so you can understand exactly what goes into preparing for a conference.</p>
<ul>
<li>I post lots of developer tips <a target="_blank" href="https://twitter.com/umaar">on Twitter</a> — also, if you have any questions or you’d like to work together, get in touch with me through Twitter.</li>
<li>I have a mailing list for <a target="_blank" href="https://umaar.com/dev-tips/">Chrome DevTools tips</a>.</li>
<li>I also post on <a target="_blank" href="https://www.instagram.com/umarhansa/">Instagram</a>.</li>
</ul>
<blockquote>
<p>        <a target="_blank" href="https://www.instagram.com/p/BNd8uFGjSUm/">View this post on Instagram</a>         </p>
</blockquote>
<p><a target="_blank" href="https://www.instagram.com/p/BNd8uFGjSUm/">Conference badges</a></p>
<p>A post shared by  <a target="_blank" href="https://www.instagram.com/umarhansa/">Umar Hansa</a> (@umarhansa) on Dec 1, 2016 at 12:32am PST</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ A Data-Driven Story of Airbnb ]]>
                </title>
                <description>
                    <![CDATA[ By Akshaj Verma Users on AirBnB can book a place to stay in over 34,000 cities across more than 190 countries. The goal of this blog post is to analyze the data, identify problems and opportunities, and come up with insights to increase revenue. This... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/a-data-driven-story-of-airbnb-25e6c5be8973/</link>
                <guid isPermaLink="false">66c3425b790a62b5fbf7b846</guid>
                
                    <category>
                        <![CDATA[ airbnb ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Data Science ]]>
                    </category>
                
                    <category>
                        <![CDATA[ General Programming ]]>
                    </category>
                
                    <category>
                        <![CDATA[ technology ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Fri, 27 Jul 2018 00:22:23 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/0*PTkrnracmwpkL44M" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Akshaj Verma</p>
<p>Users on AirBnB can book a place to stay in over 34,000 cities across more than 190 countries. The goal of this blog post is to analyze the data, identify problems and opportunities, and come up with insights to increase revenue. This data was taken from <a target="_blank" href="https://www.kaggle.com/c/airbnb-recruiting-new-user-bookings/data">Kaggle</a>. If you’re interested in similar projects, have a look at my other blogposts <a target="_blank" href="https://medium.com/@akshajverma.oo7">here</a>.</p>
<p><em>Why AirBnB though?</em></p>
<p>Well, I wanted to work on a real world data set that had real world implications with a wee bit of preprocessing. AirBnB was the most interesting dataset that I found. So, here we go.</p>
<p>Import the libraries.</p>
<p>Import the dataset.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*7iJE0oM86yO4FSSKdu7wCg.png" alt="Image" width="800" height="116" loading="lazy">
<em>Data frame [Image[1]]</em></p>
<h3 id="heading-pre-processing">Pre-Processing</h3>
<p>Convert to date-time format using lubridate. Replace <code>-unknown-</code> gender by NA.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*UQEwoq5hF8BWwJyrDut2Xg.png" alt="Image" width="800" height="188" loading="lazy">
<em>Summary of df [Image [2]]</em></p>
<ul>
<li>NA values in the <code>date_first_booking</code> column say that the user hasn’t booked any room.</li>
<li>NA values in the <code>age</code> column means that the user hasn’t specified their age. We can fill dummy values in the <code>age</code> column.</li>
<li>NA values in the <code>gender</code> column means that the user hasn’t specified their gender.</li>
</ul>
<p><strong>Note</strong> that there are 95,688 NA values in the gender column and 117,763 filled values. So, our analysis based on the gender demographic might not be entirely correct in the real world.</p>
<p>Number of NA values in each column of the data frame.</p>
<pre><code>colSums(is.na(train_users_2))
</code></pre><p><img src="https://cdn-media-1.freecodecamp.org/images/1*Szdo-TSw4gaj6VGekehAGQ.png" alt="Image" width="800" height="94" loading="lazy">
<em>Number of NAs [Image [3]]</em></p>
<p>The <code>age</code> column contains values less than 18 and more than 80. In fact, <code>age</code> contains values as large as 104 and 2014. We will assign NA values to them.</p>
<p>To fill in the NA values in the <code>age</code> column, we’ll calculate the mean and standard deviation of the <code>age</code> column. Then we’ll generate <em>n</em> numbers as random integers between the mean and the standard deviation to fill in the NA values. <em>n</em> is the number of NA values in the <code>age</code> column.</p>
<p>Create a new column called <code>age_brackets</code> and add it to the data frame.</p>
<p>Finally, we’ll add 2 new columns to the data frame.</p>
<ul>
<li>The first column is <code>time_first_active_to_booking</code>, which is equal to number of <strong>days</strong> between <code>date_first_booking</code> and <code>timestamp_first_active</code>.</li>
<li>The second column is <code>time_signup_to_booking</code>, which is equal to number of <strong>days</strong> between <code>date_first_booking</code> and <code>date_account_created</code></li>
</ul>
<p>View the number of NAs per column.</p>
<pre><code>colSums(is.na(train_users_2))
</code></pre><p><img src="https://cdn-media-1.freecodecamp.org/images/1*T0sn8BDjySyLEACQfOSbVw.png" alt="Image" width="800" height="99" loading="lazy">
<em>Number of NAs [Image [4]]</em></p>
<ul>
<li>As you can see in the table above, only the <code>date_first_booking</code>, <code>time_first_active_to_booking</code>, and <code>gender</code> columns have NA values. This is totally fine.</li>
<li>NA values in the <code>date_first_booking</code> column means that the user hasn’t booked any hotels yet.</li>
<li>NA values in the <code>gender</code> column means that the user hasn’t specified their gender. <code>time_first_active_to_booking</code> is derived from <code>date_first_booking</code>, so it will have NA values.</li>
</ul>
<p>Reset the <code>gender</code> levels. If you don’t do this, the <code>-unknown-</code> level will still show up in the <code>levels(train_users_2$gender)</code>. We don’t want that, as we’ve already set all the <code>-unknown-</code> gender values to NA.</p>
<pre><code>train_users_2$gender &lt;- factor(train_users_2$gender)
</code></pre><p>We are done with the pre-processing. Whew. :P</p>
<h3 id="heading-exploratory-data-analysis">Exploratory data analysis</h3>
<h4 id="heading-age-gender-and-language">Age, Gender, and Language</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*9r5yQfwEZHNPAOZnRK720w.png" alt="Image" width="800" height="400" loading="lazy">
<em>Age, gender, and language [Image [5]]</em></p>
<ol>
<li>We can see that there are a lot of missing values for gender. The majority of the users did not fill in their gender information on the platform.</li>
<li>In the second plot, we observe that the age group of the majority of the users lies between 25 and 47 with the most users around the age of 30. This tells us that young and middle aged users are dominant.</li>
<li>For a company based in the US, it isn’t surprising that the most used language on their portal/app is English.</li>
<li>If we remove the English language from the plot, Chinese(zh) is the next most popular language on AirBnB, followed by French and Spanish. This suggests that AirBnB, after the US, is really popular in French and Spanish speaking countries/ communities. French is predominantly spoken in France, so we know this app is popular in France. But we can’t say that for Spanish, because Spanish is spoken in a lot of countries including Spain, Columbia, and the US, among many others.</li>
</ol>
<p>This data, along with the user’s location, can be used to identify which regions (inside countries) use what language. Then, maybe, we could show targeted ads to those communities.</p>
<h4 id="heading-age-vs-gender">Age vs Gender</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*goavdH-aHWSbVeK2DBiyWg.png" alt="Image" width="700" height="432" loading="lazy">
<em>Distribution of Age vs Gender [Image [6]]</em></p>
<p>Based on age, there is almost no difference between number of men and women who use AirBnB. Men and women in their 30s are the most prominent users of AirBnB.</p>
<h4 id="heading-affiliate-marketing-aka-advertisements">Affiliate Marketing a.k.a Advertisements</h4>
<p>Before we begin to analyze the graphs, let’s understand what affiliate marketing is.</p>
<p>Affiliate marketing is a type of performance-based marketing in which a business rewards one or more affiliates for each visitor or customer brought by the affiliates’ own marketing efforts. Affiliate marketing is quickly becoming a powerful way to increase sales.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*jfpMnEsdaFv5Pxb5vih7RA.png" alt="Image" width="800" height="285" loading="lazy">
<em>Affiliate Provider and Channel [Image [7]]</em></p>
<p>The 2 plots show the distribution of the affiliate channels used by different affiliate providers.</p>
<p>Direct marketing performed by AirBnB itself has had the most outreach in terms of marketing. Direct marketing is a form of advertising where organizations communicate directly to customers through a variety of media including text messages, email, websites, online adverts, promotional letters, and targeted television.</p>
<p>Google is a close second affiliate provider with semi-branding being its most popular affiliate channel. Bing, Facebook, and Craigslist are the other “major” contributors.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*inbmoBh9IOUetxyA.png" alt="Image" width="640" height="427" loading="lazy">
<em>Direct Marketing — Cable Car [Image [8]]</em></p>
<h4 id="heading-targeted-marketing-based-on-age"><strong>Targeted Marketing based on Age</strong></h4>
<p>These graphs show the comparison of the usage of the AirBnB platform based on the age demographic.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*IbllGPnchClgQ1oPGJ__hw.png" alt="Image" width="800" height="514" loading="lazy">
<em>Targeted Marketing by Age [Image [9]]</em></p>
<h4 id="heading-targeted-marketing-based-on-gender"><strong>Targeted Marketing based on Gender</strong></h4>
<p>These graphs show the comparison of the usage of the AirBnB platform based on the gender demographic.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*kwZni5Bp6my9whz48rs-SA.png" alt="Image" width="800" height="494" loading="lazy">
<em>Targeted Marketing by Gender [Image [10]]</em></p>
<ol>
<li>More women than men are targeted by the direct affiliate channel.</li>
<li>Same goes for the direct affiliate provider.</li>
<li>If we remove the <code>direct</code> affiliate channel, we observe the semi branded and semi non-branded are the two most popular channels followed by API and SEO (Search Engine Optimization). With the exception of the API channel, all other channels cater to more women than men.</li>
<li>Google as an affiliate provider is more common amongst women than men.</li>
</ol>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*BIA5n9ARSjjo7dEW" alt="Image" width="800" height="800" loading="lazy">
<em>Targeted Marketing [Image [11]]</em></p>
<h4 id="heading-signup-app-and-signup-method">Signup App and Signup Method</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*e_Tz_UOdUldQOEVnEznLWQ.png" alt="Image" width="700" height="432" loading="lazy">
<em>Signup App and Method [Image [12]]</em></p>
<ol>
<li>Signing up using email is the most popular option, followed by signup using Facebook. No body likes to link their Google account to their Airbnb account.</li>
<li>An overwhelming majority of people access the AirBnB platform using browsers on their computers followed by their iOS app. The fact that Android users are less than iOS users might seem odd, but remember that AirBnB is an American company with it’s largest user base being Americans. iOS is more popular in the US than Android.</li>
<li>People probably don’t use the app as much. This could be beacuse they don’t like the Android/iOS app’s UI or functionality. Maybe the web version offers more functionality and is easier to use. Or people aren’t aware of the AirBnB app.</li>
</ol>
<h4 id="heading-signup-app-and-method-based-on-age-and-gender">Signup App and Method based on Age and Gender</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*7pN3fVuJrwIlLsa_pep5rw.png" alt="Image" width="800" height="494" loading="lazy">
<em>Signup Age and Gender [Image [13]]</em></p>
<ol>
<li>As expected, elderly people do not use smart phones at all to use AirBnB. A large number of people in their 20s, 30s, and 40s use their computers to access the AirBnB platform. One would expect the “tech savvy” teens and 20 year olds to use smartphones more, but that isn’t the case. (Note that there a lot more people in the 30s age bracket. This assumption might be wrong.)</li>
<li>More women prefer signing up using their computers while more men prefer iOS/Android apps.</li>
<li>A lot more people in their 30s prefer signing up using email as compared to Facebook. An almost weirdly equal number of people in their 20s and 30s prefer to signup using Facebook.</li>
<li>More women than men prefer to use Facebook and email signup methods. Compared to the other 2, Google sign up method is like a 404 error, Does Not Exist.</li>
</ol>
<h4 id="heading-first-device-type-vs-age-and-gender">First Device type vs Age and Gender</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*G1u8CZ839C4S3jiDZGuIgQ.png" alt="Image" width="800" height="285" loading="lazy">
<em>First Device Type -Gender[Image [14]]</em></p>
<ol>
<li>Macs are the most preferred laptops to access the AirBnB platform followed by Windows Desktop. Again, Apple is supremely popular in the US.</li>
<li>iPhones and iPads are the second most widely used devices to access the AirBnB platform.</li>
</ol>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*naCcqnOMjtuu22rhXZBKLg.png" alt="Image" width="800" height="285" loading="lazy">
<em>First Device Type-Age[Image[15]]</em></p>
<ol>
<li>Mac Desktops are highly popular amongst people in their 20s and 30s to access the AirBnB platform followed by the Windows Desktop.</li>
<li>We see a decreasing trend in the usage of Macs as the age increases. There’s no disparity between Mac Desktops and Windows Desktops for people in their 60s.</li>
<li>Smart phones, however, become unpopular as the Age increases.</li>
</ol>
<h4 id="heading-bookings-and-accounts-over-the-years">Bookings and Accounts over the years</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*lFSA9eQNF7btIYku_43sEA.png" alt="Image" width="800" height="228" loading="lazy">
<em>Bookings and Accounts [Image [16]]</em></p>
<ol>
<li>Number of bookings rapidly increase every year.</li>
<li>The sharp drop in bookings for the year 2015 is because we only have data till 29–06–2015. <code>filter(train_users_2, date_first_booking &gt;= "2015-06-2</code>9")</li>
<li>For the number of accounts created, we only have data till 2014–06–30. <code>filter(train_users_2, date_account_created &gt;= "2014-06-3</code>0")</li>
</ol>
<h4 id="heading-number-of-first-bookings-per-year">Number of First-bookings per year</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*zjpdeFl6KFdk6UuSmK162A.png" alt="Image" width="800" height="457" loading="lazy">
<em>First Bookings [Image [17]]</em></p>
<ol>
<li>Number of first-bookings is at its lowest around January. This could possibly be because the year has just ended, so people don’t travel anywhere so soon. Also, cold outside much?</li>
<li>Number of first-bookings always spikes up between the months of July and October. This could be in anticipation of festivals like Thanksgiving and Oktoberfest (or the summer holidays).</li>
<li>However, we see a sharp drop in the number of bookings starting from July, 2014 until July, 2015.</li>
</ol>
<blockquote>
<p>“In July 2014, Airbnb revealed design revisions to the site and mobile app and introduced a new logo. Some considered the new logo to be visually similar to genitalia, but a consumer survey by Survata showed only a minority of respondents thought this was the case.”</p>
</blockquote>
<p>Google “AirBnB 2014” to find the reason for the sudden drop in the number of bookings in 2014.</p>
<h4 id="heading-number-of-accounts-created-per-year">Number of Accounts created per year</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*PE5rAKyRIXCEukOpl4rQsw.png" alt="Image" width="800" height="457" loading="lazy">
<em>First Account [Image [18]]</em></p>
<ol>
<li>This plot follows a similar trend as the above plot.</li>
<li>Number of new (first) accounts created is less around January and spikes around September and October.</li>
<li>People probably create new accounts to book as well as compare prices between other services.</li>
</ol>
<p>AirBnB could probably reduce prices or give more discounts and offers during the months of August, September, and October so that more people book places.</p>
<h4 id="heading-time-between-sign-up-and-first-booking-based-on-age-and-gender">Time between Sign up and First booking based on Age and Gender</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*MwrAART4ipCW2ra5LEGBNA.png" alt="Image" width="800" height="400" loading="lazy">
<em>Booking — Signup [Image[19]]</em></p>
<p>The colored boxes indicate the interquartile range which represents the middle 50% of the data. The whiskers extend from either side of the box. The whiskers represent the ranges for the bottom 25% and the top 25% of the data values, excluding outliers.</p>
<ol>
<li>A heavy majority of people irrespective of age and gender book rooms on the day they signup. The median value is 0.</li>
<li>You can see the “outliers” book rooms more 1000 days after signing up on the platform.</li>
<li>The “wait-time” for the middle 50% users from each age bracket generally tends to decrease with age.</li>
</ol>
<h4 id="heading-time-between-the-first-booking-and-first-activity">Time between the First Booking and First Activity</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*l4T9Bprkdg5UdScqaD-9YA.png" alt="Image" width="700" height="432" loading="lazy">
<em>Booking — Active [Image [20]]</em></p>
<ol>
<li>Time between the first booking and first activity of the users 0 or close to 0 for a lot of people.</li>
<li>There are people who’ve booked their first room more than 100 days after their first activity on the AirBnB platform. Damn.</li>
</ol>
<h4 id="heading-time-between-first-booking-and-signup">Time between First booking and Signup</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*gvA4x1b6PpYOV0zeoe9euA.png" alt="Image" width="700" height="432" loading="lazy">
<em>Booking — Signup [Image [21]]</em></p>
<ol>
<li>Here, we see that the number of days is negative for quite a number of people. People have booked rooms as long as a year before creating an account. Other than that, the data seems similar to the above plot.</li>
<li>A huge number of people book the rooms on the same day they signup on the AirBnB platform.</li>
</ol>
<p>Let’s analyze the negative values. How many negative values are there?</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*D-rYnKE-qUhVWnu5W4zLmw.png" alt="Image" width="800" height="169" loading="lazy">
<em>Negative Time [Image [22]]</em></p>
<p>We see that there are only 29 negative values. This means that there were 29 users who were able to book their rooms without creating an account!</p>
<p>Let’s see in which years this happened. After filtering in only the negative values of <code>time_signup_to_booking</code>, that is people who booked rooms before signing up, we plot the following graph. This graph tells us that users could sign up before booking on the AirBnB platform from 2010 to 2013.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*EmFSzPTsprBzTNidPzG28A.png" alt="Image" width="700" height="432" loading="lazy">
<em>Count per year of booking before signing up [Image [23]]</em></p>
<p>The following statement was released by AirBnB.</p>
<blockquote>
<p>“Up until early 2013 there was a handful of flows where a user was able to book before fully creating an account (by the definition of account creation we use today). After early 2013 this is no longer possible.”</p>
</blockquote>
<h3 id="heading-results">Results</h3>
<h4 id="heading-booked-vs-not-booked">Booked vs Not Booked</h4>
<p><code>NDF</code> means no booking was made.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*2PLKtzYL1DrpJImHLoe7ig.png" alt="Image" width="800" height="400" loading="lazy">
<em>Booked vs Not Booked [Image [24]]</em></p>
<ol>
<li>There are clearly more inert users than active users.</li>
<li>Male vs Female ratio is pretty much the same for users who book vs those who don’t. NA values, however, differ. There are lot of users who don’t provide their gender and don’t book any rooms.</li>
<li>People in their 30s are the highest in the lot for both booking and not booking rooms. The ratio of <strong>Booked</strong> : NotBooked is less than 1 for people in their 20s, 30, and 40s. While the same ratio is kind of constant for people in their 50s, 60s, and 70s.</li>
<li>As you can see, a huge number of people don’t end up booking rooms. The US has the most number of bookings after that. A large number of these bookings must be domestic, as the company itself is based in the USA.</li>
</ol>
<p>The graph shows that people in their 20s, 30s, and 40s are AirBnB’s base customers.</p>
<h4 id="heading-frequency-of-the-destination-country">Frequency of the Destination Country</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*o6D-Hmf0iV5egfkQqNHWlg.png" alt="Image" width="800" height="285" loading="lazy">
<em>Freq of Destination Country [Image [25]]</em></p>
<ol>
<li>Highest number of inactive users (people who haven’t booked a room) are in their 30s.</li>
<li>Women travel around slightly more than men using AirBnB.</li>
<li>After the US and “other” countries, France is the next most popular destination.</li>
<li>More women travel to France as compared to men, while more men visit Canada as compared to women.</li>
</ol>
<p>Note that the travel need not be only international. It can be both national or international, as the country of origin of users is not provided in the dataset.</p>
<h4 id="heading-effect-of-affiliate-channel-on-the-destination-country">Effect of Affiliate Channel on the Destination Country</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*UP2mI1xz1wf_3gAOlRAqgw.png" alt="Image" width="800" height="493" loading="lazy">
<em>Effect of Affiliate Channels on Destination [Image [24]]</em></p>
<ol>
<li>Direct affiliate channels have played a major role to confirm bookings.</li>
<li>Semi branding affiliate channel plays an important role to confirm bookings, especially in the US.</li>
</ol>
<h4 id="heading-effect-of-affiliate-provider-on-the-destination-country">Effect of Affiliate Provider on the Destination Country</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*HA0F0dPpQF5fGzIYTVgi8g.png" alt="Image" width="800" height="494" loading="lazy">
<em>Effect of Affiliate Providers on Destination [Image [25]]</em></p>
<p>After the direct affiliate provider, Google plays an important role in confirming the bookings.</p>
<h4 id="heading-monthly-booking-statistics-based-on-gender">Monthly Booking Statistics based on Gender</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*urQsFGGVWyoqwltIHdFC2Q.png" alt="Image" width="800" height="494" loading="lazy">
<em>Monthly Bookings vs Gender [Image [26]]</em></p>
<ol>
<li>Women have always booked more hotels on AirBnB than men except for one month — December, 2013.</li>
<li>We can see the total number of booking peaking around July, except in 2014 and 2015.</li>
</ol>
<h4 id="heading-weekly-booking-statistics-based-on-gender">Weekly Booking Statistics based on Gender</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*W9_6fqIv1SbncelwNMo_Xg.png" alt="Image" width="800" height="494" loading="lazy">
<em>Weekly Booking vs Gender [Image [27]]</em></p>
<ol>
<li>Number of bookings is always the lowest during the weekend, ie. Saturday and Sunday.</li>
<li>The number of bookings always peaks during Thursday and Friday. People probably book rooms for the weekend on Thursdays and Fridays.</li>
<li>Hotel bookings by men drop a lot on Sundays as compared to Saturdays, but is the opposite for women.</li>
<li>The number of bookings keep increasing from Monday to Friday only to fall on the weekend.</li>
</ol>
<h4 id="heading-daily-variation-in-the-number-of-bookings">Daily Variation in the Number of Bookings</h4>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*Osmuk0J07N7s7bNBcIE1ag.png" alt="Image" width="800" height="400" loading="lazy">
<em>Daily Booking vs Gender [Image [28]]</em></p>
<p>We observe the AirBnB went from from 0–50 bookings per day in 2010 to almost 200 bookings per day in the early months of 2014.<br>The number dropped down to around 100 bookings per day thereafter.</p>
<h3 id="heading-conclusions">Conclusions</h3>
<p>Before I started working on this, I had a few preconceived notions about the kind of results I would get. For example, I did not expect iOS to be immensely popular. More so than Android.</p>
<p>Of the 432 million smart phones sold in the last quarter of 2016, 352 million ran Android (81.7 percent) and 77 million ran iOS (17.9 percent).</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0*gNLL25B636vyy50f.png" alt="Image" width="800" height="397" loading="lazy">
_Worldwide smartphone sales in the fourth quarter of 2016. (Thousands of units) [Image [29] credits: [Gartner](https://www.gartner.com/newsroom/id/3609817" rel="noopener" target="<em>blank" title=")]</em></p>
<p>The sharp drop in the number of users around July, 2014 was also kind of unexpected. I mean, the company had a terrific growth rate until that point. It all started to go downhill after that. Although we have data only until mid 2015, who knows bookings might have picked up after that.</p>
<p>Who would’ve expected the number of bookings to drop on weekends? Certainly not me. But as it turns out, if you want to go out over the weekend, you gotta book your hotels before that. <em>My bad. :P</em></p>
<p>Booking a room before creating an account? This part took me a lot of time to figure out. I thought I had erred. But when I finally Googled it, it turns out that this was possible before early 2013. AirBnB fixed the bug soon after.</p>
<p>The other thing that stuck out was, people in their 30s were more active on AirBnB as compared to people in their 20s. <em>HOW?</em> I certainly did not expect people in their 70s to travel, much less using AirBnB. <em>_</em></p>
<p>Thank you for reading. <em>Suggestions and constructive criticism are welcome. :)</em> You can find me on <a target="_blank" href="https://www.linkedin.com/in/akshajverma7/">LinkedIn</a><em>.</em> You can view the the full code <a target="_blank" href="https://rpubs.com/scarecrow21/airbnb-exploratory-analysis">here</a>.</p>
<p>You can also check out my other blogposts <a target="_blank" href="https://towardsdatascience.com/exploratory-analysis-of-fifa-18-dataset-using-r-ba09aa4a2d3c">Exploratory Analysis of FIFA 18 dataset using R</a>, <a target="_blank" href="https://towardsdatascience.com/getting-started-with-hive-ad8a93862f1a">Getting Started With Hive,</a> and <a target="_blank" href="https://towardsdatascience.com/exploratory-analysis-of-pokemons-using-r-8600229346fb">GgPlot ’Em All | Pokemon on R</a>.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How To Develop a Successful Travel App Like Priceline, Expedia and Airbnb ]]>
                </title>
                <description>
                    <![CDATA[ By Dmytro Brovkin The tourism sphere is a huge business sector that includes lots of components: travel agencies, insurance companies, hotels, restaurants and so on. It’s rather hard to overestimate the importance of mobile devices in this field — pe... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-develop-a-successful-travel-app-like-priceline-expedia-and-airbnb-9ac8c7d41cfc/</link>
                <guid isPermaLink="false">66c351bb91148fc1d02ee00b</guid>
                
                    <category>
                        <![CDATA[ mobile app development ]]>
                    </category>
                
                    <category>
                        <![CDATA[ General Programming ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ technology ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Thu, 15 Feb 2018 11:42:19 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*4cPBLVTRIVE3244ATJiYhQ.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Dmytro Brovkin</p>
<p>The tourism sphere is a huge business sector that includes lots of components: travel agencies, insurance companies, hotels, restaurants and so on.</p>
<p>It’s rather hard to overestimate the importance of mobile devices in this field — people need access to high quality service while they are away from their PCs and unable to be physically present at the office. This is where mobile apps truly shine.</p>
<h3 id="heading-why-launch-a-travel-app-a-new-landmark-on-the-digital-landscape">Why launch a Travel App: a new landmark on the digital landscape</h3>
<p>Let’s take a look at the <a target="_blank" href="https://www.statista.com/">numbers</a> before we dive deeper into the topic:</p>
<ul>
<li>In 2009 the amount of downloads worldwide was about 2.5 billion.</li>
<li>In 2011 it reached 3.1 billion.</li>
<li>We can expect the number to exceed 7 billion at the end of 2017 which is more than twice as much as six years ago.</li>
</ul>
<p>The smartphones are about to replace laptops and PCs when it comes to online shopping. If your business is connected with this field and for some reason you still don’t have your own mobile app, it’s time to think about it.</p>
<p>For travel companies as well as online retailers the advantages of a mobile application for business are quite obvious. It serves to boost the sales, improve the quality of service, and make clients more loyal to the brand and its products.</p>
<p>Mobile travel apps include:</p>
<ul>
<li>Google and Apple Maps</li>
<li>Travel planners</li>
<li>The apps that show you WiFi hotspots nearby</li>
<li>The apps that allow you to book hotels and tickets everywhere you go</li>
<li>The apps that can find services for those with special needs</li>
</ul>
<p>Launching a really helpful app for your users is a great way to get ahead of your competitors. Let’s take a look at these facts.</p>
<p>Today almost everyone has a smartphone. 65% of the travelers prefer to plan their trips with the help of mobile apps.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/ApOeTalpajbmE2qaGvsok2-3RDpFtc2OHpWS" alt="Image" width="800" height="393" loading="lazy">
<em>Trips app by Lonely Planet</em></p>
<p>Most businessmen (actually about 70% of them) book their tickets and hotels via mobile apps.</p>
<p>Around 80% of travel companies, hotels and aviation companies profit from brand exposure, income increase and other factors after an app launch.</p>
<p>Every tourist would definitely want to have an app that allows him to navigate easily everywhere they go. The travel mobile app can include dictionaries, maps, and guides to different places of interest (cafés, restaurants, museums and other). About 75% of the travelers use at least one mobile app during their trip.</p>
<p>At the moment 35% of the travelers download apps for their trip or the upcoming holidays. Another way to use the app is to share the impressions immediately or after the trip. In the era of social networks more than half of the tourists post their vacation photos online.</p>
<p>The travel mobile apps occupy the 7th place on the list of the most downloaded apps.</p>
<p>The stats show that the app launch can provide new ways to increase your income, make the brand more popular, build a loyal client base and much more.</p>
<p>Of course an app has to have a great and valuable idea, and be well-designed and developed. In this way, a mobile app can be a huge advantage for your business.</p>
<h3 id="heading-what-makes-the-difference-between-a-mediocre-app-and-a-good-one">What makes the difference between a mediocre app and a good one?</h3>
<p>What’s the ideal travel app that the users want to use? It’s an app that’s easy to understand and get into. It surely has to make their trip more comfortable and allow people to communicate with other tourists and companies.</p>
<p>These criteria make an app really helpful, reduce the pressure on traveler and make the audience more loyal.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/emRToLTKn3I0TPkJLIOb8I4H08NiVbPAncyC" alt="Image" width="800" height="314" loading="lazy"></p>
<p>Here’s a couple of tips to make a modern and attractive tourist app that will actually let you turn a profit:</p>
<ol>
<li>Make sure that you know what your target audience is. Create an image of your user and work on making the app better for him.<br>If your company works primarily with entrepreneurs and executives, it would make sense to launch an app for the business trips, maybe easy and simple tickets and hotels booking, faster airport check-in or a trip planner.</li>
<li>Make your app easy to use and user friendly.<br>If your main feature is to search the best hotel offers and book them immediately, the way to complete the registration shouldn’t be longer than a couple of clicks.</li>
<li>Enable the users to share their feedback with you.<br>Embed a button into the app that brings them to a sector where they can leave their comments, discuss what’s good or wrong with an app and so on. Such a function can allow you to get to know your audience and its needs, and understand what you could be doing better.</li>
<li>Keep in touch with the users and make sure you communicate with them consistently.</li>
<li>Make your app offline-friendly.<br>If your app will still be able to notify the people of their check-in or something else even if they’ve turned the mobile networks off, it’ll be a big advantage for you.</li>
<li>Integrate the social networks like Facebook, Instagram or Twitter with your app.</li>
</ol>
<p>The popularity of travel apps is rising at the moment, so your main goal is to launch an app that would be able to bring in and hold on to a big audience that can be monetized.</p>
<p>The business expertise is absolutely necessary at the first stage. You should analyze the market and your rivals. Find out what your target audience looks like, and understand what they’d like to see.</p>
<p>Positioning and naming are also important, that’s what attracts the most attention. After that you need to do all the dirty work with app development and create a good design.</p>
<p>The last stage is the app testing. Use as many smartphone models as possible to prevent the bugs from sneaking in.</p>
<h3 id="heading-implementing-apis">Implementing APIs</h3>
<p>If you run a travel agency and you are looking to enter the mobile app market, you can find a partnership program at popular services and use them to your advantage. For example, if you integrate a <a target="_blank" href="https://www.programmableweb.com/api/bookingcom-content">Booking.com API</a> into the app, your clients will be able to book the hotels all around the world straight from a single menu. It’s a great way to provide more opportunities to your users.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/TwG4uIg1mGaHne8jeKdTMFkhgBvaXr7RCFni" alt="Image" width="768" height="430" loading="lazy"></p>
<p>API usage is a great way to start and there’s a lot of them. Every program offers its own conditions, profits and ways to work. Let’s take a look at some of them:</p>
<ol>
<li><a target="_blank" href="https://www.booking.com/">Booking.com</a> partnership program offers over 23 million hotel rooms in more than a million places.</li>
<li><a target="_blank" href="https://www.expedia.com/">Expedia</a> API provides access to 321,000 hotels and over 400 flight companies, but is only in the United States.</li>
<li><a target="_blank" href="https://www.skyscanner.com/">Skyscanner</a> partnership allows your clients to search and book the flights right from your website. Skyscanner can also book tickets, hotels and rent the cars.</li>
</ol>
<p>You can also make use of services that offer recommendations such as:</p>
<ol>
<li><a target="_blank" href="https://developers.google.com/places/">Google Places</a> with more than 95 million places of interest and companies.</li>
<li><a target="_blank" href="https://www.facebook.com/places/">Facebook Places</a> uses its graphic API and data by Factual to facilitate search for places of interest.</li>
<li><a target="_blank" href="https://www.yelp.com/developers/documentation/v3">Yelp API</a> offers you the reviews, photos and data lists. Yelp is a great choice for the US-market.</li>
<li><a target="_blank" href="http://www.citygridmedia.com/developer/">CityGrid</a> API-interfaces include over 18 million local lists for the USA. You can even make money if your users interact with CityGrid, thanks to their program ‘Places that pay’.</li>
<li><a target="_blank" href="https://developer-tripadvisor.com/content-api/">TripAdvisor API</a> gives access to a huge database that’s made by users and subsequently to the photos, reviews and ratings of the places.</li>
</ol>
<h3 id="heading-learn-from-the-best-and-innovate">Learn from the best — and innovate!</h3>
<p>You can also find out a lot about how to make a better app by researching the other projects that are running successfully.</p>
<p>Here are some examples that you may find interesting:</p>
<h3 id="heading-airbnb">Airbnb</h3>
<p>A <a target="_blank" href="https://www.airbnb.com">rental service</a> that is one of the most popular real estate platforms in the world. It allows you to communicate straight with the apartment owners without having to pay agents for their service.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/CEWvfzkOUP04y5y9uLQwIt8-N1DfJoKVxr2j" alt="Image" width="800" height="474" loading="lazy"></p>
<p>At the moment there are more than 700,000 options available in 34,000 cities around the world. The search engine will help you find the apartment in the certain part of the city or with certain services.</p>
<p>Before you book a room or apartment you can contact the owner, discuss every detail, observe the photos and research feedback from the previous clients. The service also allows you to make your own apartment available for rent to earn money. Everything can be controlled right from your smartphone or tablet.</p>
<h3 id="heading-priceline">Priceline</h3>
<p>An <a target="_blank" href="https://www.priceline.com/">app</a> that shows you which hotels are available nearby. It’s very helpful for the people who travel unexpectedly and don’t search for hotels in advance. It shows the prices, feedback and sales. Priceline also allows you to find car rental stations, buses and trains schedule and so on.</p>
<h3 id="heading-expedia">Expedia</h3>
<p>It’s an <a target="_blank" href="https://www.expedia.com/">app</a> that plans your trip and books flights and hotels. There’s the full information on when you arrive, leave and so on. It also offers you all the feedback and ratings available.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/uFd7B7c5uao0yxbn5ywaRB72xJjDEpR8a7My" alt="Image" width="800" height="420" loading="lazy"></p>
<p>So, the travel mobile app opens up a variety of ways to make your business grow and get bigger. The companies that launch a successful mobile app and keep in touch with their audience in order to make the quality of their services better, have much more chances to succeed in the industry.</p>
<p>We sincerely hope that our article will be helpful for you if you’re looking to launch your own app or just learn something new about mobile travel apps. If you want to build your very own application, <a target="_blank" href="https://octodev.net/">Octodev team</a> will be happy to assist and guide you through the whole process.</p>
<p>This article was originally published on the <a target="_blank" href="https://octodev.net/blog/">Octodev Blog</a>.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Seoul Bike: How I redesigned Seoul City’s public bicycle system ]]>
                </title>
                <description>
                    <![CDATA[ By Martin Totev Frustration with the current app drove me to create my first UX case study. As a beginner in UX design, a great way to learn something new is through practice. This case study was an amazing opportunity to start my journey. With this ... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/seoul-bike-case-study-6ac4172f7188/</link>
                <guid isPermaLink="false">66c35e85e9895571912a0d10</guid>
                
                    <category>
                        <![CDATA[ Design ]]>
                    </category>
                
                    <category>
                        <![CDATA[ startup ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                    <category>
                        <![CDATA[ UX ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Sat, 14 Oct 2017 11:44:17 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*Ks-DGwKBq0Sm847-Xlmp2w.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Martin Totev</p>
<h4 id="heading-frustration-with-the-current-app-drove-me-to-create-my-first-ux-case-study">Frustration with the current app drove me to create my first UX case study.</h4>
<p>As a beginner in UX design, a great way to learn something new is through practice. This case study was an amazing opportunity to start my journey. With this as my objective, I contacted a senior from my university with a lot of work experience in the field and asked for his assistance and mentoring.</p>
<p>We met on a Sunday in a coffee-shop somewhere in Seoul and started working. I brought my old Samsung laptop (eventually replaced with a Macbook) and a small notebook to our first meet-up.</p>
<p>For a few weeks I sketched and sketched, trying to understand the app and how the service was designed. I found problems that stem from the service itself, others from the app design. But let’s not steer away from the point of this post.</p>
<h3 id="heading-what-is-seoul-bike">What is “Seoul Bike”?</h3>
<p><img src="https://cdn-media-1.freecodecamp.org/images/hT9fXlALI-2P8628qTLrMdU2YtFfqPBPvJKz" alt="Image" width="800" height="291" loading="lazy">
_1st generation(left) and a 2nd generation Seoul Bike(right), a [gift from the Dutch embassy to Seoul City](https://www.dutchcycling.nl/news/140-dutch-prime-minister-donates-bikes-to-seoul" rel="noopener" target="<em>blank" title=").</em></p>
<p><a target="_blank" href="https://www.bikeseoul.com/">Seoul Bike</a> or 따릉이 Ttareungi) is an un-manned, bicycle rental system. As the title says in Korean — 서울자전거 따릉이 — 무인대여시스템, it’s a very cheap public bicycles system covering Seoul. The coverage of the system and the ability to return a bicycle at a different location than the one you rent it from, is its biggest advantage over the competition. Seoul Bike is currently experiencing a very fast growing user base.</p>
<p>There are 3 generations of bicycles that look very similar and are very hard to distinguish. They are usually donated by a large corporation, but information on who and how many donated, has not been updated for quite some time. Samsung donated 3,000 bicycles and installed 300 racks last year. Some of the bicycles are donated by Naver, Kakao, Woori Bank, and even the embassy of the Netherlands.</p>
<p>The bicycle is fairly simple. It has 3 gears and a retracting seat specially made to only fit these bicycles — bicycle seat theft is still a thing for some reason. There is a touch screen user interface with a single button and a speaker. There’s also a locking mechanism for locking the bike to a Seoul Bike rack, or temporarily locking it to a pole when you have to leave it for a while. In the middle of a ride you can check how much time you have used the bike for, what distance you have travelled, and how many calories you have burned.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/LJ6cPxZ-eT8Okqgj8w4r5KP9qkKOp769FIKF" alt="Image" width="800" height="1066" loading="lazy">
<em>On-bicycle touch screen interface.</em></p>
<p>The service utilises multi-use “<em>tickets”</em> which expire after a certain amount of time. These “<em>tickets”</em> are divided into Short term and Long term ones. A short term ticket is a single day ticket that costs <em>1,000 won and</em> expires in 24 hours after purchase. The long term tickets include <em>7 days (3,000 won)</em>, <em>30 days (5,000 won)</em>, <em>180 days (15,000 won)</em> and a <em>365 days (30,000 won)</em>.</p>
<p>To prevent bicycle hoarding the default amount of time that a user is allowed to rent for is 1 hour (normal ticket) or 2 hours (premium ticket). If you go over 1 hour (or 2 hours if premium ticket) there is a penalty of 1,000 won for every hour. And upon return of the bike the user must pay his penalty first before renting again. This hoarding prevention scheme is quite effective.</p>
<p>As I mentioned, a ticket is multi-use — so a user could always return a bike to a rack and rent it again. Thus bike hoarding is still possible, as long there is a rack nearby and you are in the mood of going up and down.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/6n7qUIPTRsqjPKsMg3qnajaQu7OjEwfW2P9T" alt="Image" width="800" height="250" loading="lazy">
<em>Solid Line: in-app; Dashed Line: on-bicycle interface.</em></p>
<p>The renting process is only done through a mobile app that until recently was Android only. And here comes a handful of problems — the app is over- complicated, and the whole user-flow is off, riddled with misplaced assets. For instance, why is there a back button on the main screen? Go back to where? And why does the app have missing essential notifications and information?</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/jynQ4XvmZSvsyl8Zo0Zcv1C1q5GHmHsgDKy8" alt="Image" width="301" height="500" loading="lazy">
<em>The first screen you see when you open the app.</em></p>
<p>Let’s start with the main page. The page that welcomes you when you first start the app is pretty basic. You have a <em>Login button</em>, a <em>Station button</em> which takes you to the map that marks the locations of the racks and how many bikes are available. Renting isn’t possible from this page. Then there’s a <em>Ticket Purchase button</em> and a <em>My Page button</em> which contains information about your rides. There’s also a <em>Call Centre button</em> for when you need to ask for help.</p>
<p>One thing that you might have noticed is the <em>back button</em> on the top left of the screen. A button that leads you nowhere. And a <em>hamburger menu button</em> on the right that forces the menu to pop out from the left of the screen. Why?</p>
<h3 id="heading-login">Login</h3>
<p>The current design requires a user to log in and proceed with the service. It has the option of remembering your username and password. But upon closing the app the user is logged out, creating this mandatory <em>Login Page</em> tap — that could be bothersome, especially if you are in a hurry. The Login screen should be a one time experience for a mobile app. After all a mobile phone is a personal device that is rarely left unattended.</p>
<p>The app itself does not store credit card information and other sensitive data that must be protected with a mandatory automatic log out. With the redesigned experience, such sensitive data will be protected with a password prompt. This will add an extra layer of protection from undesired 3rd parties.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/w7apQRcBKyYJspSXig2bworfoyf-3XtsWQW9" alt="Image" width="800" height="600" loading="lazy">
<em>Once logged in on a device, the profile is stored in the device (e.g. Facebook, Daum, Twitter etc.)</em></p>
<h3 id="heading-main">Main</h3>
<p><strong>Seoul Bike</strong> is a service that offers rentals of transportation vehicles. Hence, the first thing a user should see is a map with locations around him from where he could rent. With a single glance of the screen, the user should see the currently selected rack and the other racks in the vicinity. The available and unavailable ones should be easily distinguishable. Car rental apps like <a target="_blank" href="https://www.socar.kr/"><strong><em>Socar</em></strong></a> and <a target="_blank" href="http://www.greencar.co.kr/"><strong><em>Green Car</em></strong></a> show the user a map with locations near you.</p>
<p>A major problem I noticed when using the service for a whole year is that a number of users tend to rent a bicycle that is too far away from them. This prevents people at the rack from using the service. Currently if you rent a bicycle and not unlock it from the rack within 5 minutes, the rent is automatically cancelled. For a casual leisure ride, waiting for 5 minutes is not that big of a problem ( nobody likes waiting in the current fast paced lifestyle). But for someone that starts his or her morning commute to work, waiting for 5 minutes is not an option.</p>
<p>To prevent such occurrences, I designed the service to make use of the mobile devices location tracking. This will see if the user is within 100 meters of the rack he intends to rent from. A normal GPS in a modern mobile device has accuracy of around 50 meters — and 100 meters is, in my opinion, a safer distance for a GPS. A distance of 100 meters means the user could see the rack if nothing is in the way, and need just few seconds to approach it.</p>
<p>The GPS data could be used to improve the service by analysing how users move with the bikes, when are the peak hours and which areas need to be managed at what times. Currently there is no such data and it is not analysed, and some areas where the bicycles are part of the morning commute are not managed properly.</p>
<p>This data could be a great source of information for the city government itself. It could prove to be essential for an ever growing city with overpopulation and traffic problems. An affordable and reliable network of bicycles could ease the other means of public transportation, something that Seoul City needs to concentrate on.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/OwuqSpG6fCPCvshTqtACJmgLd8Hqnc3Qpt18" alt="Image" width="800" height="600" loading="lazy">
<em>The main screen contains other rent option wit just a click of a button.</em></p>
<p>There are manual options currently used in the app, such as manual search and QR code scan. They are quite useful in the event of GPS error or if the location of the user is unavailable. The user could always search for a rack by it’s unique number or name, or scan a QR code attached to the rack to use the service. These modes are switched with just a single tap from the top bar. Search screen also contains your favourite locations personalised by the user.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1sqUz9g9w7iaflCXgEw-yMnNv9JlVeAAT4gy" alt="Image" width="800" height="600" loading="lazy"></p>
<h3 id="heading-notifications">Notifications</h3>
<p>Usually when I am in a hurry, I get a very unwanted surprise every now and then. A message “You do not have a ticket, purchase one first and try again” comes out of the speaker attached on the bike. Sometimes when I need a bicycle the most, there is none at rack near my house. Not a surprise I enjoy, but a surprise nonetheless.</p>
<p>To prevent such incidents, some essential information should be displayed through non-intrusive push notifications. For instance — the current number of bicycles at a favourite rack, the time remaining of your current ride, and an imminent expiration of a ticket. The user is required to select a certain time frame for the features to work. This is needed to reduce the load on the servers from the constant update requests and mobile data usage.</p>
<p>Let’s imagine a person called Zoe. Zoe lives in an area where there is no direct bus to the subway station where she goes daily. The walking distance is around 14 minutes, but with a Seoul Bike she can go there in 5. With the increased popularity of the bikes she is often forced to walk in a hurry, because there are no bikes on the rack.</p>
<p>With this feature, she adds the nearest bicycle rack to her favourites. Next, from the app settings she turns on <em>notifications</em> for the <em>rack status.</em> From 08:00 to 08:20 she gets updates on how many bikes are available there. This will help her plan in advance if she needs walk to the subway station and leave a bit early.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/ehUUsnlkJVCSRjfCubioYMbmeZIIyFasPaVa" alt="Image" width="800" height="600" loading="lazy"></p>
<h3 id="heading-hamburger-menu">Hamburger Menu</h3>
<p>The “hamburger” menu is like the map of the app, it takes a person from point A to point B with ease. By grouping features the user can easily remember their locations on the screen. As the central crossroad of the app, it can be used to inform the user with essential information.</p>
<p>One of the most uncomfortable aspects of the current app is the difficulty of finding how much time is left on your current ticket. This is something that should be displayed in a proxy location, that takes a user from point A to point B of the app. In my design this location is the “Hamburger” menu to the side. It includes a real time information on the status of the current ticket, and does not require the user to enter a special page to view it.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/a4hAjEMvjZvdYB7stEgEje2IaiSfOIcgLlM-" alt="Image" width="800" height="600" loading="lazy">
<em>English language support for foreign visitors and expats who do not speak Korean.</em></p>
<h3 id="heading-payment">Payment</h3>
<p>Another frustrating aspect of the app is the ticket payment stage. Korea, and especially government operated online services, are obsessed with security. Most of them use a process of payment that is rage-infusing. There’s Active X, mobile phone authentication (sometimes several times) and a ton of other steps, just to spend 5,000 won on something.</p>
<p>I can’t count the times I gave up buying something online because the payment stage left me speechless. A payment process should be secure yet quick, thus the “Ticket Purchase” pages required a new model. <a target="_blank" href="http://www.kakao.com/kakaopay/"><strong><em>Kakao Pay</em></strong></a> or <a target="_blank" href="http://www.kakao.com/kakaopay/"><strong><em>Naver Pay</em></strong></a> are brilliant payment services made to be easy and fast, and this app is in need of such.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Cl0i3H2vohSk-J4UyfiAB38X50LRfOK94IDY" alt="Image" width="800" height="600" loading="lazy">
<em>Less complication was the main target when designing this page.</em></p>
<p>With the collaboration of <a target="_blank" href="http://www.kakao.com/kakaopay/"><strong><em>Kakao Pay</em></strong></a> or <a target="_blank" href="http://www.kakao.com/kakaopay/"><strong><em>Naver Pay</em></strong></a> the whole payment process could be significantly simplified. It would become a more enjoyable experience, instead of an intimidating one that drives users away from the service, and which sometimes does not allow foreigners to pay at all. It did get better to be honest, but there are still limitations.</p>
<h3 id="heading-problem-report">Problem Report</h3>
<p>Maintaining a growing garage of bicycles would require a very large workforce that could be out of budget for a local government. Instead of a large workforce, problematic bicycles could be engaged through user reports.</p>
<p>Currently the app has only a call-centre where you could ask for help or report a problem with your bike or any other bike. Because of the scale of the service and how it’s built, there is no way to track when the bicycle broke down. If a bicycle breaks down while I was using it, I could just return it to a rack and leave it broken. The next user could report it but there is no benefit of going through the trouble of reporting it. Designing a reward based system is what Seoul Bike needs.</p>
<p>Unfortunately, I couldn’t find any usage statistics. But the service has an ever-growing user base, and I have noticed a lot more problematic bicycles on my daily commutes.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/qEFpl7yEDlfcTeU8vECr4gJA3O-lXs0rBvmP" alt="Image" width="800" height="600" loading="lazy"></p>
<p>Categorisation of the most frequent problems simplifies the page. Not only is it easy for the end user, it is also easier to log and for the engineers to prioritise tasks. Under every major category there are more detailed options just a tap away, such as punctured tire, bent wheel or spikes and so on. If the problem is not part of these categories or if there is something extra that you want to explain to the engineers, there is a message option under the “Other” tab.</p>
<h3 id="heading-ps-why-from-green-to-blue-and-red">P.S. Why from Green to Blue and Red?</h3>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Ycl7MYEo4tFhrFtsWTmlxAl9bTkdI9JBF8m4" alt="Image" width="800" height="450" loading="lazy">
<em>I will Seoul You!</em></p>
<p>Seoul City had a very controversial <a target="_blank" href="https://brandinginasia.com/i-seoul-you-the-confusing-new-slogan-for-seoul/">re-branding</a> last year. But there is a lack of unification between the services that the city government provides and the branding. I get it why the current colour on the app and the logo is Green — bicycle = Eco-friendly, Eco-friendly = Green. I believe that we should stop the over-use of the green colour when something is branded as eco-friendly.</p>
<p>Seoul invested a lot of money in re-branding itself, and there needs to be consistency in the branding of their services. So I chose to use a derivation of the two colours used in “<strong>I</strong> •<strong>SEOUL</strong> • <strong>U”</strong>. Slightly tweaked blue and red from the city brand creates a nice contrast — with white and black and almost all shades of grey. Thus it becomes easier to create a hierarchy with the colours, even for colour blind people.</p>
<p>Usability was my main focus, and these two colours were the best fit for this design while still maintaining consistency with the Seoul brand.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Dl8sRVv7UTAHq5sJOXMRbP2-tyfNoc94HQbS" alt="Image" width="800" height="125" loading="lazy">
<em>The logo that set the Korean design community on fire.</em></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Syo3i-BU7dLHt0ZhCDKbBAcoKVsnaMRtoj4f" alt="Image" width="800" height="346" loading="lazy">
<em>Brand consistency is something that should be enforced throughout all Seoul City services.</em></p>
<h3 id="heading-free-ui-kit">Free UI Kit</h3>
<p>After working on this project in my spare time I got inspired by two people to release the file as a UI kit. Other people now can use the assets for their own designs. One of the people I was inspired by is a university friend of mine, who worked for 2 years on creating a Korean font (Busan Bada/부산바다체) and released it for free.</p>
<p>Another inspiration was the creator of <a target="_blank" href="https://yeun.github.io/open-color/"><em>Open Color</em></a> and her interview on the <a target="_blank" href="http://itun.es/kr/i6TOib.c"><em>Design Table podcast</em></a> (lang: Korean). Her views on Open Source projects were really inspirational.</p>
<p>Moreover, a few weeks ago the team at Bohemian Coding released Sketch v47 and the <em>Libraries</em> function — which takes symbols to a whole new level. So by sharing my Sketch file with the world, I hope I can help someone with some of the assets I made.</p>
<p>This project was designed for an Android device, thus all the assets are inspired by Google’s Material Design. But in the future, I plan to update the file with an iOS cantered design (can’t promise that it will be done!). The symbols and buttons I put together are free to use. So feel free to include them in your Sketch Libraries!</p>
<h3 id="heading-download-the-free-ui-kit-herehttpsmartintotevgithubiouikithtml">Download the free UI Kit <a target="_blank" href="https://martintotev.github.io/uikit.html">here</a>.</h3>
<p>For previews of some of the symbols in the file click <a target="_blank" href="https://www.dropbox.com/sh/ttw5sz8nkr4cwol/AADZWctUBhCCRQ84S8VowrkAa?dl=0">here</a>.</p>
<p>This UI Kit is free for personal and commercial use. If you use this kit as part of your work, mentioning it is greatly appreciated.</p>
<p><strong>The UI design itself is copyrighted, so please do not upload it on Dribble or Behance and claim it as your own. That would be really uncool. Like reeeaaaaally uncool…</strong></p>
<h3 id="heading-cheers-and-keep-on-creating">Cheers and keep on creating!</h3>
<p>You can find me at <a target="_blank" href="http://martintotev.github.io">martintotev.github.io</a>, follow me on twitter <a target="_blank" href="https://twitter.com/martintotev89">@martintotevUX</a> or shoot me an email at martintotev89@gmail.com</p>
<p>Special thanks to <em>Sang Hyeon Park</em> for becoming my mentor and guiding me into UX Design.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to travel the world as a developer ]]>
                </title>
                <description>
                    <![CDATA[ By Iskender Piyale-Sheard We’ve all seen it. That Facebook photo of a friend posing on a paradisiacal beach — with a laptop and a coconut drink — and the caption: “my office for the day.” For a lot of people, this is living the dream. And it’s not ha... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-be-a-developer-and-travel-the-world-376818109bff/</link>
                <guid isPermaLink="false">66c34f15f41767c3c96bace8</guid>
                
                    <category>
                        <![CDATA[ Digital Nomads ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Life lessons ]]>
                    </category>
                
                    <category>
                        <![CDATA[ self-improvement  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ startup ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Fri, 19 May 2017 22:49:14 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*rK0jwo0-Zx4dectQ2uzZJg.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Iskender Piyale-Sheard</p>
<p>We’ve all seen it. That Facebook photo of a friend posing on a paradisiacal beach — with a laptop and a coconut drink — and the caption: “my office for the day.”</p>
<p>For a lot of people, this is living the dream. And it’s not hard to see why.</p>
<p>Having a job that allows you to make your own hours and travel at the same time is pretty cool. But it’s not always easy.</p>
<p>So let’s talk about how you can get started. We’ll discuss some of the best resources you can take advantage of, and some things to watch out for along the way.</p>
<h3 id="heading-set-realistic-expectations-of-remote-work">Set Realistic Expectations of Remote Work</h3>
<p>First off, let’s get one thing straight. The beach is an awful place to work. You may have tried it once or twice to make all of our friends back home jealous of your incredible new lifestyle. But the fact of the matter is:</p>
<ul>
<li>The beach has no WiFi.</li>
<li>Sand and salt mess up your computer (sand + magsafe adapter = no fun)</li>
<li>You get horrible sun glare on your monitor.</li>
</ul>
<p>And there are a hundred other reasons why you don’t actually want to try and work on a beach.</p>
<p>The reality of remote work is you’ll probably be spending most of your time in cafes, co-working spaces, public areas with wifi, and at home. And that’s great! There’s nothing wrong with that!</p>
<p>And for the record, all those people posting ridiculous photos of their “office for the day” are mostly full of it.</p>
<p>Take it from me — I’ve personally gone to these sorts of satirical extremes:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/ZyXBbvig2ZWg1c3Z91XIMwUOJJl-FAv3y6-W" alt="Image" width="800" height="533" loading="lazy">
<em>Cloud Computing</em></p>
<h3 id="heading-challenges-that-remote-developers-face">Challenges That Remote Developers Face</h3>
<p>Some of the biggest challenges that remote developers face while working abroad are:</p>
<ul>
<li>Unreliable/slow wifi</li>
<li>Finding consistent places to work (daytime/nighttime)</li>
<li>Being surrounded by people on vacation (while you need to clock in hours for work)</li>
<li>Coordinating work with people in different timezones</li>
<li>Finding places to hop on a call with your coworkers/clients</li>
<li>Navigating the legal issues around working remotely abroad without a work permit</li>
<li>Staying focused while making your own hours</li>
</ul>
<p>These may not seem like particularly big challenges at first, but when you’re on the road for a while they really start to pile up. And the more inconveniences you have, the more difficult it is to keep a steady routine.</p>
<h3 id="heading-what-about-the-good-stuff">What About The Good Stuff?</h3>
<p>Now that we’ve cut through a lot of the difficult stuff, why don’t we dig into the juicy bits. What makes remote work great?</p>
<p>Remote work can be extremely rewarding if you get into a good groove with it. One of the best things about it is that even if you are working 40–50 hours week (or often more for business owners), as soon as you’re on a break, you get to pop out for lunch in Japan, or go for an after-work surf in Bali, or zip home on your scooter through some luscious green rice paddies in Vietnam.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/NoVDa-4h4fQmy4QSc14tl7h4-PJk71y3-DJx" alt="Image" width="800" height="533" loading="lazy"></p>
<p>You’ll start to notice that even if you don’t have many of the luxuries you might have back home (a car, a 4K TV, your blazing fast wifi, your entire home being automated with a Raspberry Pi), the novelty of living in a drastically different environment is a very fulfilling experience.</p>
<p>It’s really the novelty of all the small interactions you have outside of work, the places you get to explore on evenings and weekends or on a particularly nice afternoon that make remote work extremely satisfying. You get to make friends with locals, learn as much of a new language as you can, and soak in all that incredible culture.</p>
<blockquote>
<p>“To my mind, the greatest reward and luxury of travel is to be able to experience everyday things as if for the first time, to be in a position in which almost nothing is so familiar it is taken for granted.” — Bill Bryson</p>
</blockquote>
<h3 id="heading-how-to-get-started">How To Get Started</h3>
<p>There are a few ways of going about getting started with remote work — either by getting a new job, taking on freelance work, or negotiating with your boss.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/lwFtjQioaq5kycfX3aLkuvFJG2HgkCBJeMZX" alt="Image" width="800" height="533" loading="lazy"></p>
<p>Method #1: Find a remote job on a website like <a target="_blank" href="https://remoteok.io/">RemoteOK</a> or any one of these <a target="_blank" href="https://skillcrush.com/2014/10/10/sites-finding-remote-work/">25 other websites</a>.</p>
<p>Method #2: Find some freelance work opportunities through friends and acquaintances to build a client base. Or try websites like <a target="_blank" href="https://www.upwork.com/">Upwork</a> or <a target="_blank" href="http://toptal.com/">Toptal</a>.</p>
<p>Method #3: Negotiate a few small baby steps for remote work with your boss, then knock it out of the park. Try a couple days, then push for a couple weeks. Read <a target="_blank" href="http://lifehacker.com/5989936/how-can-i-convince-my-boss-to-let-me-work-from-home">this Lifehacker article</a> on how to convince your boss.</p>
<h3 id="heading-word-to-the-wise-a-few-little-tips"><strong><em>Word To The Wise (a few little tips)</em></strong></h3>
<p>The biggest factors in making your remote work experience successful is maintaining a balanced healthy and sustainable lifestyle. So start establishing some routines.</p>
<h4 id="heading-do-you-normally-cookwork-out"><strong>Do you normally cook/work out?</strong></h4>
<p>Eating out all the time is an easy (and delicious) trap to fall into. Make sure you find ways to keep a healthy diet, and not be too frequently seduced by the tasty but junky tourist food. Work out? Find a gym, go for runs, or find some ways to get that exercise in.</p>
<h4 id="heading-do-you-have-a-routine"><strong>Do you have a routine?</strong></h4>
<p>Set some standard office hours for yourself and stick to them. Wake up early and get your brain working, make a cup of tea, go for a walk and get the day started. It’s ok to stray away from the routine here and there but for the most part keep it consistent.</p>
<h4 id="heading-do-you-have-a-steady-spot"><strong>Do you have a steady spot?</strong></h4>
<p>Where are you going to be working from day to day? Find a cafe that has decent wifi and is open during the hours you need to work. Not enough? Then get a membership at a co-working space, hint they have awesome places all over the world. Scout out some great spots on <a target="_blank" href="http://workfrom.com/">Workfrom</a>.</p>
<h4 id="heading-do-you-have-a-vague-idea-of-where-to-travel-to"><strong>Do you have a vague idea of where to travel to?</strong></h4>
<p>You don’t have to have things planned out to a T. But getting some opinions on nice places to go that have reliable internet, great 4G SIM cards (major bonus points for places like Thailand and Taiwan).</p>
<p>The best places to start your search is on <a target="_blank" href="http://nomadlist.com/">NomadList</a>. You can filter by weather, ease of access, cost of living, internet speeds, and much more.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/MqSllLbV8OvkUVLHcqM5qVjJCNqlZdPNRK8b" alt="Image" width="800" height="393" loading="lazy"></p>
<p><strong>Do you have people around you who are working too?</strong><br>Hanging around in hostels and the like can be challenging because everyone you’ll meet will likely be on vacation. Not the ideal scenario for you, someone who is trying to take on sustainable long-term travel. Find others like yourself who are working remotely and you’ll benefit immensely.</p>
<h3 id="heading-learn-from-others">Learn From Others</h3>
<p>Over the course of your travels, you’ll meet lots of incredibly talented developers and entrepreneurs. One thing I’d emphasize more than anything else I’ve mentioned so far is to take advantage of opportunities to meet them.</p>
<p>Check out <a target="_blank" href="https://www.meetup.com/">Meetup.com</a> and find events near you. Go to co-working spaces and find local startups to meet with.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/aLeLJFxhFa2dqMZiRfYsm7eSoNe8Jv5fu-FM" alt="Image" width="800" height="533" loading="lazy"></p>
<p>Being exposed to developers and entrepreneurs from all over the world is one of the most educational and rewarding experiences you’ll have. It will open your mind to diverse perspectives, philosophies, and expertise. There’s really nothing like it.</p>
<h3 id="heading-what-about-co-working-retreats">What About Co-working Retreats?</h3>
<p>Some people call them co-working retreats, others call them co-workations. There are a million different names for these types of events.</p>
<p>One way or another, you’ve probably heard murmurs or gotten ads on Facebook about how to travel around the world for a year with a group of like-minded people. As a matter of fact, that’s how I started my work-travel adventure. For a year, I was the Trip Facilitator for a group called <a target="_blank" href="http://www.hackerparadise.org/">Hacker Paradise</a>.</p>
<p>Today, these types of retreats are a dime a dozen. Everyone and their uncle has started some sort of travel+work, yoga+coworking, surfing+coworking retreat, and they can vary significantly in length, quality and price. Here’s a <a target="_blank" href="https://coworkations.co/">whole list of ones you can check out</a>.</p>
<p>My only word of advice here is be careful and read lots of reviews before making a big commitment.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/PM9czva972yNAUFXxPfNB26KWW6kcPaZPgNd" alt="Image" width="800" height="533" loading="lazy"></p>
<p>Recent bootcamp grad? Have a long think about this decision? Immediately delving into long term travel by yourself is probably a mistake. Your biggest goal right now should be to hack on new projects, contribute to open source, and solidify and build upon all the skills you’ve learned.</p>
<p>That being said, while you’re looking for work, joining a co-working retreat for developers for a few weeks could prove to be extremely beneficial. It could get you collaborating with brilliant developers. Together, you could hack on fun projects. You could build an incredible network of people who can share opportunities, connections, and advice.</p>
<h3 id="heading-long-story-short">Long Story Short</h3>
<p>Want to work and travel? Awesome! Find a way and make it happen. Talk to successful people you know who’ve done it and ask for advice. Just like learning to code, you have to get comfortable with being uncomfortable.</p>
<p>DRY: Don’t Repeat Yourself. Just like in programming, you don’t need to reinvent the wheel. Take advantage of all the awesome tools and resources people use to make their work/travel lives easier and more effective.</p>
<p>Take advantage of the incredible people you’ll meet and learn from them. Keep those connections close and they will inevitably come back to benefit you later.</p>
<p>Good luck and happy travels! Questions? Feel free to reach me on Twitter <a target="_blank" href="http://www.twitter.com/izzydoesizzy">@izzydoesizzy</a>.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/birV9MLyAbAMlQf7UgEyka1LTR-BTMZ591OU" alt="Image" width="800" height="533" loading="lazy"></p>
<h3 id="heading-about-izzy">About Izzy</h3>
<p>Iskender Piyale-Sheard (aka Izzy) is the Community Manager at <a target="_blank" href="http://bit.ly/linkedinizzy">Lighthouse Labs</a>, a web/iOS bootcamp in Canada. In his spare time, he likes to write about career growth, teach himself to code and work on <a target="_blank" href="http://github.com/izzydoesizzy/">fun community projects</a>.</p>
<p>Find him at: <a target="_blank" href="http://izzydoesizzy.com">izzydoesizzy.com</a></p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ What I learned from flying to Seattle for Microsoft’s final wave of design interviews ]]>
                </title>
                <description>
                    <![CDATA[ By Tiffany Eaton Before I tell you about my onsite interview with Microsoft, I applied for the UX design intern position. My experience may differ from others, but it is definitely similar in regards to the rather rigorous (and long) process. Backgro... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/what-i-learned-from-flying-to-seattle-for-microsofts-final-wave-of-design-interviews-8eab06c50ce5/</link>
                <guid isPermaLink="false">66c365660cede4e9b1329d40</guid>
                
                    <category>
                        <![CDATA[ Design ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Life lessons ]]>
                    </category>
                
                    <category>
                        <![CDATA[ startup ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Fri, 03 Mar 2017 07:40:30 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*6gTP1ZkTCSFHy7BMsV0vJw.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Tiffany Eaton</p>
<p>Before I tell you about my onsite interview with Microsoft, I applied for the UX design intern position. My experience may differ from others, but it is definitely similar in regards to the rather rigorous (and long) process.</p>
<h3 id="heading-background">Background</h3>
<p>One of my goals is to gain experience in a really big company and work on products that have a HUGE impact on millions of users around the world. Out of the companies I interviewed with, I am writing about Microsoft because it was a very comprehensive experience. This gives me a chance to reflect on each aspect of the interview process. Though things could have gone better in regards to the interviews, I have learned SO much about myself and how to improve as a designer.</p>
<p>I have used Microsoft’s products in past and since using them, they have helped me do simple tasks effortlessly, such as a writing a paper in Word or creating spreadsheets in Excel. Through countless uses, these products have left a lasting impression on me because of how versatile and convenient they were.</p>
<p>I also saw the kinds of designers who were working at Microsoft and their recent product releases. I saw the sheer amount of diversity and cross-collaboration driving the company to reimagine productivity for a wide range of users. And this was what really made me want to work at Microsoft.</p>
<h3 id="heading-the-first-email">The First Email</h3>
<blockquote>
<p>Hello Tiffany,</p>
<p>We are very interested in speaking with you more about your technical skills and abilities to continue in the interview process for a User Experience role. There are many exciting opportunities and challenges to take on at Microsoft and we’d like to talk with you about the possibilities.</p>
</blockquote>
<p>When I saw this e-mail, I was <em>ecstatic.</em> It was so unexpected and out of the blue that I thought it wasn’t real. I actually <em>passed</em> the resume screening and had the chance to intern at Microsoft.</p>
<p>I applied to Microsoft via online application with no referral and 2–3 weeks after sending the application, I received an email from a recruiter who was interested in interviewing me and sent me a link to schedule my interview.</p>
<p>I quickly entered my information and the times I was available. Now it was just a matter of time before the first round of interviews. Time to OWN it.</p>
<h3 id="heading-preparation">Preparation</h3>
<p>Before the phone interview, I had 2 weeks to prepare so I did a little research on Microsoft, such as what they were doing at the time as well as the company itself (values, products, etc). I was also actively searching for companies and had an onsite interview with another company in which I had received an offer from, so I had a feeling of what to expect from the phone interview.</p>
<p>I looked up people’s experience with the phone interviews online (Quora, Glassdoor, blog posts) and questions which might come up.</p>
<p><strong>These three questions are typically asked in design interviews to lead the conversation:</strong></p>
<ul>
<li>Tell me about yourself (your background in design such as how did you get into it)</li>
<li>Tell me about xxx project (a rundown of the project; title, what the project is, contribution, bullet point version of process, results, learnings and what you would have done differently, WHY is the project important to you)</li>
<li>Why x? (summarize your skills, how can you contribute to the company, are you a culture fit?)</li>
</ul>
<p>By having a basic understanding of what questions I might be asked, I wrote them down and then bullet pointed experiences (examples of projects, situations in school or from my internships) I could talk about for each question, connect it to Microsoft’s values and convey how I could contribute to the company’s needs.</p>
<h3 id="heading-phone-interview">Phone Interview</h3>
<p>I interviewed with a senior interaction designer who is part of the Bing team. From some other people’s experiences, they would interview with a recruiter first to screen applicants but this was not the case for me. I believe they expedited the interview process for whatever reason.</p>
<blockquote>
<p>Tell me about yourself</p>
</blockquote>
<p>After exchanging basic how are yous, the interviewer immediately asked me to tell me about myself. Because, it was such a broad question, I asked her to clarify a bit more by asking what she wanted to know about me. If you are not sure about answering a question, it never hurts to ask clarifying questions as it shows your thoughtfulness to what the interviewer would want to hear.</p>
<blockquote>
<p>Tell me about a project you did</p>
</blockquote>
<p>After I told her about how I got into design, she asked me to talk about one of my recent projects at the time. I talked about a start up project I was working on with a team of three designers to connect junior designers with senior designers. I told her about the process of coming up with the idea as well as the overall purpose of why we were designing the product in the first place.</p>
<blockquote>
<p>Answer every question like a story</p>
</blockquote>
<p>I didn’t just talk about the project; I told a story about how my teammates and I came up with the idea, the struggles we had as a team, how we overcame it, and what I learned from the experience. By framing every answer like a story, the interviewer can relate to you better and it creates a better interview atmosphere. Here is a structure my teacher, <a target="_blank" href="https://www.freecodecamp.org/news/what-i-learned-from-flying-to-seattle-for-microsofts-final-wave-of-design-interviews-8eab06c50ce5/undefined">Christina Wodtke</a> taught my class to answer questions without having to remember a script: S.T.A.R.</p>
<ol>
<li><strong>Situation</strong> - Explain the experience (context)</li>
<li><strong>Trigger</strong> - What was the problem you needed to solve?</li>
<li><strong>Action</strong> - The steps you took to solve it</li>
<li><strong>Result</strong> - Was the outcome positive or negative? (describe you learned or what you would take away from the experience)</li>
</ol>
<p>With this method, regardless of the question, I was able to describe a story of facing obstacles which resonated better than giving a straightforward answer. Interviewers want to know about you as a person and why you made the choices you did.</p>
<blockquote>
<p>Tell me about a technical problem and how did you overcome it?</p>
</blockquote>
<p>Following the question about my project, the interviewer proceeded to ask me a technical problem that occurred in the project and how I approached it. In 5–10 minutes, I told her about the problem of validating our idea and reaching out to our target audience in regards to our value proposition.</p>
<p>I then presented one solution which was where I created a landing page to advertise on Linkedin, Facebook, etc. in order to see if people would be interested based on the number of signups we gathered and from there, found a way to interview them and gain insights on iterating our service.</p>
<p>In the end, I presented my findings, what I learned from overcoming the problem and our team’s next steps. The interviewer asked me questions regarding my idea, such as why was it important and even gave me feedback on next steps which I found very helpful moving forward.</p>
<blockquote>
<p>Why do you want to work at Microsoft?</p>
</blockquote>
<p>Every company you apply for will ask this question. They want to know how well you align with the company culture and their goals, but the most important thing they want to know is <em>why</em> are you interested.</p>
<p>Would you work well with one of their teams? Does Microsoft have what you need to grow? Do you have skills beneficial to the company? Are you passionate about their problems?</p>
<p>By conveying your interest and honesty to why you want the position, as well as why they should choose you over a bunch of other qualified candidates will go a long way.</p>
<p>Microsoft is known to have lots of benefits as well as enormous brand value. I wanted to be able to go beyond the company name and really understand what I wanted to get out of my internship experience. I looked at the role as well as overall culture to have a better understanding of what to expect and how could I align it with my goals. From my research, I would want to work at Microsoft for a few reasons:</p>
<h4 id="heading-microsoft-is-going-through-a-culture-change"><strong>Microsoft is going through a culture change</strong></h4>
<p>I would like to experience how they are becoming a company who focuses more on being customer-obsessed, diverse and inclusive.</p>
<h4 id="heading-microsoft-is-constantly-growing"><strong>Microsoft is constantly growing</strong></h4>
<p>I want to be able to learn in a fast paced environment which allows me to make quick and calculated decisions.</p>
<h4 id="heading-microsoft-has-many-talented-and-smart-designers-who-dont-just-have-design-knowledge-but-experience-on-how-design-can-be-used-to-assess-different-aspects-of-the-business-and-consumer"><strong>Microsoft has many talented and smart designers who don’t just have design knowledge, but experience on how design can be used to assess different aspects of the business and consumer</strong></h4>
<p>Receiving mentorship is something extremely important to me as I want someone who is very open to giving me honest advice and feedback to grow as a designer. During my last internship, <a target="_blank" href="https://www.freecodecamp.org/news/what-i-learned-from-flying-to-seattle-for-microsofts-final-wave-of-design-interviews-8eab06c50ce5/undefined">Aviva Rosenstein</a> was an amazing mentor as she wasn’t afraid to give me critical feedback and she always was able to set time to talk to her when I needed advice.</p>
<h4 id="heading-microsoft-has-been-in-the-process-of-moving-technology-to-the-cloud-and-having-it-work-across-all-products"><strong>Microsoft has been in the process of moving technology to the Cloud and having it work across all products</strong></h4>
<p>They have also been creating products which have the potential to change the way we use software and navigate through technology such as exploring mixed reality with the Hololens. With the way product teams work, there is the opportunity to work on high impact products which are directly related to another product. I want to be able to explore the different technologies and how they relate + work together as one cohesive experience.</p>
<p>I would advise you to have a good idea of why you want to work somewhere before you interview. In fact, not understanding why you want to work at x company is a red flag for not doing your research. It wastes the interviewer’s time if they see you aren’t putting in the effort to know them and shows your lack of respect/enthusiasm for the company.</p>
<blockquote>
<p>Do you have any questions for me?</p>
</blockquote>
<p>This part is where I had the opportunity to show my interest and passion for Microsoft. I asked my interviewer questions about my role, such as what would be expected of me and how to be a successful intern. I also asked about deliverables and what kinds projects I might be working on to understand how my skills would be a good fit.</p>
<p>Going off from that, I then asked the recruiter about herself; what project she did in last 6 months, why she likes working at Microsoft and what she learned. It was really insightful being able to hear my interviewer talk about her work at Microsoft because I could tell from her voice and the amount of detail she went into describing her work showed me how much she loved working at Microsoft.</p>
<blockquote>
<p>I looked at your portfolio and your design work is very thoughtful. I <strong>love</strong> your aesthetic. You’ll be successful where ever you go and anyone would love to work with you.</p>
</blockquote>
<p>Before the call ended, the interviewer shifted the focus back to me and though she didn’t know what the next steps or when Microsoft would be getting back to me, she said some very encouraging things about my work that left an extremely positive atmosphere and was motivation for me to keep producing work that means a lot to me.</p>
<blockquote>
<p>Good interviews are a conversation</p>
</blockquote>
<p>By showing your passion in the way you tell a story to asking questions to your interviewer, it enhances the overall feeling of an interview to feeling more like a conversation and can lead to the interviewer to passing you because you are not just qualified and good at answering questions, but because of your personality (culture fit) and great communication skills.</p>
<h3 id="heading-the-waiting-game-more-e-mails">The Waiting Game (more e-mails)</h3>
<p>Days to turned weeks and weeks turned into almost a month when I received an email from my recruiter, hearing back on my results that I passed and was going Seattle for the final round of interviews!</p>
<blockquote>
<p>Good Afternoon,</p>
<p>I wanted to reach out and thank you for taking the time to interview with Microsoft. You did a great job in your interview, and I’m happy to let you know that we would like to have you move on to the final round of interviews!</p>
</blockquote>
<p>Because of hectic scheduling, the recruiter told me they had very few opportunities to schedule me for an interview during that month and I would have to wait. I exchanged e-mails with the recruiter to notify her of pending offers I had from other companies and asked if they expedite the process. My recruiter told me she would do her best to accommodate and schedule the interview earlier.</p>
<blockquote>
<p>It is important to be very transparent with your recruiter when you have pending offers, so they can do their best to expedite the interview process and allow time for you to decide between multiple offers.</p>
</blockquote>
<p>Though, sometimes this doesn’t work and you have to take the other offer, it is <strong>MUCH</strong> better than rejecting it and counting on the chance to get a “better” offer. After all, job searching is extremely competitive these days and having an internship is better than none.</p>
<p>Eventually, I received an email to prepare for the final interview as well as the date and what to expect on the day of:</p>
<blockquote>
<p>I have secured you a space in the next upcoming final round event, scheduled for x/xx/xxxx, and am very excited for you to get the opportunity to show your work to our broader design teams! Schedulers will be reaching out shortly to arrange travel and accommodations if needed.</p>
</blockquote>
<p>All of the waiting paid off; I WAS GOING TO SEATTLE!!</p>
<h3 id="heading-more-preparation">More Preparation</h3>
<blockquote>
<p>The big focus will be on the 45–50 min. long portfolio presentation in the morning, as this will be your introduction of your work and design ethos to the interviewers.</p>
</blockquote>
<p>Using the presentation guide I received as a reference, I prepared vigorously for the onsite, setting some time aside from schoolwork to prepare my presentation and practice presenting to my peers. I received feedback from my awesome network of classmates and teachers. I do not think I would have learned about my work or refined my presentation as much if I didn’t <em>ask</em> for help.</p>
<blockquote>
<p>Microsoft wanted to see the breadth and depth of my process, my contribution to the projects and frame it in a way of overcoming great obstacles. They wanted to see me cover a wide range of problems and the outcomes which resulted from them.</p>
</blockquote>
<p>A few weeks before the interview, a travel specialist prepared everything regarding my flight, hotel and whether or not I wanted a rental car. I filled out a travel form that required my basic information as well as dates and times for my flights. Once I finished the form, Microsoft made all of my arrangements.</p>
<h3 id="heading-before-d-day">Before D-Day</h3>
<p>I took an Uber to the airport where I took an 2 hour afternoon flight to Seattle. Once I got to the hotel, I told the receptionist I had a reservation and when she found my name, she immediately greeted me by welcoming me on behalf of Microsoft and the hotel (SO cool). She explained how the room service and food was all paid for by Microsoft as long as I kept the receipts. The cost of transportation was unlimited so I could take as many Uber or taxi rides as I wanted.</p>
<p>I received my hotel key and went up to my room where I explored the hotel room. It was pretty nice and had a pretty decent view of city buildings!</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/3sH0HRdfGB8Lnb3asnlMo47CmIIwqtcbZQH6" alt="Image" width="800" height="600" loading="lazy">
<em>Got a room with two beds!</em></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/D4GF7YrgvMhMlPHi3R1VMoABeH6fN92vy7bI" alt="Image" width="800" height="600" loading="lazy"></p>
<p>By the time I settled down, it was already 3:30pm. I decided to go downtown to explore Pike Place Market.</p>
<p>Let me just say, the traffic going from Bellevue to Downtown Seattle during rush hour was TORTURE. It took me a hour to get to Pike Place Market. By the time I arrived, most places were beginning to close. In the end, I only went to a few places such as Piroshki Piroshki where they sell piroshki, fried buns with fillings inside.</p>
<p>For dinner, I went to a French restaurant. Let’s just say I ate pretty fancy that night with the budget Microsoft gave me. After a satisfying dinner, I went back to the hotel where I practiced my presentation. I prepared to defend my design decisions and other questions I would be asked on the big day.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/IPO1Uue3f1zXs6IO-5KBRUXjNhkuRmp3U0FL" alt="Image" width="800" height="1066" loading="lazy"></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Z0EuHhzqn8oV5MKDZ32NZdPrVvd0G3BbiPU8" alt="Image" width="800" height="1066" loading="lazy"></p>
<h3 id="heading-day-of-interviews">Day of Interviews</h3>
<p>I woke up at 5am to get dressed and prepare my presentation. I had to check into Microsoft by 9:30am, but I wanted as much time to present before I had to leave. The night before, I ordered room service (because free meal and YOLO), so at around 5:40am, breakfast was brought to me and after I finished eating an overpriced filling meal, I practiced 3–5 more times.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/kppORWTd4YvljhqXu8YIZ07vqfDRClzHM2J3" alt="Image" width="800" height="600" loading="lazy">
<em>Overpriced meal but it was very filling and Microsoft provided</em></p>
<p>At around 8:30am, I ordered Uber and proceeded to go to the Microsoft campus. I left relatively early in case there would be traffic and there was, of course. As I was getting closer to my destination, I saw buildings. I didn’t know those were Microsoft buildings until I entered the campus, but they were was HUGE. The driver had a bit of trouble finding the right building, as there were lots of numbers, but I eventually arrived.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/mVFwYE9DpENn2yn3oVPVnmNRclQUlgQ3ruXk" alt="Image" width="799" height="1066" loading="lazy">
<em>Each one of Microsoft’s buildings looked like it could be a building for ONE decently sized company</em></p>
<p>I entered the building of where I would have my interviews and I got my name badge at the reception. As I was about to go into the area where all the other interviewees, I asked the receptionist if I could take a pen or two as a souvenir. After taking some pens (I took a lot more later haha), I went to the meeting space where there were other candidates around my age or older hanging around and talking. There was a wide spread of coffee, drinks and food for the candidates as well as an area to play X-Box and go on a PC. This space was where interviewees would be called for their interviews as well as dropped off to take a 15 minute break between interviews.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/7vajEpgjDSHQ4NoaljO9w0UY6PfdOYW1EwSk" alt="Image" width="800" height="600" loading="lazy"></p>
<p>Overall, I noticed that there were a lot of people applying for the full time UX designer position while I barely was able to find people applying for the UX design intern position like myself. Some of the people I met would be the people I hung out with and talked to between breaks. Before 10am, recruiters were greeting the candidates and giving us a rundown of how the rest of the day was going to look.</p>
<h4 id="heading-portfolio-presentation">Portfolio Presentation</h4>
<p>Once it was 10am, my interviewer called me and took me to a room where I would be presenting my work to her and two other designers from different teams. She told me that the presentation was informal and reassured me not to worry. It wasn’t specified as to what team I would be working with until after the interview. I presented for 30 minutes with a good amount of time saved for Q and A.</p>
<blockquote>
<p>It’s important to show your design work where interviewers can understand how you interact on a day to day basis and your problem solving skills.</p>
</blockquote>
<p>They want to see a breadth and depth of different work and process. Make sure to stand behind your decisions, show that you are able learn from feedback and I think one of the most important things which may make or break your presentation is whether or not you have an understanding of is the fundamental design principals to support your design style.</p>
<p>At the end of the presentation, the interviewers asked me questions regarding my projects, such as clarifying whether or not I shipped product (which I did), and asking about what my contributions were for each project. They also asked some questions about my design decisions in which they didn’t ask too much in detail, just a lot of general questions regarding my technical skills and process. Overall, they wanted to know the outcome, the tradeoffs of WHY I did something and how was that beneficial to solving the problem, rather than the WHAT.</p>
<h4 id="heading-lunch">Lunch</h4>
<p>After the portfolio review, we had a hour left until lunch, so I chatted with people I met in the morning. The time in-between interviews is a great opportunity to network with other people, especially when the candidate pool for big companies is high and extremely competitive. I was able to meet super passionate and talented designers.</p>
<blockquote>
<p>The design industry is small, so by connecting with the people you meet, chances are, you’ll probably meet them again</p>
</blockquote>
<p>At 12pm, a recruiter and some employees came and led us to the cafeteria to get food. The cafeteria was HUGE. It was like a mall, where there was a plethora of food choices as well as other stores in it. The food isn’t free, but it is subsidized. We received a meal card to purchase food with and if we wanted more food, we could get more cards. My new friend and I ordered Thai food and it was pretty good in terms of size and quality! There was no lunch interview with your interviewers like in some other people’s experiences, but instead, candidates and some of the employees ate together.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/i1BTaUh2Mqq3-oPN6HqrJxrwgxc3-8a32Zdn" alt="Image" width="800" height="1066" loading="lazy"></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/uxvMu4HGpOQkiU6CF33juMBpjj6qoeqlaTup" alt="Image" width="800" height="600" loading="lazy"></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/hwA6LHNxZtbLpIMB2Cq1fFIdmz72O-zosGla" alt="Image" width="800" height="600" loading="lazy"></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/PKttiQzVGAfd3mVfAulKaTmGHesUvG3aS5WW" alt="Image" width="800" height="1066" loading="lazy"></p>
<p>After lunch, we went back the interview building and waited until our first interviewer came to pick us up individually.</p>
<p>Every interview was different in regards to the structure and the kind of questions I received. Because it won’t be fair to the interviewers, I will not disclose specific questions as they were unique to my interview or the people who interviewed onsite.</p>
<h4 id="heading-1st-interview">1st Interview</h4>
<p>In the first interview, my interviewer asked me to describe a team project and how I contributed to it. I went to my website to show her one of my pieces where I described to her my role as a leader of the group and each part of the process. I could have described how I specifically contributed to each step but I did not. The next part of the interview was to a whiteboard challenge where I had to design an improved experience for an app. From here, I asked clarifying questions to understand the problem better as well as talked about my design out loud.</p>
<p><strong>I framed the process like this:</strong> problem, user, value of product, persona (assuming i had research insights), mapping out current experience, finding pain points and opportunities and brainstorming key features. <strong>This process does not apply to every problem but based on the information I was given and being able to brainstorm different solutions in the time given.</strong></p>
<blockquote>
<p>Everyone has a different design process depending on the context you are given and being able to show your framework of analyzing the problem is more beneficial than solving the problem</p>
</blockquote>
<p>After the exercise, the interviewer asked “Do you have questions for me?” and I asked her questions about her role and what would be expected of me. I would say this interview ended on a pretty good note and we left the conference room to go back to the waiting room.</p>
<h4 id="heading-2nd-interview">2nd Interview</h4>
<p>The second interview was probably one of the most “casual”, but challenging interviews I had. At first the interviewer asked if I had questions for him and then when I was done, I was ultimately given one extremely open-ended question which would then be used to ask other questions.</p>
<p>Along with the one open-ended question and the questions relating to that, the interviewer asked me to show a project that was related to my design statement, why I wanted to intern at Microsoft and how did they align with my goals. I explained how I wanted to able to work with a wide range of different designers and people from different backgrounds as well as the mentorship. I also talked about wanting to work on products which have an impact on many people and being able to create new meanings and uses through the continued use of their products. The interview ended with me asking questions to my interviewer in which some of the questions were a little unrelated to my role or the interviewers role.</p>
<blockquote>
<p>What kind of designer am I?</p>
</blockquote>
<p>I believe the overall interview could have been better in that I do more research on the company, read more on design in general and the most important thing, think about <em>what</em> kind of designer I am<strong>.</strong> What problems do I want to solve? What are my strengths? I still don’t quite know what I want to do specifically and how I could use my strengths to contribute to what the company is currently doing. Also thinking thoroughly about the questions I was given and asking clarifying questions before answering would be something to do moving forward.</p>
<h4 id="heading-3rd-interview">3rd Interview</h4>
<p>The third interviewer was focused on my technical skills as a designer. I was asked what my strengths and weaknesses are, the kinds of tools I used and what my design style was. I provided examples to products related to my style and why they were successful in doing what they do. We then talked about design trade offs, where the interviewer used my example of a design feature I mentioned before and presented a problem with a particular design feature. I was to provide alternatives around the problem and I answered with examples of other UI features I remembered through research and use of apps.</p>
<blockquote>
<p>The other interviewers and I really want to know: Do you want to focus on more UX research or UX design in the future?</p>
</blockquote>
<p>This question was really important as it showed how much I must have emphasized my research work to the point where it sounded like I was applying for the UX research intern position instead. It also made me realize I might not have been clear on my UX strengths and what problems I was passionate solving for.</p>
<p>After this question, I was asked on what products I would like to work on and if I had any questions for my interviewer.</p>
<blockquote>
<p>Despite how good the conversation is with your interviewer, you are in an extremely professional situation where it is make or break.</p>
</blockquote>
<p>Overall, I think I did a pretty good job on being able to explain my technical skills, but I definitely need to look at the job description more, highlight my strengths better with regards to UX and how that was conveyed through my design work. I made a little mistake where I felt too comfortable with the interviewer and ended up asking a question that was not related to the job or Microsoft AT ALL and also asking a question about how I didn’t know about one of their products.</p>
<p>After the interview was done, I was sent to the waiting room where the interviewer told me I would receive an e-mail with the results in the next week or two.</p>
<h3 id="heading-after-interviews">After Interviews</h3>
<p>My new friends and I went downtown to explore Seattle. We met my friend’s friend where she took us to a Japanese restaurant and gave us a list of where to explore after dinner.</p>
<p>After dinner, we went for ice cream, drove to the Starbucks Reserve, Space Needle and then to Kerry Park where we saw the beautiful skyline of the city. We definitely bonded through our passion for design and I think being able to meet them was one of the best parts of the interview experience.</p>
<p>We have kept in contact since that day and I believe we will all see each other soon.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/0Lg75qV8MRwzkz5S-31zhXd2zrWC5BX7pDsc" alt="Image" width="800" height="600" loading="lazy">
<em>The beautiful skyline of Seattle; a perfect way to end the night!</em></p>
<h3 id="heading-what-i-aimed-to-accomplish">What I aimed to accomplish</h3>
<p>I had small goals where I wanted to make connections with new people, understand Microsoft better in terms of employees and the culture, presenting confidently, answering questions and understanding the overall interview process. I can say I met all of those goals and that I have improved more from them than if I were just aiming for the job.</p>
<blockquote>
<p>Never think about how SURE you are going to get the job until you get it.</p>
</blockquote>
<p>Job hunting and getting the job is an extremely competitive process so even when you do get a job, definitely do not take it for granted. I was originally going to decline all of my other offers for Microsoft, but as a student, the internship doesn’t matter too much as long as you get one, and despite getting so far into the process, there was no guarantee I would get the job in the first place. In the end, it is more important to learn from the opportunity you are presented with rather than dropping it all to chase one.</p>
<h3 id="heading-learnings">Learnings</h3>
<h4 id="heading-huge-presence-of-microsoft-in-seattle"><strong>Huge presence of Microsoft in Seattle</strong></h4>
<p>When Uber/taxi drivers asked me what I was doing in Seattle and I said I had an interview, they immediately assumed it was Microsoft.</p>
<h4 id="heading-the-company-itself"><strong>The company itself</strong></h4>
<p>Microsoft still feels quite corporate despite being in the process of changing their culture. When I talked to my interviewers and the emails I received from <strong>multiple</strong> recruiters, I could definitely feel an bureaucratic vibe where people often move in-between the ladder to make decisions, which is probably why the interview process with Microsoft was so slow.</p>
<h4 id="heading-amazing-pool-of-candidates"><strong>Amazing pool of candidates</strong></h4>
<p>Because Microsoft is a huge company, it attracts top talent. I was able to meet people doing amazing things and having a big penchant for design. I feel so thankful to have met my new friends and they are definitely people I look up to for feedback or advice because they have had lots of experience and are not afraid to share their tips. Being apart of a open, growing community where people encourage each other feels so amazing and I want to be a person who people can come to for help or encouragement. There is no need to create competition amongst your peers if no one is able to learn and grow from one another .As a designer, it is not all about you, but the community you surround yourself with and the ability to create relationships with others.</p>
<h4 id="heading-preparation-goes-a-long-way"><strong>Preparation goes a long way</strong></h4>
<p>I prepared a few weeks before the interview and that really helped me be calm and composed during the interviews, as well as have a better understanding of who I was as a designer through my work and how to express that.</p>
<h4 id="heading-seattle-has-bad-traffic"><strong>Seattle has bad traffic</strong></h4>
<p>The one thing I did not enjoy too much during the trip was the traffic. It was hard to get anywhere on time unless you planned accordingly in which I learned to do after the first day of my trip.</p>
<h3 id="heading-takeaway">Takeaway</h3>
<p>Overall, I learned lot about the interview process, made new connections with employees and friends, and opened new opportunities for my career. In the end, the most important thing for me was having fun during the process and enjoying my trip.</p>
<h3 id="heading-final-thoughts">Final Thoughts</h3>
<p>Getting to your dream or goal is a process. It doesn’t always happen right away but eventually if you put your mind to it, along with determination, hard work and luck, you’ll get there, one way or another. You might just not get there now.</p>
<p>My Microsoft experience was a learning opportunity and the main goal was to have fun, keep an open mind to learn and constantly be curious. Even if I don’t get the offer, there is still so much for me to improve on instead of being complacent where I am. I am really grateful to Microsoft for giving me the opportunity to notice my potential and challenge myself, as well as being able to interview in a company I admire so much and would want to work for in the future.</p>
<h4 id="heading-if-you-have-any-questions-about-design-message-me-on-linkedinhttpswwwlinkedincomintiffany-w-eaton-551584a0-and-ill-write-about-it"><em>If you have any questions about design, message me on <a target="_blank" href="https://www.linkedin.com/in/tiffany-w-eaton-551584a0/">LinkedIn</a></em> and I’ll write about it!</h4>
<h4 id="heading-to-help-you-get-started-on-owning-your-design-career-here-are-some-amazing-tools-from-rookieuphttpstransactionssendowlcomstores8000107314-a-site-i-used-to-get-mentorship-from-senior-designers">To help you get started on owning your design career, here are some amazing tools from <a target="_blank" href="https://transactions.sendowl.com/stores/8000/107314">Rookieup</a>, a site I used to get mentorship from senior designers:</h4>
<ul>
<li><a target="_blank" href="https://transactions.sendowl.com/stores/8221/107314"><strong>Build a portfolio with help from an experienced designer</strong></a></li>
<li><a target="_blank" href="https://transactions.sendowl.com/stores/8219/107314"><strong>Essential tools to strengthen and build your portfolio</strong></a></li>
<li><a target="_blank" href="https://transactions.sendowl.com/stores/8223/107314"><strong>Take control of your time and career by becoming a freelancer</strong></a></li>
<li><a target="_blank" href="https://transactions.sendowl.com/stores/8222/107314"><strong>Tips and tricks to get an amazing design job</strong></a></li>
</ul>
<h4 id="heading-links-to-some-other-cool-reads">Links to some other cool reads:</h4>
<ul>
<li><a target="_blank" href="https://medium.com/startup-grind/uber-vs-reality-db290f6f3c5#.14xmw6b54"><strong>A Commentary on Brand Perception (Uber vs. Reality)</strong></a></li>
<li><a target="_blank" href="https://medium.com/@twazzle/so-you-didnt-get-your-dream-job-now-what-9ecba6ac26b9"><strong>How to turn Rejection into Success (So you didn’t get your dream job)</strong></a></li>
</ul>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ I’ll never bring my phone on an international flight again. Neither should you. ]]>
                </title>
                <description>
                    <![CDATA[ A few months ago I wrote about how you can encrypt your entire life in less than an hour. Well, all the security in the world can’t save you if someone has physical possession of your phone or laptop, and can intimidate you into giving up your passwo... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/ill-never-bring-my-phone-on-an-international-flight-again-neither-should-you-e9289cde0e5f/</link>
                <guid isPermaLink="false">66b8d4428cd1c2aa053d498b</guid>
                
                    <category>
                        <![CDATA[ Life lessons ]]>
                    </category>
                
                    <category>
                        <![CDATA[ politics ]]>
                    </category>
                
                    <category>
                        <![CDATA[ privacy ]]>
                    </category>
                
                    <category>
                        <![CDATA[ technology ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Quincy Larson ]]>
                </dc:creator>
                <pubDate>Tue, 14 Feb 2017 17:29:35 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*wjy2CLgP3nuKfXysepDzyQ.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>A few months ago I wrote about <a target="_blank" href="https://medium.freecodecamp.com/tor-signal-and-beyond-a-law-abiding-citizens-guide-to-privacy-1a593f2104c3#.30u0nl3fs">how you can encrypt your entire life in less than an hour</a>. Well, all the security in the world can’t save you if someone has physical possession of your phone or laptop, and can intimidate you into giving up your password.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/EavmyQYODu6DyszROY2imvnOnNX3o2ptxiWb" alt="Image" width="448" height="274" loading="lazy">
_Image credit: [XKCD](https://xkcd.com/538/" rel="noopener" target="<em>blank" title=")</em></p>
<p>And a few weeks ago, that’s precisely what happened to a US citizen returning home from abroad.</p>
<p>On January 30th, Sidd Bikkannavar, a US-born scientist at NASA’s Jet Propulsion Laboratory flew back to Houston, Texas from Santiago, Chile.</p>
<p>On his way through the airport, Customs and Border Patrol agents pulled him aside. They searched him, then detained him in a room with a bunch of other people sleeping in cots. They eventually returned and said they’d release him if he told them the password to unlock his phone.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/lCjJ6xBI4yjM46YqZkan2-yL53EN7iHYZDmn" alt="Image" width="800" height="533" loading="lazy">
_Sidd Bikkannavar’s hobbies include racing solar-powered cars. [Photo by The Verge](http://www.theverge.com/2017/2/12/14583124/nasa-sidd-bikkannavar-detained-cbp-phone-search-trump-travel-ban" rel="noopener" target="<em>blank" title=")</em></p>
<p>Bikkannavar explained that the phone belonged to NASA and had sensitive information on it, but his pleas fell on deaf ears. He eventually yielded and unlocked his phone. The agents left with his phone. Half an hour later, they returned, handed him his phone, and released him.</p>
<p>We’re going to discuss the legality of all of this, and what likely happened during that 30 minutes where Bikkannavar’s phone was unlocked and outside of his possession.</p>
<p>But before we do, take a moment to think about all the apps you have on your phone. Email? Facebook? Dropbox? Your browser? Signal? The history of everything you’ve ever done — everything you’ve ever searched, and everything you’ve ever said to anyone — is right there in those apps.</p>
<blockquote>
<p>“We should treat personal electronic data with the same care and respect as weapons-grade plutonium — it is dangerous, long-lasting and once it has leaked there’s no getting it back.” — Cory Doctorow</p>
</blockquote>
<p>How many potentially incriminating things do you have lying around your home? If you’re like most people, the answer is probably zero. And yet police would need to go before a judge and establish probable cause before they could get a warrant to search your home.</p>
<p>What we’re seeing now is that anyone can be grabbed on their way through customs and forced to hand over the full contents of their digital life.</p>
<p>Companies like <a target="_blank" href="https://www.elcomsoft.com/">Elcomsoft</a> make “forensic software” that can suck down all your photos, contacts — even passwords for your email and social media accounts — in a matter of minutes. Their customers include the police forces of various countries, militaries, and private security forces. They can use these tools to permanently archive everything there is to know about you. All they need is your unlocked phone.</p>
<blockquote>
<p><em>“If one would give me six lines written by the hand of the most honest man, I would find something in them to have him hanged.” — Cardinal Richelieu in 1641</em></p>
</blockquote>
<p>What’s the worst thing that could happen if the Customs and Border Patrol succeed in getting ahold of your unlocked phone? Well…</p>
<ul>
<li>Think of all of the people you’ve ever called or emailed, and all the people you’re connected with on Facebook and LinkedIn. What are the chances that one of them has committed a serious crime, or will do so in the future?</li>
<li>Have you ever taken a photo at a protest, bought a controversial book on Amazon, or vented about an encounter with a police officer to a loved one? That information is now part of your permanent record, and could be dragged out as evidence against you if you ever end up in court.</li>
<li>There’s a movement within government to make all data from all departments available to all staff at a local, state, and federal level. The more places your data ends up, the larger a hacker’s “attack surface” is — that is, the more vulnerable your data is. A security breach in a single police station in the middle of nowhere could result in your data ending up in the hands of hackers — and potentially used against you from the shadows — for the rest of your life.</li>
</ul>
<h3 id="heading-wait-a-second-what-about-my-fourth-and-fifth-amendment-rights-isnt-this-illegal">Wait a second. What about my fourth and fifth amendment rights? Isn’t this illegal?</h3>
<p>The fourth amendment protects you against unreasonable search and seizure. The fifth amendment protects you against self-incrimination.</p>
<p>If a police officer were to stop you on the street of America and ask you to unlock your phone and give it to them, these amendments would give you strong legal ground for refusing to do so.</p>
<p>But unfortunately, the US border isn’t technically the US, and <a target="_blank" href="https://www.eff.org/deeplinks/2016/12/law-enforcement-uses-border-search-exception-fourth-amendment-loophole">you don’t have either of these rights at the border</a>.</p>
<p>It’s totally legal for a US Customs and Border Patrol officer to ask you to unlock your phone and hand it over to them. And they can detain you indefinitely if you don’t. Even if you’re a American citizen.</p>
<p>The border is technically outside of US jurisdiction, in a sort of legal no-man’s-land. You have very few rights there. Barring the use of “excessive force,” agents can do whatever they want to you.</p>
<p>So my advice is to just do whatever they tell you, to and get through customs and on into the US as quickly as you can.</p>
<h3 id="heading-the-us-isnt-the-only-country-that-does-this">The US isn’t the only country that does this.</h3>
<p>It’s only a matter of time before downloading the contents of people’s phones becomes a standard procedure for entering every country. This already happens <a target="_blank" href="http://www.theverge.com/2015/3/6/8162337/iphone-unlock-border-agents-canada">in Canada</a>. And you can bet that countries like China and Russia aren’t far behind.</p>
<blockquote>
<p>“Never say anything in an electronic message that you wouldn’t want appearing, and attributed to you, in tomorrow morning’s front-page headline in the New York Times.” — Colonel David Russell, former head of DARPA’s Information Processing Techniques Office</p>
</blockquote>
<p>Since it’s illegal in most countries to profile individual travelers, customs officers will soon require everyone to do this.</p>
<p>The companies who make the software that downloads data from your phones are about to get a huge infusion of money from governments. Their software will get much faster — maybe requiring only a few seconds to download all of your most pertinent data from your phone.</p>
<p>If we do nothing to resist, pretty soon everyone will have to unlock their phone and hand it over to a customs agent while they’re getting their passport swiped.</p>
<p>Over time, this unparalleled intrusion into your personal privacy may come to feel as routine as taking off your shoes and putting them on a conveyer belt.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/3lOatJ0jZxn-Y5bAigcnjpvUJUlAoRNXrLq6" alt="Image" width="800" height="500" loading="lazy"></p>
<p>And with this single new procedure, all the hard work that Apple and Google have invested in encrypting the data on your phone — and fighting for your privacy in court — will be a completely moot point.</p>
<p>Governments will have succeeded in utterly circumventing decades of innovation in security and privacy protection. All by demanding you hand them the skeleton key to your life — your unlocked phone.</p>
<h3 id="heading-you-cant-hand-over-a-device-that-you-dont-have">You can’t hand over a device that you don’t have.</h3>
<p>When you travel internationally, you should leave your mobile phone and laptop at home. You can rent phones at most international airports that include data plans.</p>
<p>If you have family overseas, you can buy a second phone and laptop and leave them there at their home.</p>
<p>If you’re an employer, you can create a policy that your employees are not to bring devices with them during international travel. You can then issue them “loaner” laptops and phones once they enter the country.</p>
<p>Since most of our private data is stored in the cloud — and not on individual devices — you could also reset your phone to its factory settings before boarding an international flight. This process will also delete the keys necessary to unencrypt any residual data on your phone (iOS and Android fully encrypt your data).</p>
<p>This way, you could bring your physical phone with you, then reinstall apps and re-authenticate with them once you’ve arrived. If you’re asked to hand over your unlocked phone at the border, there won’t be any personal data on it. All your data will be safe behind the world-class security that Facebook, Google, Apple, Signal, and all these other companies use.</p>
<p>Is all this inconvenient? Absolutely. But it’s the only sane course of action when you consider the gravity of your data falling into the wrong hands.</p>
<p>If you bother locking your doors at night, you should bother securing your phone’s data during international travel.</p>
<p>This may upset Customs and Border Patrol agents, who are probably smart enough to realize that 85% of Americans now have smart phones, and probably 100% of the Americans who travel internationally have smart phones. They may choose to detain you anyway, and force you to give them passwords to various accounts manually. But there’s no easy way for them to know which services you use and which services you don’t use, or whether you have multiple accounts.</p>
<p>We live in an era of mass surveillance, where governments around the world are passing <a target="_blank" href="https://medium.freecodecamp.com/your-privacy-is-disappearing-one-law-at-a-time-heres-what-you-can-do-about-it-b85c814035a4#.gqrxigm68">terrifying new anti-privacy laws</a> every year.</p>
<blockquote>
<p>“Those who are willing to surrender their freedom for security have always demanded that if they give up their full freedom it should also be taken from those not prepared to do so.” — Friedrich Hayek</p>
</blockquote>
<p>With a lot of hard work on our part, enlightenment will triumph. Privacy will be restored. And we will beat back the current climate of fear that’s confusing people into unnecessarily giving up their rights.</p>
<p>In the meantime, follow the Boy Scouts of America Motto: <strong>always be prepared.</strong> The next time you plan to cross a border, leave your phone at home.</p>
<p><strong>I only write about programming and technology. If you <a target="_blank" href="https://twitter.com/ossia">follow me on Twitter</a> I won’t waste your time. ?</strong></p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Infrastructure is Beautiful ]]>
                </title>
                <description>
                    <![CDATA[ The US is a big place. It’s the third-largest country by land mass. And the infrastructure that connects it is equally immense. Let’s marvel at the intricacy of these human-made systems. Together, we’ll explore its internet, transportation, and energ... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/infrastructure-is-beautiful-cb0daa1aa76b/</link>
                <guid isPermaLink="false">66b8d44f80f2fbfc1b20bbf2</guid>
                
                    <category>
                        <![CDATA[ data visualization ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Design ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Life lessons ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Quincy Larson ]]>
                </dc:creator>
                <pubDate>Thu, 08 Dec 2016 17:26:54 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*Azv7asfRvIg9ni0gAbb5fQ.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>The US is a big place. It’s the third-largest country by land mass. And the infrastructure that connects it is equally immense.</p>
<p>Let’s marvel at the intricacy of these human-made systems.</p>
<p>Together, we’ll explore its internet, transportation, and energy distribution infrastructure — all through rapid-fire data visualizations.</p>
<h3 id="heading-broadband-internet-infrastructure">Broadband Internet Infrastructure</h3>
<p>Here are all the places with at least 1 megabit download speed:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/yHTJqwhGxT1Us7KHiJN1V72lIVMz5UWA2IZl" alt="Image" width="800" height="422" loading="lazy">
_Source: [National Broadband Map](http://www.broadbandmap.gov/speedtest" rel="noopener" target="<em>blank" title=")</em></p>
<h4 id="heading-broadband-monopolies">Broadband Monopolies</h4>
<p>And here are all the places where consumers only have one available broadband provider.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/bumt4LEu80Eniein4Tz9YXo3nu1fVcwWesEL" alt="Image" width="800" height="406" loading="lazy">
<em>Source: <a target="_blank" href="https://broadbandmap.fcc.gov/#/">National Broadband Map</a></em></p>
<h4 id="heading-broadband-speed-test-versus-advertised">Broadband Speed Test versus Advertised</h4>
<p>Not surprisingly, these monopolies aren’t always honest about how fast their internet is. The darker the pink is, the more that broadband companies are overstating the speed of their internet services.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Ipn5lVuXUOxWHueVAaXS3LrlWwAH2R6r-fSB" alt="Image" width="800" height="405" loading="lazy">
<em>Source: <a target="_blank" href="https://broadbandmap.fcc.gov/#/">National Broadband Map</a></em></p>
<h4 id="heading-internet-backbones">Internet Backbones</h4>
<p>The internet isn’t magic — it’s mostly just a whole lot of fiber optic cable. Here’s all the long-haul fiber that carries internet data around the United States. Red squares represent the junctions between “long haul” fibers.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1N7CBLrm-wPvmncy0ttAlsZ2MidN3ZGoEfXw" alt="Image" width="800" height="492" loading="lazy">
_Image credit: [InterTubes: A Study of the US Long-haul Fiber-optic<br>Infrastructure](http://pages.cs.wisc.edu/~pb/tubes_final.pdf" rel="noopener" target="<em>blank" title=")</em></p>
<h4 id="heading-the-entire-internet">The Entire Internet</h4>
<p>Of course, in a perfect world, the internet would be completely borderless and free. Here’s what the entire internet looks like as of 10 years ago (it’s even more intricate, now). The individual spokes are IP addresses:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/HoMjl2MYqzP5ZJTnPAWRzoFVsp5o9GjIlAmL" alt="Image" width="800" height="800" loading="lazy">
_Image credit: [opte.org](http://www.opte.org/maps/" rel="noopener" target="<em>blank" title=")</em></p>
<h3 id="heading-getting-around-the-country">Getting Around the Country</h3>
<p>The US Interstate system is a network of 77,017 kilometers (47,856 miles) of highway that connects all major cities. President Eisenhower commissioned it in 1956 as a way to transport military equipment and supplies. It took 35 years and an inflation-adjusted $500 billion to complete.</p>
<p>Here’s what it looks like:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/clKnBRymeMG4R6RKzn6dyud10VvYdpME6Ga1" alt="Image" width="800" height="510" loading="lazy"></p>
<p>But I prefer this stylized representation:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/ybPB-HHcGr7X7VYH2Jgrew86w57ciaXbWfJu" alt="Image" width="800" height="640" loading="lazy">
_Image credit: [Chris Yates](http://www.chrisyates.net/reprographics/index.php?page=424" rel="noopener" target="<em>blank" title=")</em></p>
<h4 id="heading-bridges">Bridges</h4>
<p>Bridges are a big part of our road system. Here are all 600,000 bridges in the US. About 10% of them (the red ones) are <a target="_blank" href="http://www.artba.org/economics/2016-u-s-deficient-bridges/">structurally deficient</a>.</p>
<p>Bridges collapse <a target="_blank" href="https://en.wikipedia.org/wiki/List_of_bridge_failures#2000.E2.80.93present">all the time</a>, often killing people. They need to be maintained and replaced at the end of their service life, though this can be <a target="_blank" href="https://en.wikipedia.org/wiki/Eastern_span_replacement_of_the_San_Francisco%E2%80%93Oakland_Bay_Bridge">quite expensive</a>.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/jdlGs0B5vmJlHN5AjuvVGQ8q50It9e91p5iU" alt="Image" width="800" height="478" loading="lazy">
_Image credit: [The Washington Post](https://www.washingtonpost.com/graphics/national/maps-of-american-infrastrucure/" rel="noopener" target="<em>blank" title=")</em></p>
<p>These days, most people are in a hurry and would prefer to fly.</p>
<h4 id="heading-airports-and-the-flights-between-them">Airports and the Flights Between them</h4>
<p>There were more than <a target="_blank" href="http://www.transtats.bts.gov/Data_Elements.aspx?Data=2">8 million flights</a> last year in the continental US alone. That’s a lot of carbon dioxide emissions!</p>
<p>Here’s what those flights look like:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/eCsQBmBZ92YznhWxF-Oh50N-fHN6i47XKKao" alt="Image" width="800" height="518" loading="lazy">
_Image credit: [The Washington Post](https://www.washingtonpost.com/graphics/national/maps-of-american-infrastrucure/" rel="noopener" target="<em>blank" title=")</em></p>
<h4 id="heading-riding-the-rails">Riding the Rails</h4>
<p>Another way the US moves things around is through its railroad network.</p>
<p>The circles in the map below are Amtrak stations for passenger travel.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/cVof3rLtLduaoHJSZLCQIEQDDSuynNwg-dHp" alt="Image" width="800" height="467" loading="lazy">
_Image credit: [The Washington Post](https://www.washingtonpost.com/graphics/national/maps-of-american-infrastrucure/" rel="noopener" target="<em>blank" title=")</em></p>
<h4 id="heading-ports-and-maritime-travel">Ports and Maritime Travel</h4>
<p>When it comes to heavy cargo, moving things around by sea is still the most cost-effective approach.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/Pd0rACYmJDZDqancZF0IYnyHBY3p2B8msnMe" alt="Image" width="800" height="518" loading="lazy">
_Image credit: [The Washington Post](https://www.washingtonpost.com/graphics/national/maps-of-american-infrastrucure/" rel="noopener" target="<em>blank" title=")</em></p>
<h3 id="heading-powering-the-country">Powering the Country</h3>
<p>Here are all the power plants in the United States, and the energy we get from them:</p>
<pre><code>+--------------+---------------+--------------------+
|    Color     |   Resource    | % <span class="hljs-keyword">of</span> US energy mix |
+--------------+---------------+--------------------+
| Black        | Coal          | <span class="hljs-number">37</span>%                |
| Blue         | Natural gas   | <span class="hljs-number">30</span>%                |
| Not pictured | Nuclear       | <span class="hljs-number">19</span>%                |
| Not pictured | Hydroelectric | <span class="hljs-number">7</span>%                 |
| Gray         | Wind          | <span class="hljs-number">3.5</span>%               |
| Orange       | Oil           | <span class="hljs-number">1</span>%                 |
| Yellow       | Solar         | <span class="hljs-number">0.1</span>%               |
+--------------+---------------+--------------------+
</code></pre><p><img src="https://cdn-media-1.freecodecamp.org/images/P0a7bRG6mTTsr6N80OlO9eXV8OCv3LNjAcAk" alt="Image" width="800" height="470" loading="lazy">
_Image Credit: [Smithsonian Magazine](http://www.smithsonianmag.com/science-nature/tour-the-countrys-energy-infrastructure-through-a-new-interactive-map-8844967/" rel="noopener" target="<em>blank" title=")</em></p>
<h4 id="heading-natural-gas-pipelines">Natural Gas Pipelines</h4>
<p>For every mile of interstate highway, there are 6 miles of natural gas pipelines. Natural gas provides 30% of the US’s energy.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/tJKAqavOwqQDhUH8FYo51MYeJkvFK4Q3Y-Lx" alt="Image" width="800" height="470" loading="lazy">
_Image Credit: [Smithsonian Magazine](http://www.smithsonianmag.com/science-nature/tour-the-countrys-energy-infrastructure-through-a-new-interactive-map-8844967/" rel="noopener" target="<em>blank" title=")</em></p>
<h4 id="heading-power-grid">Power Grid</h4>
<p>But what are all these electrons good for if you don’t have a way to distribute them? Here’s what the US power grid looks like:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/ZdMvtfiG74erLjn4FxMKTrkyg2OSjdaaz49O" alt="Image" width="800" height="518" loading="lazy">
_Image credit: [The Washington Post](https://www.washingtonpost.com/graphics/national/maps-of-american-infrastrucure/" rel="noopener" target="<em>blank" title=")</em></p>
<p>Infrastructure is complex. Improving America’s infrastructure involves everything from filling potholes on main street to launching new arrays of thousands of low-orbit communication satellites, like <a target="_blank" href="http://arstechnica.com/information-technology/2016/11/spacex-plans-worldwide-satellite-internet-with-low-latency-gigabit-speed/">Elon Musk is planning to do</a>.</p>
<p>It will involve continually upgrading billions of discrete components within complex systems, like cells replacing themselves in our bodies.</p>
<p>The next time you pull onto an interstate, flip a light switch, or <a target="_blank" href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fmedium.freecodecamp.com%2Finfrastructure-is-beautiful-cb0daa1aa76b&amp;text=Infrastructure%20is%20beautiful%20by%20@ossia">tweet out an article</a>, pause for a moment.</p>
<p>Contemplate the grand scale of these systems, and the millions of minds and bodies that brought them into existence.</p>
<p>It’s beautiful.</p>
<p>If you want to learn more about the history of one vital piece of infrastructure — the internet — I strongly recommend reading <a target="_blank" href="http://amzn.to/2hmpeFW">Where Wizards Stay up Late</a> by Katie Hafner.</p>
<p>The book traces the creation of the internet from its early days connecting just four universities — UCLA, Stanford, UCSB, and MIT — and talks about how they managed to scale it.</p>
<p><a target="_blank" href="http://amzn.to/2hmpeFW"><strong>Where Wizards Stay Up Late: The Origins of the Internet</strong></a><br><a target="_blank" href="http://amzn.to/2hmpeFW">_Edit description_amzn.to</a></p>
<p><strong>I only write about programming and technology. If you <a target="_blank" href="https://twitter.com/ossia">follow me on Twitter</a> I won’t waste your time. ?</strong></p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Fitter. Happier. More productive. Working remotely. ]]>
                </title>
                <description>
                    <![CDATA[ An economic analysis of distributed teams Travel the world as a digital nomad. Surf a new beach every morning. Eat a different local cuisine each night. Or just stay home all day in your pajamas. It doesn’t really matter. You can get your work done e... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/the-economics-of-working-remotely-28d4173e16e2/</link>
                <guid isPermaLink="false">66b8d5c857c651c38343a982</guid>
                
                    <category>
                        <![CDATA[ Data Science ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Life lessons ]]>
                    </category>
                
                    <category>
                        <![CDATA[ startup ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Quincy Larson ]]>
                </dc:creator>
                <pubDate>Wed, 24 Aug 2016 21:24:56 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*7x-3XhZbnZyNaouBTh1ZMQ.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <h3 id="heading-an-economic-analysis-of-distributed-teams">An economic analysis of distributed teams</h3>
<p>Travel the world as a digital nomad. Surf a new beach every morning. Eat a different local cuisine each night.</p>
<p>Or just stay home all day in your pajamas.</p>
<p>It doesn’t really matter. You can get your work done either way.</p>
<p>More than 10% of Americans now work remotely.</p>
<p>I’m one of them. After 10 years of working in an office, I’ve had the luxury of working out of my closet for the past 5 years. I could rave until I’m blue in the face about how great it is. But talk is cheap. Let’s look at data.</p>
<p>What are the economic costs and benefits of working remotely?</p>
<h3 id="heading-salary">Salary</h3>
<p>We looked at more than 36,000 salaries of developers working both remotely and on-site from <a target="_blank" href="https://medium.freecodecamp.com/2-out-of-3-developers-are-self-taught-and-other-insights-from-stack-overflow-s-2016-survey-of-50-8cf0ee5d4c21#.f39zmdujb">Stack Overflow’s 2016 dataset</a>. Here’s what we found:</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/LUgdcMQREDft0tUka9viZqaVb0LnXf160TI4" alt="Image" width="792" height="499" loading="lazy">
_A big thanks to [Data Science Room](https://github.com/erictleung" rel="noopener" target="_blank" title=""&gt;Eric and <a href="https://github.com/evaristoc" target="_blank">Evaristo</a> in our &lt;a href="https://gitter.im/FreeCodeCamp/DataScience" rel="noopener" target="<em>blank" title=") for analyzing these data and making these graphs.</em></p>
<p>Of the 10,583 developers world-wide who reported working remotely some or all the time, their median salary was US $55,000, with a standard deviation of $51,200.</p>
<p>This was significantly higher than the salaries of the 25,413 non-remote developers. Their median salary was just $45,000, with a standard deviation of $44,727.</p>
<p>When you exclude developers outside of the United States, this wage difference remains. The 3,200 US-based remote developers had a median salary of $105,000 (with a standard deviation of $47,400), versus their 6,461 non-remote counterparts, whose median salary was only $95,000 (with a standard deviation of $ 42,977).</p>
<p>People who work remotely are most represented at the top and bottom ends of the pay scale.</p>
<p>Freelance developers who accept contracts through relatively low-paying channels like Upwork tend to be remote.</p>
<p>At the same time, developers with more than ten years of experience are twice as likely to work remotely as newcomers.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/jVNSC8CmbIPphoz7WRH5k8yPEAMzOGxEurUP" alt="Image" width="800" height="302" loading="lazy"></p>
<p>The caliber of developers who can command salaries of more than $200,000 have a lot of bargaining power. When they demand to work remotely, employers are more likely to yield.</p>
<p>Anecdotally, I’ve met plenty of high-paid developers who live up in the mountains, or who jet around the world, living out of hotels. You would have to pay them a small fortune to convince them to work out of an office, and even then they probably wouldn’t last long.</p>
<h3 id="heading-productivity">Productivity</h3>
<p>In 2012, Stanford researchers set out to better understand remote work and its implications. They conducted a <a target="_blank" href="http://www.nber.org/papers/w18871.pdf">9-month study of 249 service sector workers</a> — the largest academic study of remote work ever.</p>
<p>Here are the key findings:</p>
<ul>
<li>Remote workers were 13% more productive than on-site workers.</li>
<li>Remote workers worked longer shifts, took fewer breaks, and took fewer sick days.</li>
<li>Remote workers were half as likely as to quit as on-site workers, and reported significantly higher job satisfaction rates.</li>
</ul>
<p>One downside the study found was that remote workers were 50% less likely to be promoted than their on-site counterparts. This may mean that it’s harder for bosses to form relationships with you if you work remotely.</p>
<h3 id="heading-lifestyle">Lifestyle</h3>
<p>Working remotely also offers some major cost-savings — both for employees and their employers.</p>
<p>In many cities, workers spend more than an hour per day commuting to and from their office.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/sV0EmtrutZaldFU285VLQBzxUqCAvhAQmWRV" alt="Image" width="783" height="1311" loading="lazy"></p>
<p>Not having to commute saves you time. It also saves you the monetary cost of mass transit, or gas and depreciation on a car.</p>
<p>You also have to spend a lot of time getting ready for work. For many people, this means dressing up in a suit and/or putting on makeup — tasks you can skip if you’re working remotely.</p>
<p>My unscientific estimate (because no comprehensive study has yet been conducted) is that about a tenth of an on-site worker’s income — and a tenth of their time — would be immediately freed-up if they could work remotely.</p>
<p>Companies should also take note that during Stanford study, the employer saved $2,000 per employee in furniture and office space costs.</p>
<p>And don’t forget parking. In San Francisco, for example, <a target="_blank" href="http://sf.curbed.com/2016/6/8/11890176/it-costs-38000-to-create-one-parking-space-in-sf">it costs an average of $38,000</a> to create a single new parking space for an employee.</p>
<h3 id="heading-is-working-remotely-right-for-you">Is working remotely right for you?</h3>
<p>The decision to work remotely is a highly personal one.</p>
<p>My goal here is to share the facts.</p>
<p>Instead of gushing about how great I personally think it is to work remotely, I recommend you read this excellent book:</p>
<p><a target="_blank" href="http://amzn.to/2bFzj06"><strong>The Year Without Pants: WordPress.com and the Future of Work</strong></a><br><a target="_blank" href="http://amzn.to/2bFzj06">_Edit description_amzn.to</a></p>
<p>It’s by journalist Scott Berkun, who managed a remote team for a year at Automattic (the all-remote company behind WordPress).</p>
<p><a target="_blank" href="http://amzn.to/2bFzj06">The Year Without Pants</a> is filled with interesting first-hand anecdotes. It will give you a clear idea of what it’s like to work remotely.</p>
<p>Working remotely isn’t for everyone. But it is a viable option. And there are some compelling economic reason why it might make sense for you.</p>
<p><strong>I only write about programming and technology. If you <a target="_blank" href="https://twitter.com/ossia">follow me on Twitter</a> I won’t waste your time. ?</strong></p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ The best free online university courses for learning a new world language ]]>
                </title>
                <description>
                    <![CDATA[ By Dhawal Shah Up until a few years ago, language classes cost hundreds of dollars, and came on CDs or DVDs. But now you can now learn English, Chinese, Spanish, Italian, Korean, and other languages — from top universities online, for free. There are... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/the-best-free-online-university-courses-for-learning-a-new-world-language-ccf42ad1b5d5/</link>
                <guid isPermaLink="false">66d45ec94a7504b7409c33c9</guid>
                
                    <category>
                        <![CDATA[ Language Learning ]]>
                    </category>
                
                    <category>
                        <![CDATA[ learning ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Life lessons ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Sun, 21 Aug 2016 21:00:34 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*gOfBY31x1Zb_tLzVoJkjaQ.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Dhawal Shah</p>
<p>Up until a few years ago, language classes cost hundreds of dollars, and came on CDs or DVDs. But now you can now learn English, Chinese, Spanish, Italian, Korean, and other languages — from top universities online, for free.</p>
<p>There are a ton of language learning apps out there, but these Massive Online Open Courses (MOOCs) go one step further: they teach you language in the context of history and business culture.</p>
<p>To get a sense of what I’m talking about, take a look at the intro video for edX’s <a target="_blank" href="https://www.class-central.com/mooc/6611/edx-mx801x-mandarin-chinese-for-business?utm_campaign=language_learning_moocs&amp;utm_source=moocreport">Mandarin Chinese for Business</a> course:</p>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/WcmPbsOwFrs" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<p>At Class Central, we’ve curated a collection of 30+ MOOCs that teach a variety of languages.</p>
<p>I recommend edX’s <a target="_blank" href="https://www.class-central.com/mooc/5426/edx-tm01x-tsinghua-chinese-start-talking-with-1-3-billion-people?utm_campaign=language_learning_moocs&amp;utm_source=moocreport">Tsinghua Chinese: Start Talking with 1.3 Billion People</a> and FutureLearn’s <a target="_blank" href="https://www.class-central.com/mooc/3014/futurelearn-introduction-to-dutch?utm_campaign=language_learning_moocs&amp;utm_source=moocreport">Introduction to Dutch</a>. Both these courses are highly rated and, and made our list of the <a target="_blank" href="https://medium.freecodecamp.com/the-data-dont-lie-here-are-the-50-best-free-online-university-courses-of-all-time-b2d9a64edfac#.ebml0r7j6">Top 50 MOOCs of all time</a>.</p>
<p>Note that some of these courses are self-paced, and others operate on a fixed schedule. Don’t worry if you don’t have time to participate in the current session — another one will probably start in a few months.</p>
<h3 id="heading-learning-chinese">Learning Chinese</h3>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/6qhB2y7MVtY" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<p><a target="_blank" href="https://www.class-central.com/mooc/5426/edx-tm01x-tsinghua-chinese-start-talking-with-1-3-billion-people?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Tsinghua Chinese: Start Talking with 1.3 Billion People</strong></a><br><em>Tsinghua University via edX</em><br>This introductory Chinese language course will emphasize basic language skills for everyday life in Mandarin speaking countries. Self-paced.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/6611/edx-mx801x-mandarin-chinese-for-business?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Mandarin Chinese for Business</strong></a><br> Learn common Mandarin Chinese business phrases and understand Chinese culture so you can communicate professionally in the largest market in the World. Started August 22nd.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/2353/coursera-chinese-for-beginners?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Chinese for Beginners</strong></a><br><em>Peking University via Coursera</em><br>This is an ABC Chinese course for beginners, including introduction of phonetics and daily expressions. After taking this class, learners can have a basic understanding of Chinese Mandarin and make basic conversations of daily living. Started August 24th.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/5988/coursera-more-chinese-for-beginners?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>More Chinese for Beginners</strong></a><br><em>Peking University via Coursera</em><br>Learners will expand vocabularies about personal information, daily life, food and drink, healthy, and expressions about greeting, suggestion, agreement, comparison, complaint, prohibition, experience, plan, recommendation, etc. Starts August 29th.</p>
<h3 id="heading-spanish">Spanish</h3>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*ISiXnQaNrfJrMJUuVMvP5g.jpeg" alt="Image" width="800" height="533" loading="lazy"></p>
<p><a target="_blank" href="https://www.class-central.com/mooc/2656/edx-aslcx-ap-spanish-language-and-culture?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>AP Spanish Language and Culture</strong></a><br><em>St. Margaret’s Episcopal School via edX</em><br>Perfect your Spanish speaking and writing skills while learning about the cultural aspects of the Spanish-speaking world to prepare for the AP* Spanish Language and Culture exam. Self-paced.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/6661/futurelearn-spanish-for-beginners-1-meeting-and-greeting?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Spanish for Beginners 1: Meeting and Greeting</strong></a><br><em>The Open University via FutureLearn</em><br>Learn how to greet people, and talk about where you live and what you do in the first of six Spanish for Beginners courses. Starts August 8th.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/6662/futurelearn-spanish-for-beginners-2-people-and-places?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Spanish for Beginners 2: People and Places</strong></a><br><em>The Open University via FutureLearn</em><br>Learn how to describe people and what they wear, and talk about your family and home in the second Spanish for Beginners course. Starts September 12th.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/6663/futurelearn-spanish-for-beginners-3-my-life?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Spanish for Beginners 3: My Life</strong></a><br> <em>The Open University via FutureLearn</em><br> Learn to talk about daily life, what you do during the day and when things happen in the third Spanish for Beginners course. Starts October 17th.</p>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/vAxTq6JFmeU" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<p><a target="_blank" href="https://www.class-central.com/mooc/3258/iversity-spanish-for-beginners?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Spanish for Beginners</strong></a><br> <em>Universidad a Distancia de Madrid via iversity</em><br> Want to speak Spanish? This course will teach you Spanish with video sequences that use real situations in a variety of contexts. Learn the basics for understanding and communicating in both a practical and fun way. Self paced.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/3698/edx-bsp101x-learn-spanish-basic-spanish-for-english-speakers?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Learn Spanish: Basic Spanish for English Speakers</strong></a><br> <em>Universitat Politècnica de València via edX</em><br> Learn Spanish and explore Spanish culture in this introductory language course, designed for English speakers. Self paced.</p>
<h3 id="heading-english">English</h3>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/4tGNuxOZy7o" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<p><a target="_blank" href="https://www.class-central.com/mooc/3337/edx-30640014x-conversational-english-skills?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Conversational English Skills</strong></a><br><em>Tsinghua University via edX</em><br>Learn how to effectively communicate in English and improve your conversational language skills. Self-paced.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/2071/edx-eba101x-english-for-doing-business-in-asia-speaking?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>English for Doing Business in Asia — Speaking</strong></a><br><em>The Hong Kong University of Science and Technology via edX</em><br>Introducing strategies for developing your spoken English communication skills in the context of doing business in Asia. Starts September 13th.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/2135/futurelearn-exploring-english-language-and-culture?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Exploring English: Language and Culture</strong></a><br><em>British Council via FutureLearn</em><br>This course for learners of English looks at British culture and examines English in use to help you improve your language skills. Starts September 12th.</p>
<h3 id="heading-korean">Korean</h3>
<p><a target="_blank" href="https://www.class-central.com/mooc/5730/coursera-first-step-korean?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>First Step Korean</strong></a><br><em>Yonsei University via Coursera</em><br>This is an elementary-level Korean language course, consisting of 5 lessons with 4 units, and covers 4 skills: reading, writing, listening and speaking. Starts August 22nd.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/6645/coursera-learn-to-speak-korean-1?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Learn to Speak Korean 1</strong></a><br><em>Yonsei University via Coursera</em><br>This course is for beginner students who are familiar with the Korean alphabet, Hangeul. Through this course students will learn the skills essential for daily interactions with Koreans while living in Korea. Starts September 5th.</p>
<h3 id="heading-italian">Italian</h3>
<p><img src="https://cdn-media-1.freecodecamp.org/images/1*4sRGZONl095Dh6xPRvrN7A.jpeg" alt="Image" width="800" height="298" loading="lazy"></p>
<p><a target="_blank" href="https://www.class-central.com/mooc/5790/futurelearn-introduction-to-italian?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Introduction to Italian</strong></a><br><em>Università per Stranieri di Siena via FutureLearn</em><br>Learn basic Italian and explore Italian culture, with this free online Italian course. Starts October 17th.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/5642/edx-italian1x-italian-language-and-culture-beginner?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Italian1x: Italian Language and Culture: Beginner</strong></a><br> <em>Wellesley College via edX</em><br> Learn the basics of the Italian language and culture through videos, podcasts, interviews, and much more. Self paced.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/5314/edx-italian2x-italian-language-and-culture-intermediate?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Italian2x: Italian Language and Culture: Intermediate</strong></a><br><em>Wellesley College via edX</em><br>Improve your Italian language skills and expand your vocabulary while you learn about Italian art, literature and contemporary society. Self paced.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/5315/edx-italian3x-italian-language-and-culture-advanced?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Italian3x: Italian Language and Culture: Advanced</strong></a><br><em>Wellesley College via edX</em><br>Enhance your knowledge of the Italian language and learn about Italy’s culture and history including theater, opera and the poet Dante. Self paced.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/6831/futurelearn-italian-for-beginners-1-meeting-greeting-and-eating?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Italian for Beginners 1: Meeting, Greeting and Eating</strong></a><br><em>The Open University via FutureLearn</em><br>Learn how to order food and drink, greet people, and introduce yourself, in this first Italian for Beginners course. Starts September 5th.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/6832/futurelearn-italian-for-beginners-2-my-friends-and-family?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Italian for Beginners 2: My Friends and Family</strong></a><br><em>The Open University via FutureLearn</em><br>Learn how to introduce people, exchange information about them and talk about your family. Starts October 10th.</p>
<p><a target="_blank" href="https://www.class-central.com/mooc/6833/futurelearn-italian-for-beginners-3-my-daily-life?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Italian for Beginners 3: My Daily Life</strong></a><br><em>The Open University via FutureLearn</em><br>In the third Italian for Beginners course, learn how to talk about your daily life and your leisure activities. Starts November 14th.</p>
<h3 id="heading-dutch">Dutch</h3>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/FRfUe-ky0Mo" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<p><a target="_blank" href="https://www.class-central.com/mooc/3014/futurelearn-introduction-to-dutch?utm_campaign=language_learning_moocs&amp;utm_source=moocreport"><strong>Introduction to Dutch</strong></a><br><em>University of Groningen via FutureLearn</em><br>Learn to speak, write and understand basic Dutch, with this free, three-week, introductory foreign language course. Starts August 15th.</p>
<p>If you enjoyed reading this, check out some of <a target="_blank" href="https://www.class-central.com/">Class Central</a>’s other pieces:</p>
<ul>
<li><a target="_blank" href="https://www.freecodecamp.org/news/i-ranked-all-the-best-data-science-intro-courses-based-on-thousands-of-data-points-db5dc7e3eb8e/#.csoh72njf">I ranked every Intro to Data Science course on the internet, based on thousands of data points</a></li>
<li><a target="_blank" href="https://www.freecodecamp.org/news/if-you-want-to-learn-data-science-start-with-one-of-these-programming-classes-fb694ffe780c/#.5m0f7un1z">If you want to learn Data Science, start with one of these programming classes</a></li>
<li><a target="_blank" href="https://www.freecodecamp.org/news/if-you-want-to-learn-data-science-take-a-few-of-these-statistics-classes-9bbabab098b9/#.2s3dc4mda">If you want to learn Data Science, take a few of these statistics classes</a></li>
<li><a target="_blank" href="https://www.freecodecamp.org/news/ivy-league-free-online-courses-a0d7ae675869/#.7jqvo12rz">The 50 best free online university courses according to data</a></li>
<li><a target="_blank" href="https://www.freecodecamp.org/news/ivy-league-free-online-courses-a0d7ae675869/#.7jqvo12rz">Here are 250 Ivy League courses you can take online right now for free</a></li>
</ul>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Photos and stories from a designer ]]>
                </title>
                <description>
                    <![CDATA[ By Jonathan Z White Some of the best designers are also some of the best storytellers. I don’t think this is a coincidence. This is because good designers think about design in terms of stories — frame by frame narratives that illustrate a user’s jou... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/photos-and-stories-from-a-designer-5ee97750ae5/</link>
                <guid isPermaLink="false">66d45f78a326133d12440a0d</guid>
                
                    <category>
                        <![CDATA[ Design ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Photography ]]>
                    </category>
                
                    <category>
                        <![CDATA[ tech  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                    <category>
                        <![CDATA[ user experience ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Tue, 26 Jul 2016 17:15:51 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*NsmrJXcrr9pLuVqSctVyTA.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Jonathan Z White</p>
<p>Some of the best designers are also some of the best storytellers. I don’t think this is a coincidence.</p>
<p>This is because good designers think about design in terms of stories — frame by frame narratives that illustrate a user’s journey through a product.</p>
<p>One of the things that taught me how to be a better story teller — and inadvertently a more empathetic designer — is photography. This is because <strong>photography helps frame your mind.</strong> It makes you think about interactions in terms of characters, settings, and outcomes, key components in product narratives.</p>
<p>This past year, I challenged myself to experiment with photography. I learned that photography refines mechanical skills, like your ability to compose images and create balance. It also teaches you how to use imagery as a way of capturing and conveying stories and experiences.</p>
<p>Here are some photographs and stories that I’ve collected. Hopefully, they encourage you to look at other mediums outside of design to develop your unique style and perspective as a designer.</p>
<h4 id="heading-new-city-new-job-new-life">New city, new job, new life</h4>
<p>This photo was taken in New York. I was wandering around Midtown and happened on a park squished between two office buildings. I loved the lighting so I decided to stop and take some photos.</p>
<p>At the time, I wanted to focus on <em>people</em> as my subjects. <strong>This is because photographing people is hard.</strong> You have capture their emotions and character while reconciling that with your own artistic vision.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/SqzfkulUcsWoizFPLTZCSLbyBicr6ZXdZy8u" alt="Image" width="800" height="533" loading="lazy">
<em>New city, new job, new life</em></p>
<p>I looked around for a candidate and noticed a person sitting on a bench in the park. I went up to her and asked her if it was okay to include her a photo. This part is <em>always</em> nerve wracking. Some people yes, a lot of people say no. In her case, she was completely fine with it.</p>
<p>And I’m glad I asked. I can’t remember her name but her back story always stuck with me.</p>
<p>Up until a few weeks ago, her and her husband had been working full-time in London. But her husband had recently found a new job in New York. So they decided to move. This meant that they had to uproot their lives and move to a completely new city.</p>
<p>As it turns out, the moment captured in the photo was right after her very first job interview. <em>New city, new job, new life.</em></p>
<h4 id="heading-on-a-roof-in-a-city">On a roof in a city</h4>
<p>This photo was taken at night at Top of The Rock. It’s an observation deck that offers a breathtaking view of New York. The story behind this photo has to do with the person I met in the process of getting this photo.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/PSdaN3w9-UFDghcUdgx5ICn1t0IK3vInF3aR" alt="Image" width="800" height="533" loading="lazy">
<em>On a roof in a city</em></p>
<p>It was around golden hour, the last hour of sunlight in a day. I was taking photos of the skyline when someone tapped my shoulder. It was a girl. She saw my camera, and she wanted me to take a photo of her with the city in the background.</p>
<p>I asked her if the photo was for anything specific. Apparently, every year around Christmas, she would send out a Christmas card. The cover was always a picture of her holding a sign that said “Merry Christmas.”</p>
<p>What caught my attention was how much she <em>loved</em> to travel. Every year, the picture was in a different country. In order to keep traveling, she had decided to become a flight attendant for Lufthansa, the German airline.</p>
<p>That was her very last night in New York. The next day, she was on a plane to Germany to start her training.</p>
<h4 id="heading-from-iron-age-forts-to-bandits">From iron age forts to bandits</h4>
<p>When I was in New York, I stayed at the home of two long-time friends of my dad, a husband and wife.</p>
<p>Mark, the husband, is one of the most interesting people I’ve ever met. In his youth, hitchhiking was his passion. Early on, he spent his days hitchhiking across the U.S, as far south as New Orleans, and as far north as Alaska.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/lPlIIugnHEiv1wjyo6NzLHLepZPMn5NflVJ7" alt="Image" width="800" height="533" loading="lazy">
<em>From iron age forts to bandits</em></p>
<p>Between 1978 and 1980, Mark hitchhiked around the world. His experiences shaped his personality, from discovering iron age forts in archeological forays in Scotland to being held up by bandits in the Iranian desert with an entire camp of refugees.</p>
<p>This photo is a reminder of Mark and his stories.</p>
<h4 id="heading-kindness-in-the-subway">Kindness in the subway</h4>
<p>This picture was taken on my last day in the subway. I was on my way to the airport when I encountered a trumpet player in the subway.</p>
<p>There was a homeless person laying down across from the trumpet player. After playing a set, the trumpet player took a break and bought out a saran- wrapped sandwich from his bag.</p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/e8TfO3fUw6NBdOybSEngSvRKysBm6Hmxla8L" alt="Image" width="800" height="533" loading="lazy">
<em>Kindness in the subway</em></p>
<p>Instead of taking a bite into it the sandwich, the trumpet player split it in half. He offered one half to the man lying on the other side of the hall, and bit into the other half.</p>
<p>This exchange felt so genuine. There were no strings attached. After donating a small amount to both gentlemen, I asked the trumpet player if I could take a photo of him.</p>
<p>Now, every time I look at this photo, it reminds me of this story.</p>
<p>What stories do you have? What are some favorite photographs that remind you of them? Leave me a note here or <a target="_blank" href="https://twitter.com/jonathanzwhite">tweet</a> them to me on Twitter.</p>
<p>You can find me on Medium where I publish every week. Or you can follow me on <a target="_blank" href="https://twitter.com/JonathanZWhite">Twitter</a>, where I post non-sensical ramblings about design, front-end development, and virtual reality.</p>
<p><em>P.S. If you enjoyed this article, it would mean a lot if you click the ? and share with friends.</em></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/dLgmU3S-vFhKjwMwDfmFWaev9fZVuTcbPyrO" alt="Image" width="479" height="260" loading="lazy"></p>
<p><img src="https://cdn-media-1.freecodecamp.org/images/am12Cpi-YcI31YRZ8Pj0WVqsKc1lQ93K7JQm" alt="Image" width="480" height="260" loading="lazy"></p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Just because you’re self-taught doesn’t mean you have to learn alone. ]]>
                </title>
                <description>
                    <![CDATA[ By Piotr Bakker I am a self-taught designer with no formal training. No art school, no private courses, not even MOOCs. Nada. But not everything I know about design today I owe to myself. To the contrary—collaborating and learning from others has bee... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/just-because-youre-self-taught-doesn-t-mean-you-have-to-learn-alone-b8724c1549e1/</link>
                <guid isPermaLink="false">66c3595ad372f14b49bdcbce</guid>
                
                    <category>
                        <![CDATA[ Design ]]>
                    </category>
                
                    <category>
                        <![CDATA[ learning ]]>
                    </category>
                
                    <category>
                        <![CDATA[ General Programming ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Travel ]]>
                    </category>
                
                    <category>
                        <![CDATA[ UX ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Mon, 06 Jun 2016 06:39:39 +0000</pubDate>
                <media:content url="https://cdn-media-1.freecodecamp.org/images/1*5ge2x0tome1MozeXpMUDEQ.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Piotr Bakker</p>
<p>I am a self-taught designer with no formal training. No art school, no private courses, not even MOOCs. Nada. But not everything I know about design today I owe to myself. To the contrary—collaborating and learning from others has been key to my progress.</p>
<h4 id="heading-get-out-of-the-building">Get out of the building</h4>
<p>When I first started out, I went to all sorts of industry events, conferences, and seminars. In the beginning, I just wanted to hang out and get free pizza. Not necessarily learn anything.</p>
<p>As I made the rounds to different events, though, I began bumping into more experienced designers<strong>.</strong> They told me about <a target="_blank" href="https://en.m.wikipedia.org/wiki/Grid_(graphic_design)">structural grids</a>, <a target="_blank" href="http://webdesign.tutsplus.com/articles/improving-layout-with-vertical-rhythm--webdesign-14070">vertical rhythm</a> and <a target="_blank" href="https://en.m.wikipedia.org/wiki/Negative_space">negative space</a> — concepts I hadn’t even heard of. They showed me <a target="_blank" href="https://d3js.org">D3.js</a>, <a target="_blank" href="http://www.sketchapp.com">Sketch</a> and <a target="_blank" href="https://thenounproject.com">The Noun Project</a> — tools I had no idea even existed.</p>
<p>That’s also how I stumbled upon hackathons: open-plan workspaces packed with smart people, coffee, and… more pizza! I loved it. That setup was perfect for getting quality, real-time feedback. Whatever I designed, I could get feedback on the spot from experienced designers to find out whether it was any good.</p>
<p>Most importantly, though, I made friends. We talked, we collaborated, we brainstormed—long past the events where we met. Crucially, we gave each other moral support. It helped us all overcome the moments of self-doubt that inevitably crept in. And there were many.</p>
<h4 id="heading-travel-to-learn">Travel to learn</h4>
<p>About a year in, I decided to make my first trip to Silicon Valley. I was running out of cash, and starting to doubt whether my transatlantic voyage had been a good idea. As it turned out, I shouldn’t have worried — in the next month, I ended up learning more than I’d learned <em>in the previous year</em>.</p>
<p>It wasn’t just the quality of events that made a difference. Maybe it was because I didn’t know anyone, but I really went that extra mile to say hello to strangers.</p>
<p>After that initial experience, I resolved to keep traveling. Wherever I went — from London to Bangkok — I joined co-working spaces and signed up for events. Predictably, not all cities offered as much expertise as Silicon Valley. But I learnt something new everywhere.</p>
<p>Travel also gave me the first taste of working remotely. As I was Skyping with clients one thing became clear: to design well I needed to communicate even better. I learnt to ask more precise questions, get to the point faster and call out BS without missing a beat. Given the circumstances, I had no choice. But that’s not something you typically learn by reading a book.</p>
<h4 id="heading-get-help-give-help">Get help, give help</h4>
<p>Even as I was working from home, I couldn’t escape the influence of others. For example, early on, when I wasn’t able to tell if my designs would function as intended, I would borrow ideas from Dribbble or Behance.</p>
<p>It didn’t help my designs stand out. But over time I internalized hundreds of different solutions, patterns, and other neat tricks.</p>
<p>Eventually, I started creating original designs and sharing them as well. Soon enough, young designers and entrepreneurs started asking me to audit <em>their</em> work.</p>
<p>The conversations we had further organized my knowledge, and would often lead to new, unexpected ideas.</p>
<p>I improved my own skills by helping others improve theirs.</p>
<h4 id="heading-learn-with-others">Learn with others</h4>
<p>If you are considering learning a new profession or teaching yourself a new skill, try doing so with other people. The satisfaction of learning will be just as great — if not greater — and you will probably discover ideas you wouldn’t have come across otherwise.</p>
<p>Who knows, you might even land a gig or two.</p>
<p>I certainly did.</p>
 ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
