<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Julian Christian Anderson</title>
    <description>The latest articles on DEV Community by Julian Christian Anderson (@juliancanderson).</description>
    <link>https://dev.to/juliancanderson</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F86384%2F03210a55-2d2a-45dd-a9d9-0e8ebd8b4663.jpg</url>
      <title>DEV Community: Julian Christian Anderson</title>
      <link>https://dev.to/juliancanderson</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/juliancanderson"/>
    <language>en</language>
    <item>
      <title>I am an Industrial Engineer Graduate that turned into Software Engineer, Ask Me Anything!</title>
      <dc:creator>Julian Christian Anderson</dc:creator>
      <pubDate>Thu, 08 Aug 2019 03:21:18 +0000</pubDate>
      <link>https://dev.to/juliancanderson/i-am-an-industrial-engineer-graduate-that-turned-into-software-engineer-ask-me-anything-4kg8</link>
      <guid>https://dev.to/juliancanderson/i-am-an-industrial-engineer-graduate-that-turned-into-software-engineer-ask-me-anything-4kg8</guid>
      <description>

</description>
      <category>ama</category>
    </item>
    <item>
      <title>Vue vs React Episode 0: Handling Form</title>
      <dc:creator>Julian Christian Anderson</dc:creator>
      <pubDate>Thu, 25 Oct 2018 23:02:21 +0000</pubDate>
      <link>https://dev.to/juliancanderson/vue-vs-react-episode-0-handlingform-4eab</link>
      <guid>https://dev.to/juliancanderson/vue-vs-react-episode-0-handlingform-4eab</guid>
      <description>&lt;p&gt;I have been learning Vue and React for the past couple months in my coding bootcamp. The first thing I learned is Vue then I learned React. I could not say which one is better because each one of them has their own strengths and their own weaknesses. For me learning Vue is relatively easier from learning React but not by a huge margin. I will make a series on the differences between the two frameworks. &lt;br&gt;
This first thing I felt when I dive into React after working with Vue is how different they handle Form input. Vue has two way binding on its data because of this &lt;code&gt;v-model&lt;/code&gt;, This is the main reason why they can handle form differently.&lt;/p&gt;
&lt;h1&gt;
  
  
  Handling Form in Vue
&lt;/h1&gt;

&lt;p&gt;In Vue we have v-model which can bind the value from the input to the state or we usually call it data.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can use the v-model directive to create two-way data bindings on form input, textarea, and select elements. It automatically picks the correct way to update the element based on the input type. Although a bit magical, v-model is essentially syntax sugar for updating data on user input events, plus special care for some edge cases. - vuejs.org *&lt;/li&gt;
&lt;/ul&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;If you see the gist file we put v-model on each input to bind their state to the input. On the first input we bind email and on the second input we bind password. By filling the input the state/data will also be changed because of the &lt;code&gt;v-model&lt;/code&gt;. When you press submit you can see in your browser console :&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AlNYNZNgERLa2YQugCT7Evw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AlNYNZNgERLa2YQugCT7Evw.png" alt="Console"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It works like magic in Vue which is very awesome!&lt;/p&gt;
&lt;h1&gt;
  
  
  Handling Form in React
&lt;/h1&gt;

&lt;p&gt;On the other side, React does not have any features similar to the v-model on Vue. So we should handle Form differently in react.&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;In react we can put name on each input, the name we put on the input should be the same with the name on the state.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; &lt;span class="na"&gt;placeholder=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Why?&lt;br&gt;
Because we should handle the input with onChange every time we type in the input box.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; &lt;span class="na"&gt;placeholder=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; 
&lt;span class="na"&gt;onChange=&lt;/span&gt;&lt;span class="s"&gt;{this.formChange}&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;formChange&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;e&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;setState&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;e&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;target&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;e&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;target&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;value&lt;/span&gt;
&lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;This function will handle the change on the input box. Every time it changes we will also change the state. &lt;code&gt;e.target.value&lt;/code&gt; is the value of the things we put into the input. And if you try to console.log &lt;code&gt;e.target.name&lt;/code&gt; it will show that name is equal to the name we assign to the form input. If we put it email then it will be email and if we put it password it will be password. This is the reason why the name we put on the input it must be the same as the state name we have. So basically :&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;e&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;target&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;e&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;target&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;value&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;will result in :&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;email&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;input&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="nx"&gt;email&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;// or&lt;/span&gt;
&lt;span class="nx"&gt;password&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;input&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="nx"&gt;password&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;If we put the name in the input as &lt;code&gt;my_email&lt;/code&gt; and &lt;code&gt;my_password&lt;/code&gt; then &lt;code&gt;e.target.name&lt;/code&gt; will be &lt;code&gt;my_email&lt;/code&gt; and &lt;code&gt;my_password&lt;/code&gt; . We don't have a state with the name of &lt;code&gt;my_email&lt;/code&gt; and &lt;code&gt;my_password&lt;/code&gt; . So our state will still be an empty string.&lt;/p&gt;

&lt;p&gt;Then we will provide the same method named "submit" to handle the button click event.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;submit&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
   &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;email :&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;email&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
   &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;password : &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;state&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;password&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
   &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;setState&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
     &lt;span class="na"&gt;email&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;''&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
     &lt;span class="na"&gt;password&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;''&lt;/span&gt;
   &lt;span class="p"&gt;})&lt;/span&gt;
 &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;The handle event is the same with Vue but when you empty the state the input won't change into an empty string because of the one way binding. To handle that we should put value property to the input.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;input&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; &lt;span class="na"&gt;placeholder=&lt;/span&gt;&lt;span class="s"&gt;"email"&lt;/span&gt; 
&lt;span class="na"&gt;onChange=&lt;/span&gt;&lt;span class="s"&gt;{this.formChange}&lt;/span&gt; &lt;span class="na"&gt;value=&lt;/span&gt;&lt;span class="s"&gt;{this.state.email}&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;By putting value we refer the value of the input to the state so if we empty the state the form input will be empty too.&lt;br&gt;
This is the first episode on comparing React to Vue. I hope that it helps for those who wanted to learn Vue with the basic of React or learning React with the basic of Vue. There are more episodes to come so stay tuned!&lt;br&gt;
I post in my Instagram daily about my journey in web development and also sharing the progress of my articles.&lt;/p&gt;


&lt;div class="instagram-position"&gt;
  &lt;iframe id="instagram-liquid-tag" src="https://www.instagram.com/p/BooxMDjBieC/embed/captioned/"&gt;
  &lt;/iframe&gt;
  
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;iframe&gt;
  class="tweet-embed"&lt;br&gt;
  scrolling="no"&lt;br&gt;
  id="tweet-1055108371274072065-552"&lt;br&gt;
  src="https://platform.twitter.com/embed/Tweet.html?id=1055108371274072065"&amp;gt;&lt;br&gt;
&lt;/iframe&gt;&lt;/p&gt;


  // Detect dark theme
  var iframe = document.getElementById('tweet-1055108371274072065-552');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1055108371274072065&amp;amp;theme=dark"
  }





</description>
      <category>vue</category>
      <category>react</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Creating Simple Kanban Application with Vue and Firebase</title>
      <dc:creator>Julian Christian Anderson</dc:creator>
      <pubDate>Wed, 10 Oct 2018 03:06:45 +0000</pubDate>
      <link>https://dev.to/juliancanderson/creating-simple-kanban-application-with-vue-andfirebase-1fmj</link>
      <guid>https://dev.to/juliancanderson/creating-simple-kanban-application-with-vue-andfirebase-1fmj</guid>
      <description>

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2A2l82cBZyp1DgwybigOEQzw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2A2l82cBZyp1DgwybigOEQzw.png"&gt;&lt;/a&gt;Kanban application with Vue and Firebase&lt;/p&gt;

&lt;h1&gt;
  
  
  Creating Simple Kanban Application with Vue and Firebase
&lt;/h1&gt;

&lt;p&gt;Before we create an application we should know what tools we want to build the application with. For a kanban collaboration application we need a fast application with a reliable database. Of course when we want to collaborate we need a real time database for the application that is why we use Firebase as our database. For the client side we will use Vue JS. To deploy it we will use Firebase Hosting Service too.&lt;/p&gt;

&lt;h4&gt;
  
  
  What is Vue.JS?
&lt;/h4&gt;

&lt;blockquote&gt;
&lt;p&gt;Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces. Unlike other monolithic frameworks, Vue is designed from the ground up to be incrementally adoptable. The core library is focused on the view layer only, and is easy to pick up and integrate with other libraries or existing projects. On the other hand, Vue is also perfectly capable of powering sophisticated Single-Page Applications when used in combination with &lt;a href="https://vuejs.org/v2/guide/single-file-components.html" rel="noopener noreferrer"&gt;modern tooling&lt;/a&gt; and &lt;a href="https://github.com/vuejs/awesome-vue#components--libraries" rel="noopener noreferrer"&gt;supporting libraries&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h4&gt;
  
  
  What is Firebase Real Time Database?
&lt;/h4&gt;

&lt;blockquote&gt;
&lt;p&gt;It is service that provides application developers an API that allows application data to be synchronized across clients and stored on Firebase’s cloud.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  The Steps:
&lt;/h3&gt;

&lt;h4&gt;
  
  
  1. Preparing Vue Application
&lt;/h4&gt;

&lt;p&gt;In building the application we will use Vue CLI to make the development faster. To install Vue CLI you can type this in your terminal :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install -g @vue/cli# ORyarn global add @vue/cli
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;After finish installing Vue CLI we can now create an application by typing :&lt;/p&gt;

&lt;pre id="08df"&gt;$ vue create &lt;/pre&gt;

&lt;p&gt;You can use any name you want for your application and I will just call mine kanban-firebase. We need to set up some things when we first create the project. This is my configuration for the application :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AVkyZdpDlv7NUBjhIDdggYg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AVkyZdpDlv7NUBjhIDdggYg.png"&gt;&lt;/a&gt;Vue JS Configuration&lt;/p&gt;

&lt;p&gt;It may take a while to create the application and when it is finished it will show this on your terminal. (I am using yarn not npm here)&lt;/p&gt;

&lt;p&gt;Don’t forget to install firebase on your project :&lt;/p&gt;

&lt;pre id="9072"&gt;cd kanban-firebase
yarn add firebase
or
npm install --save firebase&lt;/pre&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2ABAa6pp3q_evb1OlB64O6cw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2ABAa6pp3q_evb1OlB64O6cw.png"&gt;&lt;/a&gt;Finished Creating The Application&lt;/p&gt;

&lt;p&gt;Congratulations you have yourself a Vue application by running&lt;/p&gt;

&lt;pre id="d1b6"&gt;yarn serve
or
npm run serve&lt;/pre&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AkT0CysdYni2S-4viZIto9w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AkT0CysdYni2S-4viZIto9w.png"&gt;&lt;/a&gt;Vue JS Template on localhost:8080&lt;/p&gt;

&lt;p&gt;Congratulations you have yourself a Vue application by running&lt;/p&gt;
&lt;h4&gt;
  
  
  2. Preparing Firebase Database
&lt;/h4&gt;

&lt;p&gt;The second thing we need to set up is our real time database from Firebase. Go to &lt;a href="https://console.firebase.google.com/" rel="noopener noreferrer"&gt;https://console.firebase.google.com/&lt;/a&gt; and create a new project.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AblxVWCssJRiovqmghHq_uw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AblxVWCssJRiovqmghHq_uw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After finish initializing your application go to database and choose real time database. And choose start in test mode. Then go to your dashboard and click on the web. Copy everything and put the config on your src/assets/config.js.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;(don’t forget to put this config in your .gitignore file)&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2ADNavHNp-e5PNG_0cXmN6gw.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2ADNavHNp-e5PNG_0cXmN6gw.jpeg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Congratulations you have your Firebase Real Time Database running now.&lt;/p&gt;
&lt;h4&gt;
  
  
  3. Preparing Vue Components
&lt;/h4&gt;

&lt;p&gt;Next thing we should do is to structure the list of components we needed so that the component is reusable. I will make 3 components in total and 1 view components to show the application. The components will be : the content card, the kanban card, and the main header for the application and the view component is just home.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2A1H_5yIrjzQR5K5y2sGRNBw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2A1H_5yIrjzQR5K5y2sGRNBw.png"&gt;&lt;/a&gt;My file structure&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F800%2F1%2AzXjYs_fqt0qN_5nR6H6kTA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F800%2F1%2AzXjYs_fqt0qN_5nR6H6kTA.png"&gt;&lt;/a&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AvhQmd0Yj2vkAwu42QVrLtw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2AvhQmd0Yj2vkAwu42QVrLtw.png"&gt;&lt;/a&gt;Left : Kanban Card , Right : Content Card&lt;/p&gt;
&lt;h4&gt;
  
  
  &lt;strong&gt;4. Get Data From Firebase&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;The next thing to do is get data from firebase. There are 2 ways to get you data from firebase, you can listen once or you can listen the data as the data change. Because we want real time database we will use the .on() method from firebase to get data and I will put the data on Home.vue.&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;



&lt;p&gt;The first thing I do here is to create an initial array to group the task on their type. I put in on taskData as an array of object. You don’t have to get the data every time you render the component because it will automatically change as you add more data to the database because we use .on(). If you want to get the data only one time and does not listen to the changes you can use .once().&lt;/p&gt;

&lt;pre id="a191"&gt;var leadsRef = database.ref('/')
leadsRef.on('value', function(snapshot){&lt;/pre&gt;

&lt;pre id="673d"&gt;//your callback function here
})&lt;/pre&gt;

&lt;p&gt;When you get the data from firebase you can’t read the data straight forward because it will not be in form of a normal object that you want to process. To get the data that is processable on your firebase database you should use .val() at the end of it. To loop the snapshot from firebase I use .forEach method from javascript.&lt;/p&gt;

&lt;pre id="49c2"&gt;//snapshot is an array of object
snapshot.forEach(function(childSnapshot){
childSnapshot.val() //to get value from it&lt;/pre&gt;

&lt;pre id="8b02"&gt;//the rest of the function
}&lt;/pre&gt;

&lt;h4&gt;
  
  
  5. Render KanbanCard Component
&lt;/h4&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;The next thing is to render KanbanCard component. I have 4 items in the taskList so with v-for it will render 4 KanbanCard with title : Pre-Log, To-Do, On-Going and Finished.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;KanbanCard v-for="(data,index) in taskLists" :key="index" :data="data"&amp;gt;&amp;lt;/KanbanCard&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;With this line of code here we will loop the taskLists array and give props to the KanbanCard the data inside taskLists array.&lt;/p&gt;

&lt;p&gt;So the props inside each KanbanCard will look like this :&lt;/p&gt;

&lt;pre id="09d2"&gt;{
name: 'Pre-Log',
tasks: [
{
status : 'Pre-Log',
title : 'test'&lt;/pre&gt;

&lt;pre id="f7fc"&gt;}]
},&lt;/pre&gt;

&lt;p&gt;Each KanbanCard component will have every tasks with the type that is similar to them.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2Ay3msX4g6xxP4E6HUjrtMBg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2Ay3msX4g6xxP4E6HUjrtMBg.png"&gt;&lt;/a&gt;The Schema of The Database&lt;/p&gt;
&lt;h4&gt;
  
  
  6. Render ContentCard Component
&lt;/h4&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;



&lt;p&gt;Inside Each KanbanCard we will render the ContentCard component which hold every task that we add.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;ContentCard v-for="(item) in data.tasks" :key="item.id" :item="item" :name="data.name"&amp;gt;&amp;lt;/ContentCard&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Because we give props to the KanbanCard as a name of data. We will loop the data.tasks which is an array of object inside each props.&lt;/p&gt;

&lt;p&gt;After you render each data it will look like this :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2A4FI7gNk3KaS3CyU8Dw39ZQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F1600%2F1%2A4FI7gNk3KaS3CyU8Dw39ZQ.png"&gt;&lt;/a&gt;KanbanCard with ContentCard inside of it&lt;/p&gt;

&lt;p&gt;and now how do we make the button in each ContentCard? In this case I will use the created lifecycle on Vue Component. Each component has the data(state) buttonOne and buttonTwo. Before it is created the state will change according to what we set below.&lt;/p&gt;

&lt;pre id="7560"&gt;created () {
if (this.name === 'Pre-Log') {
this.buttonOne = 'To-Do'
this.buttonTwo = null
}
else if (this.name === 'To-Do') {
this.buttonOne = 'Pre-Log'
this.buttonTwo = 'On-Going'
}
else if (this.name === 'On-Going') {
this.buttonOne = 'Finished'
this.buttonTwo = 'To-Do'
}
else if (this.name === 'Finished') {
this.buttonOne = 'On-Going'
this.buttonTwo = null
}
}&lt;/pre&gt;

&lt;p&gt;In this step before the component is created it will check the name of the KanbanCard and will generate a button with a name that suits the KanbanCard. We also set a different method for each button. Basically the button will update the status of the task that we have.&lt;/p&gt;

&lt;pre id="759a"&gt;actionOne () {
database.ref(`/${this.item.id}`).remove()      database.ref('/').push({
title: this.item.title,
status: this.buttonOne
})
},    &lt;/pre&gt;

&lt;pre id="63b4"&gt;actionTwo () {
database.ref(`/${this.item.id}`).remove()      database.ref('/').push({
title: this.item.title,
status: this.buttonTwo
})
},    &lt;/pre&gt;

&lt;pre id="7a65"&gt;removeItem () {
database.ref(`/${this.item.id}`).remove()
}&lt;/pre&gt;

&lt;p&gt;actionOne and actionTwo is the same. The main function of this two button is delete the task and create a new task with new status on it. For example :&lt;/p&gt;

&lt;p&gt;Before pressing the button :&lt;/p&gt;

&lt;pre id="a5e7"&gt;title : 'test',
status : 'Pre-Log'&lt;/pre&gt;

&lt;p&gt;After pressing the button :&lt;/p&gt;

&lt;pre id="8204"&gt;title : 'test'
status : 'To-Do'&lt;/pre&gt;

&lt;p&gt;The third button that will always be rendered is the delete button. The delete button will delete the task permanently from the database.&lt;/p&gt;
&lt;h4&gt;
  
  
  7. Create New Task
&lt;/h4&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;



&lt;p&gt;Creating new task will be done in the MainHeader Component. Because Vue has two way binding we basically don’t need &lt;/p&gt; tag to have an input. To bind data to the input we can just use v-model. v-model bind your data(state) to the value of the input. In this case I have the data(state) with the name taskName and bind it with v-model to the input.

&lt;pre id="c874"&gt;    &lt;/pre&gt;

&lt;p&gt;the sendItem method will send data to firebase database and create new task with the input we enter. Each new task that we enter will automatically go to Pre-Log.&lt;/p&gt;

&lt;pre id="109f"&gt;sendItem () {
database.ref('/').push({
 title: this.taskName,
 status: 'Pre-Log'
})
this.taskName = ''
}&lt;/pre&gt;

&lt;p&gt;after we create the task we want to empty the input box so what we do is by setting the taskName state into an empty string.&lt;/p&gt;

&lt;p&gt;Congratulation you just finished the application!&lt;/p&gt;

&lt;p&gt;Here is the live application and the Github repository :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://kanban-74e11.firebaseapp.com/#/" rel="noopener noreferrer"&gt;&lt;strong&gt;Kanban Firebase&lt;/strong&gt;&lt;br&gt;
_Vue Firebase Application_kanban-74e11.firebaseapp.com&lt;/a&gt;&lt;a href="https://kanban-74e11.firebaseapp.com/#/" rel="noopener noreferrer"&gt;&lt;/a&gt;&lt;a href="https://github.com/julianjca/kanban-vue-firebase" rel="noopener noreferrer"&gt;&lt;strong&gt;julianjca/kanban-vue-firebase&lt;/strong&gt;&lt;br&gt;
_Contribute to julianjca/kanban-vue-firebase development by creating an account on GitHub._github.com&lt;/a&gt;&lt;a href="https://github.com/julianjca/kanban-vue-firebase" rel="noopener noreferrer"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you have any questions leave it on the comment section down below!&lt;/p&gt;

&lt;p&gt;Follow me on instagram to see my journey as a web developer!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://instagram.com/juliancanderson" rel="noopener noreferrer"&gt;&lt;strong&gt;Julian Christian Anderson (@juliancanderson) * Instagram photos and videos&lt;/strong&gt;&lt;br&gt;
_5,129 Followers, 879 Following, 117 Posts - See Instagram photos and videos from Julian Christian Anderson…_instagram.com&lt;/a&gt;&lt;a href="https://instagram.com/juliancanderson" rel="noopener noreferrer"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>vue</category>
      <category>beginners</category>
      <category>webdev</category>
    </item>
    <item>
      <title>My Experiences in a Coding Bootcamp for 2 Months</title>
      <dc:creator>Julian Christian Anderson</dc:creator>
      <pubDate>Mon, 17 Sep 2018 01:37:30 +0000</pubDate>
      <link>https://dev.to/juliancanderson/my-experiences-in-a-coding-bootcamp-for-2-months-3759</link>
      <guid>https://dev.to/juliancanderson/my-experiences-in-a-coding-bootcamp-for-2-months-3759</guid>
      <description>

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--E2W77TmA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/1600/1%2AtKlhbEEg0fqVJ4tH8IAZRg.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--E2W77TmA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/1600/1%2AtKlhbEEg0fqVJ4tH8IAZRg.jpeg" alt=""&gt;&lt;/a&gt;Image from my Instagram account &lt;a class="mentioned-user" href="https://dev.to/juliancanderson"&gt;@juliancanderson&lt;/a&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;My Background&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;First, let me introduce myself. My name is Julian Christian Anderson and I am a Web Developer from Indonesia. I don’t have any background at Technology, in fact I have a degree in Industrial Engineering. I finish my Industrial Engineering Degree this June and a year before finishing my degree I found out that my passion is actually in tech industry. So back to 2017 I learnt about web development by my own through Youtube and Udemy videos. After couple of months, I decided to be a freelancer in my last semester. When it comes to basic stuffs things may not get that hard for me but I faced a roadblock.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;What I Feel&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;I faced a roadblock after a couple of months because I am aiming to be a full stack javascript developer. In the Javascript world, there are a lot of frameworks and things that you should know. I jumped from a framework to another because I got stuck at one of them. Jumping from a framework to another did not solve my problem at all. The worst thing is that it keeps adding more trouble to my developer journey. At that time I don’t even know what should I do next or how can I fix my problem. Because when I enroll a course at Udemy I can’t meet the person face to face and sometimes it is hard to explain a problem in form of text. I tried to find a community at my city and I couldn’t find it so I keep the problem to myself.&lt;/p&gt;

&lt;h3&gt;
  
  
  What Did I Do Next?
&lt;/h3&gt;

&lt;p&gt;I tried to find some kind of workshop near my city. The first thing I found is a mobile developer bootcamp located in my city but I have no interest at all. Luckily I came across a Full Stack Javascript Bootcamp located at Jakarta, Indonesia. I read the testimonials and study their curriculum then I got attracted by them. They will start the bootcamp on July and the deadline of my final project is on June. I talked about this with my parents and I am grateful that they agreed. They gave me their full support then I tried to finish my final project soon enough so I can enroll at the bootcamp.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--EhrqVD8P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/1600/1%2AgNbLdJLMKZG8yURmOCceJQ.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--EhrqVD8P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/1600/1%2AgNbLdJLMKZG8yURmOCceJQ.jpeg" alt=""&gt;&lt;/a&gt;instagram &lt;a class="mentioned-user" href="https://dev.to/juliancanderson"&gt;@juliancanderson&lt;/a&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  What is A Coding Bootcamp?
&lt;/h3&gt;

&lt;p&gt;The definition of bootcamp according to Google is :&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“a military training camp for new recruits, with strict discipline.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And the definition of Coding Bootcamp according to &lt;a href="http://thefirehoseproject.com/developer-guide/1"&gt;http://thefirehoseproject.com/developer-guide/1&lt;/a&gt; is :&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“a technical training program that teaches the programming skills that employers look for. Coding bootcamps enable students with little coding proficiency to focus on the most important aspects of coding and immediately apply their new coding skills to solve real-world problems.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So basically it is a training on programming with a strict discipline. But the thing about is that is really powerful is that it only teaches us a certain “skills” or “language”. There are a lot of programming language out there and it can be really overwhelming to learn them all. So the solution to the problem is by making a coding bootcamp that focus on the basic of programming in general and a specific programming language.&lt;/p&gt;




&lt;h3&gt;
  
  
  What Do You Do At A Coding Bootcamp?
&lt;/h3&gt;

&lt;p&gt;So my coding bootcamp is separated into 4 phases. At phase 0, I only came to the campus on Monday, Wednesday, and Friday. Each day there is a single lecture for 2 hours and there will be assignments for that week that we should finish at home. At this phase I feel like it is not that busy and you can still do other stuffs after the lecture. You also get a live coding session which is basically an exam to test your knowledge every single week. This phase 0 lasts for 6 weeks. Phase 0 is all about basic Javascript and Programming. We learn about array, looping, objects, etc.&lt;/p&gt;

&lt;p&gt;Now I am on phase one after finishing my phase 0 with a pretty good score. I can go through Phase 0 without any major problem because I have been learning Javascript for a while. Without an experience in javascript and programming I couldn’t do that well. Phase 1 until 3 is called “Immersive Phase”.&lt;/p&gt;

&lt;p&gt;At Phase 1 I go to the bootcamp everyday from 9 AM to 6 PM. Sometimes I go back home later at night because of unfinished assignments at the bootcamp. So for a typical day in immersive phase we have 2 lecture for 1 hour-1,5hour. Rest of the time we spend is on the practical stuffs on the things we have learned at the lecture. The bootcamp also give assignments on the weekend usually to make us understand everything we have learned the week before.&lt;/p&gt;




&lt;h3&gt;
  
  
  My Opinions on Coding Bootcamp 💻
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Pros :&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; For me a coding bootcamp is a great solution for people who want to dig deeper into programming or a certain programming language in a short time. Because it is usually shorter in time to a CS Degree.&lt;/li&gt;
&lt;li&gt; Coding bootcamp is also a great thing to enroll because everything that we will learn in it focus on the important part of programming and language. They also give a real world example problem for our assignments so that we can have a knowledge on it even before we graduate.&lt;/li&gt;
&lt;li&gt; The thing I love the most in the bootcamp is they mentor system. Mentor is a very crucial thing in every aspect of life. Before I enter the bootcamp I don’t have any mentor on web development and I don’t know what to do when I have a problem. Now because the lecturers become our mentor, I can really improve a lot by their guidance in the web development world.&lt;/li&gt;
&lt;li&gt; I also love being on a bootcamp because of the community. Before joining the bootcamp I have small amount of friend who code. I can not talk about the tech industries with them and I don’t know where to talk to. Now I have a lot of friends with the same passion so it is a fun thing to be able to connect with a lot of developers on the bootcamp.&lt;/li&gt;
&lt;li&gt; The last thing is in a bootcamp they have a very structured curriculum that has been improved over time. So it will always be up to date and helps us in many ways.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Cons :&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Because of the short time the bootcamp has I feel like the pace is so fast and if you don’t focus everyday you can be left behind. Every day or even every lecture can be a different things to learn.&lt;/li&gt;
&lt;li&gt; Coding bootcamp also took most of the time in our day so I feel like I can’t do anything else beside of the coding bootcamp assignments. Sometimes I really want to explore something else but after I got home I feel so tired and go straight to bed.&lt;/li&gt;
&lt;li&gt; You must go all in on it. Don’t get me wrong, I love going all in on things that I do. I was a freelancer before and now I don’t even have time to do client works because of the overwhelming assignments on the bootcamp. So the only way to do it is by hustling until midnight after the bootcamp. It can totally reduces your sleep time and that is totally a bad thing to do since you have to wake up so early in the next morning.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;So, do I recommend joining a coding bootcamp?&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;I totally recommend you to join a coding bootcamp if you have the time and money. It is a bit expensive but it is a very great investment for the future.&lt;/p&gt;

&lt;p&gt;I also suggest that you should study the curriculum first before entering the bootcamp and see if it is the thing you need or else it will be a waste of money. Prepare everything you need, never stop learning, and don’t ever give up even in a difficult situation!&lt;/p&gt;




&lt;p&gt;Thank you for reading. I am open to suggestion since it is the very first time I write. I am sorry for all the mistakes I made on the article and I will totally improve on my next article! 🔥⚡️&lt;/p&gt;

&lt;p&gt;Follow me on Instagram and Twitter :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.instagram.com/juliancanderson"&gt;&lt;strong&gt;Instagram (@juliancanderson)&lt;/strong&gt;&lt;/a&gt; &lt;br&gt;&lt;br&gt;
&lt;a href="https://twitter.com/juliancanderson"&gt;&lt;strong&gt;Twitter (@juliancanderson)&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>codingbootcamp</category>
      <category>bootcamps</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
