<?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: Manuel Mejia</title>
    <description>The latest articles on DEV Community by Manuel Mejia (@mejiamanuel57).</description>
    <link>https://dev.to/mejiamanuel57</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%2F83780%2Ff018ec74-57a3-4978-bfd5-0a885b72a4c0.jpg</url>
      <title>DEV Community: Manuel Mejia</title>
      <link>https://dev.to/mejiamanuel57</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mejiamanuel57"/>
    <language>en</language>
    <item>
      <title>Key people to follow in the Vue world</title>
      <dc:creator>Manuel Mejia</dc:creator>
      <pubDate>Wed, 22 Jan 2020 18:40:00 +0000</pubDate>
      <link>https://dev.to/mejiamanuel57/key-people-to-follow-in-the-vue-world-34md</link>
      <guid>https://dev.to/mejiamanuel57/key-people-to-follow-in-the-vue-world-34md</guid>
      <description>&lt;p&gt;&lt;a href="https://1.bp.blogspot.com/-QgBlURd_LGc/XiiCZ36b1aI/AAAAAAAAWOo/cj0bkIGaTx4d_5pHaLqTmKvsgNT78Wx-gCLcBGAsYHQ/s1600/vue%2Bkey%2Bpeople.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mv41RVRD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://1.bp.blogspot.com/-QgBlURd_LGc/XiiCZ36b1aI/AAAAAAAAWOo/cj0bkIGaTx4d_5pHaLqTmKvsgNT78Wx-gCLcBGAsYHQ/s320/vue%252Bkey%252Bpeople.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For me, one of the small hacks to keep me posted with the tech/tools that I love is to follow the contributors or creators on Twitter. I like to read about what they're thinking, what they're working on and what are the next improvements for the tools. I even like to see their favorite memes 😆. So I encourage you to start this 2020 with the right foot following some brilliant people that are contributing to the Vue.js ecosystem in different ways:  &lt;/p&gt;

&lt;h2&gt;
  
  
  Evan You
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/youyuxi"&gt;@youyuxi&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Yeah, let's start with the creator. Evan has been working with &lt;strong&gt;Vue.js&lt;/strong&gt; since 2014, and right now he's the biggest contributor, dedicating all of his time to the framework. On his Twitter account, you can find thoughts about the next steps of Vue.js and sometimes you can find tweets about UFC 🥊.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Eduardo San Martin Morote
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/posva"&gt;@posva&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Eduardo is part of the Vue Core Team, he's focused on the &lt;strong&gt;&lt;a href="https://github.com/vuejs/vue-router"&gt;vue-router&lt;/a&gt;.&lt;/strong&gt; Also, Eduardo is the creator of &lt;strong&gt;&lt;a href="https://github.com/vuejs/vuefire"&gt;vuefire&lt;/a&gt;&lt;/strong&gt;, a solution to create real-time bindings between Firebase and your Vue application. He tweets really interesting info about vue/vue-router, next conferences and a lot of memes, really funny memes 😁.  &lt;/p&gt;

&lt;h2&gt;
  
  
  John Leider
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/zeroskillz"&gt;@zeroskillz&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;John Leider is the creator of &lt;a href="https://vuetifyjs.com/"&gt;Vuetify&lt;/a&gt;, the most used Vue UI Library. On John's twitter, you can find updates about Vuetify and the next conferences where he will be participating ✨.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Filip Rakowski
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/filrakowski"&gt;@filrakowski&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Filip is the co-founder of &lt;a href="https://www.vuestorefront.io/"&gt;VueStorefront&lt;/a&gt;, a headless PWA frontend for eCommerce and the &lt;a href="https://www.storefrontui.io/"&gt;StorefrontUI&lt;/a&gt; author, a UI framework. He writes really useful posts about performance and best practices on &lt;a href="https://vueschool.io/articles/"&gt;vueschool.io/articles/&lt;/a&gt;. Stay tuned with his latest tweets 🛒.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Chris Fritz
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/chrisvfritz"&gt;@chrisvfritz&lt;/a&gt;&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Vue consultant, and member of the Vue team. Chris helps a lot with the vue documentation on &lt;a href="http://vuejs.org/"&gt;vuejs.org&lt;/a&gt;, also, he loves to share tips about Vue app at a large scale  (&lt;a href="https://github.com/chrisvfritz/vue-enterprise-boilerplate"&gt;vue-enterprise-boilerplate&lt;/a&gt;) 📄.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Jen Looper
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/jenlooper"&gt;@jenlooper&lt;/a&gt;&lt;/strong&gt;   &lt;/p&gt;

&lt;p&gt;Jen is a developer advocate at Microsoft. In 2018, Jen created &lt;a href="http://vuevixens.org/"&gt;VueVixens.org&lt;/a&gt;, a cool community to teach Vue.js to under-represented people. Go and follow Jen to know more about this wonderful community 🦊.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Guillaume Chau
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/Akryum"&gt;@Akryum&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Member of the Vue Core Team, he focuses on &lt;a href="https://chrome.google.com/webstore/detail/vuejs-devtools/nhdogjmejiglipccpnnnanhbledajbpd?hl=en"&gt;vue-devtools&lt;/a&gt;, &lt;a href="https://cli.vuejs.org/"&gt;vue-cli&lt;/a&gt;, and &lt;a href="https://github.com/vuejs/vue-apollo"&gt;vue-apollo&lt;/a&gt;, tools that will make you work like a wizard. On his twitter account, you can find information about the latest vue tool updates, next conferences, and other interesting things 🧙.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Alex Kyriakidis
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/hootlex"&gt;@hootlex&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Teacher and co-founder of &lt;a href="https://vueschool.io/"&gt;Vue School&lt;/a&gt;, one of the biggest Vue learning platforms, also the author of &lt;a href="https://leanpub.com/vuejs2"&gt;The Majesty of VueJS&lt;/a&gt;. Follow him to know more about the latest courses and I promise you will learn a lot 👨‍🏫.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sébastien Chopin
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/Atinux"&gt;@Atinux&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Creator of the famous web framework for building Vue.js apps, &lt;a href="http://nuxt.js/"&gt;Nuxt.js&lt;/a&gt;. Follow him to stay tuned with the latest Nuxt updates and conferences 💡.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Sarah Drasner
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/sarah_edo"&gt;@sarah_edo&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Head of DX  at Netlify and a member of the Vue Core Team. Sarah has helped with the documentation on &lt;a href="http://vuejs.org/"&gt;vuejs.org&lt;/a&gt; and with the &lt;a href="https://github.com/sdras/vue-vscode-snippets"&gt;vue-vscode-snippets&lt;/a&gt; which is widely used by developers working with Vue.js on VS Code. Do you like CSS animations? well, she has some incredible projects on &lt;a href="https://codepen.io/sdras/pens/popular"&gt;codepen.io&lt;/a&gt; 🌟.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Michael Thiessen
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/MichaelThiessen"&gt;@MichaelThiessen&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Michael is a developer working on &lt;a href="https://www.vidyard.com/video-demo/?utm_source=twitter-organic&amp;amp;utm_medium=social&amp;amp;submitted=true"&gt;Vidyard&lt;/a&gt;, a video platform created with Vue.js. On his Twitter account, he shares the journey of this startup, tips for creating reusable components, and other interesting stuff. Don't forget to check his blog &lt;a href="https://michaelnthiessen.com/"&gt;michaelnthiessen.com&lt;/a&gt; 📺.  &lt;/p&gt;

&lt;h2&gt;
  
  
  Maria Lamardo
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;twitter: &lt;a href="https://twitter.com/MariaLamardo"&gt;@MariaLamardo&lt;/a&gt;&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;Front End Engineer at &lt;a href="https://www.pendo.io/"&gt;Pendo&lt;/a&gt;, also a member of  &lt;a href="http://vuevixens.org/"&gt;VueVixens.org&lt;/a&gt;. She is focused on sharing knowledge about Accessibility (a11y). Follow her to know more about the next conferences and meetups ♿.  &lt;/p&gt;

&lt;p&gt;That is my top list, but there are other really interesting people to follow like:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Maya Shavin - &lt;a href="https://twitter.com/MayaShavin"&gt;@MayaShavin&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Ben Hong - &lt;a href="https://twitter.com/bencodezen"&gt;@bencodezen&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Natalia Tepluhina - &lt;a href="https://twitter.com/N_Tepluhina"&gt;@N_Tepluhina&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Damian Dulisz - &lt;a href="https://twitter.com/DamianDulisz"&gt;@DamianDulisz&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Sarah Dayan - &lt;a href="https://twitter.com/frontstuff_io"&gt;@frontstuff_io&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Phan An - &lt;a href="https://twitter.com/notphanan"&gt;@notphanan&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Gregg Pollack - &lt;a href="https://twitter.com/greggpollack"&gt;@greggpollack&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Pooya Parsa - &lt;a href="https://twitter.com/_pi0_"&gt;@_pi0_&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Amir Rustamzadeh - &lt;a href="https://twitter.com/amirrustam"&gt;@amirrustam&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I hope you find a lot of useful information by following these amazing people. Share in the comments other twitter accounts that we should be following and stay tuned!&lt;/p&gt;

</description>
      <category>vue</category>
      <category>nuxt</category>
      <category>vuetify</category>
    </item>
    <item>
      <title>GitHub Pages + Vue CLI 3</title>
      <dc:creator>Manuel Mejia</dc:creator>
      <pubDate>Mon, 28 Oct 2019 21:11:00 +0000</pubDate>
      <link>https://dev.to/mejiamanuel57/github-pages-vue-cli-3-1cjo</link>
      <guid>https://dev.to/mejiamanuel57/github-pages-vue-cli-3-1cjo</guid>
      <description>&lt;p&gt;&lt;a href="https://1.bp.blogspot.com/-3mbmzf0jtS8/XbdZb8b53pI/AAAAAAAAVMQ/W5pN_nHsbmM3AOYgH7jalIEf_RWN4r10ACLcBGAsYHQ/s1600/manuel%2Bmejia%2Bjr%2BVue%2BCLI%2B%252B%2BGitHub%2BPages.png" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F1.bp.blogspot.com%2F-3mbmzf0jtS8%2FXbdZb8b53pI%2FAAAAAAAAVMQ%2FW5pN_nHsbmM3AOYgH7jalIEf_RWN4r10ACLcBGAsYHQ%2Fs640%2Fmanuel%252Bmejia%252Bjr%252BVue%252BCLI%252B%25252B%252BGitHub%252BPages.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this post, I will show you how to run your Vue CLI 3 project on GitHub Pages in a few simple steps. GitHub Pages is ideally for your personal website, documentation, demos, or your &lt;a href="https://cubicalconsulting.com/" rel="noopener noreferrer"&gt;wife's website&lt;/a&gt; 😊 ... basically, any static project that you want to display to the world quickly.  &lt;/p&gt;

&lt;p&gt;For the purpose of this tutorial, I will be using &lt;a href="https://github.com/mejiamanuel57" rel="noopener noreferrer"&gt;mejiamanuel5&lt;/a&gt;/&lt;a href="https://github.com/mejiamanuel57/gh-pages-vue-cli-3" rel="noopener noreferrer"&gt;gh-pages-vue-cli-3&lt;/a&gt;  a project that I created for a better demonstration. You can clone my repo, use your existing Vue CLI 3 project or create a new one. If you don't know how to create one, this &lt;a href="https://cli.vuejs.org/guide/creating-a-project.html#vue-create" rel="noopener noreferrer"&gt;guide&lt;/a&gt; can help you.  &lt;/p&gt;

&lt;p&gt;Ready? let's start:  &lt;/p&gt;

&lt;p&gt;1) At the root of your project create a file called  &lt;strong&gt;deploy.sh&lt;/strong&gt;  and add this script:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# abort on errors &lt;/span&gt;
&lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="nt"&gt;-e&lt;/span&gt; 

&lt;span class="c"&gt;# build &lt;/span&gt;
&lt;span class="nb"&gt;echo &lt;/span&gt;Linting.. 
npm run lint 
&lt;span class="nb"&gt;echo &lt;/span&gt;Building. this may take a minute... 
npm run build 

&lt;span class="c"&gt;# if you are deploying to a custom domain add a CNAME (uncomment the next 3 lines) &lt;/span&gt;
&lt;span class="c"&gt;#cd docs &lt;/span&gt;
&lt;span class="c"&gt;#echo 'yourcustomdomain.com' &amp;gt; CNAME &lt;/span&gt;
&lt;span class="c"&gt;#cd - &lt;/span&gt;

&lt;span class="c"&gt;# deploy &lt;/span&gt;
&lt;span class="nb"&gt;echo &lt;/span&gt;Deploying.. 
git add &lt;span class="nt"&gt;-A&lt;/span&gt; 
git commit &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="s1"&gt;'deploy'&lt;/span&gt; 
git push &lt;span class="nt"&gt;-f&lt;/span&gt; https://github.com/mejiamanuel57/gh-pages-vue-cli-3.git master
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Substitute &lt;strong&gt;mejiamanuel57&lt;/strong&gt; with your GitHub username and &lt;strong&gt;gh-pages-vue-cli-3&lt;/strong&gt; with the name of the repo you are pointing to. This script will lint, commit and deploy your code to GitHub.  &lt;/p&gt;

&lt;p&gt;2) In your package.json, change your &lt;strong&gt;"scripts":&lt;/strong&gt; section for this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"scripts"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; 
 &lt;/span&gt;&lt;span class="nl"&gt;"dev"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"vue-cli-service serve --open"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; 
 &lt;/span&gt;&lt;span class="nl"&gt;"build"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"vue-cli-service build --dest docs"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; 
 &lt;/span&gt;&lt;span class="nl"&gt;"lint"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"vue-cli-service lint"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; 
 &lt;/span&gt;&lt;span class="nl"&gt;"deploy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"bash deploy.sh"&lt;/span&gt;&lt;span class="w"&gt; 
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now your output directory for the  &lt;strong&gt;"build"&lt;/strong&gt;  will be &lt;strong&gt;docs&lt;/strong&gt; (We will use this directory in GitHub Pages later) &lt;strong&gt;.&lt;/strong&gt;   Also we have added  &lt;strong&gt;"deploy":&lt;/strong&gt;  to run the script from step 1.  &lt;/p&gt;

&lt;p&gt;3) At the root of your project create &lt;strong&gt;vue.config.js&lt;/strong&gt;  and add this configuration:&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;module&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;exports&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
 &lt;span class="na"&gt;publicPath&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;NODE_ENV&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;production&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/gh-pages-vue-cli-3/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Substitute  &lt;strong&gt;gh-pages-vue-cli-3&lt;/strong&gt;  with the name of your repo. This will tell to GitHub Pages where your public path starts.  &lt;/p&gt;

&lt;p&gt;4) Now, in your terminal run &lt;strong&gt;npm run deploy&lt;/strong&gt; to build and deploy.  &lt;/p&gt;

&lt;p&gt;5) On GitHub go to your &lt;strong&gt;repo -&amp;gt; settings -&amp;gt; GitHub Pages - &amp;gt; Source&lt;/strong&gt; and select &lt;strong&gt;master branch /docs folder&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://1.bp.blogspot.com/-Pj5e_6DEZoo/XaT3T4WSi0I/AAAAAAAAU_8/xitraJd4jtwSwfwBFNNXS4dD7jhfzOUsgCLcBGAsYHQ/s1600/Capture.PNG" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F1.bp.blogspot.com%2F-Pj5e_6DEZoo%2FXaT3T4WSi0I%2FAAAAAAAAU_8%2FxitraJd4jtwSwfwBFNNXS4dD7jhfzOUsgCLcBGAsYHQ%2Fs640%2FCapture.PNG"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🌟Bonus&lt;/strong&gt;: if you want to improve the SEO and routing of your Vue project, add the &lt;a href="https://github.com/chrisvfritz/prerender-spa-plugin" rel="noopener noreferrer"&gt;prerender-spa-plugin&lt;/a&gt; package:  &lt;/p&gt;

&lt;p&gt;1) Run  &lt;strong&gt;npm install -D prerender-spa-plugin&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;2) Change your  &lt;strong&gt;vue.config.js&lt;/strong&gt;  for this:&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="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;path&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;PrerenderSPAPlugin&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;prerender-spa-plugin&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;Renderer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;PrerenderSPAPlugin&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PuppeteerRenderer&lt;/span&gt;

&lt;span class="nx"&gt;module&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;exports&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;publicPath&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;NODE_ENV&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;production&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/gh-pages-vue-cli-3/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&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;configureWebpack&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;config&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="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;NODE_ENV&lt;/span&gt; &lt;span class="o"&gt;!==&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;production&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt;

    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="na"&gt;plugins&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;PrerenderSPAPlugin&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
          &lt;span class="na"&gt;staticDir&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;path&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;join&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;__dirname&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;docs&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;
          &lt;span class="na"&gt;routes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/about&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
          &lt;span class="na"&gt;minify&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="na"&gt;collapseBooleanAttributes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;collapseWhitespace&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;decodeEntities&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;keepClosingSlash&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="na"&gt;sortAttributes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;
          &lt;span class="p"&gt;},&lt;/span&gt;
          &lt;span class="na"&gt;renderer&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Renderer&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="na"&gt;headless&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;})&lt;/span&gt;
        &lt;span class="p"&gt;})&lt;/span&gt;
      &lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="p"&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;Substitute &lt;strong&gt;gh-pages-vue-cli-3&lt;/strong&gt; with the name of your repo and use &lt;strong&gt;routes: []&lt;/strong&gt;  to add the routes of your current project.&lt;/p&gt;

&lt;p&gt;Note: if you are going to use a custom domain (&lt;a href="http://www.mydomain.com" rel="noopener noreferrer"&gt;www.mydomain.com&lt;/a&gt;) remove or comment the publiPath line:&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;publicPath&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;NODE_ENV&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;production&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/gh-pages-vue-cli-3/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;3) ....and run  &lt;strong&gt;npm run deploy&lt;/strong&gt; in your terminal.  &lt;/p&gt;

&lt;p&gt;That's all, enjoy your Vue project hosted on GitHub Pages with SEO optimization.👍  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/mejiamanuel57/gh-pages-vue-cli-3" rel="noopener noreferrer"&gt;Source of the project.&lt;/a&gt;    &lt;/p&gt;

&lt;p&gt;I hope this post help you. If you have any question please, leave a comment, also stay tuned for the updates about how to run a Vue CLI 4 project on GitHub Pages.&lt;/p&gt;

&lt;p&gt;Originally published at &lt;a href="//blog.manuelmejiajr.com"&gt;blog.manuelmejiajr.com&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Get comfortable with being uncomfortable. (Learning technique)</title>
      <dc:creator>Manuel Mejia</dc:creator>
      <pubDate>Fri, 04 Jan 2019 18:48:00 +0000</pubDate>
      <link>https://dev.to/mejiamanuel57/get-comfortable-with-being-uncomfortable-learning-technique-56g1</link>
      <guid>https://dev.to/mejiamanuel57/get-comfortable-with-being-uncomfortable-learning-technique-56g1</guid>
      <description>&lt;p&gt;&lt;a href="https://1.bp.blogspot.com/--sjXVCcgXV0/XC-n_faZwtI/AAAAAAAARb8/-Cxi4ZSOwekFRgtZPcKmzjIarZF0YXfRgCEwYBhgL/s1600/CWo-P3hZFJytXiJ0QVvZ_1082122444.jpeg"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--nklfYHPK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://1.bp.blogspot.com/--sjXVCcgXV0/XC-n_faZwtI/AAAAAAAARb8/-Cxi4ZSOwekFRgtZPcKmzjIarZF0YXfRgCEwYBhgL/s640/CWo-P3hZFJytXiJ0QVvZ_1082122444.jpeg" alt=""&gt;&lt;/a&gt; &lt;/p&gt;
Photo by Kevin Richardson


                  

&lt;p&gt;We, as developers, very often feel overwhelmed with the amount of frameworks/tools/libraries/paradigms getting out so fast, especially if you are working in the web development industry.  &lt;/p&gt;

&lt;p&gt;To have a job from 9 to 5, spend time with your family, have time for your hobbies, maybe work in a side project, and also stay up-to-date with the latest technologies, is extremely hard, and guess what? that's pretty normal in our profession. You have to stay tuned to the latest technologies, you can't keep away from that. Consequently, you will be in &lt;strong&gt;the uncomfortable zone&lt;/strong&gt; of being exposed to new knowledge, again and again.  &lt;/p&gt;

&lt;p&gt;So many questions come to your mind, but the biggest one is  &lt;strong&gt;What can I do to stay relevant and avoid to die trying?&lt;/strong&gt; I have also made that question to myself and after some failed attempts, a simple technique has given me some amazing results and I hope it works for you too.  &lt;/p&gt;

&lt;h6&gt;
  
  
  Warning: with the next technique I don't pretend to make you a guru in any technology, but how to make you get the necessary/basic knowledge. Having said this, keep reading. 😀
&lt;/h6&gt;

&lt;p&gt;Let's start with this easy math, a year has 12 months which are 365 days, what if you could use 1 day per month to learn 'X' technology that has been in your mind but you keep telling yourself that you don't have time for it or you simply got the feeling of getting lost in the process of learning it. &lt;strong&gt;Yeah, it's just one day of only 6 hours&lt;/strong&gt;. Hence, at the end of the year, you will have 12 new pieces of knowledge and you only have spent 0.82% of the total time of 1 year.   &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;First,&lt;/strong&gt; make your list, for now just select 12 things you would like to learn. Example:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Node.js&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Travis CI&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;GraphQL&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Docker&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;React&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Webpack&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Jest&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;... and so on.&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Second,&lt;/strong&gt; for each technology that you want to learn, follow this path:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Read 1 or 2 articles about it, the best practice, pros, cons, etc.. (1 hour)&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Watch 1 or 2 videos about how to use it. (1 hour)&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Start a small project where you can learn by DIY, something shorter than a To-Do List app. (4 hours)&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The time could vary from one technology to the other, however, the whole point is to spend at least 6 hours to gain the knowledge. Some technologies will require more time to learn it, although, in most of the cases, this should be enough. Another thing to keep in mind, 6 hours of learning will not make you an expert in 'X' technology but you will grasp the basic concepts and will know how to implement it in any project for professional or personal purpose.   &lt;/p&gt;

&lt;p&gt;It could also happen to you; you start learning something but you really don't feel the &lt;strong&gt;"ok, I&lt;/strong&gt;  &lt;strong&gt;got it"&lt;/strong&gt; moment. The secret here is to keep reading/watching/playing until all that exposure to a new concept puts your mind to work like if you were solving a puzzle. In the end, you will say &lt;strong&gt;"that wasn't hard after all"&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In this new year, let your fears out and start getting comfortable with being uncomfortable&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;To conclude, I will let you this amazing Will Smith's video talking about fear, enjoy.  &lt;/p&gt;

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

</description>
      <category>learning</category>
    </item>
    <item>
      <title>Clean Code, even under pressure</title>
      <dc:creator>Manuel Mejia</dc:creator>
      <pubDate>Mon, 09 Jul 2018 15:35:00 +0000</pubDate>
      <link>https://dev.to/mejiamanuel57/clean-code-even-under-pressure-oi2</link>
      <guid>https://dev.to/mejiamanuel57/clean-code-even-under-pressure-oi2</guid>
      <description>&lt;p&gt;&lt;a href="https://4.bp.blogspot.com/-f-xLIkiG44A/Wzt-5kvWvZI/AAAAAAAAPbE/DGX5fxcee18dI5jayF89cA44zQVdHriUACLcBGAs/s1600/giphy.gif" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F4.bp.blogspot.com%2F-f-xLIkiG44A%2FWzt-5kvWvZI%2FAAAAAAAAPbE%2FDGX5fxcee18dI5jayF89cA44zQVdHriUACLcBGAs%2Fs320%2Fgiphy.gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We all have been in the position at work when the pressure comes, and delivering on time is a "life-or-death situation". There are a lot of factors that influence a bad project planning like wrong time estimation, workload distribution, team choice, etc...and maybe it will happen more than once, after all, we are humans and we are really bad forecasting.  &lt;/p&gt;

&lt;p&gt;Certainly, nobody wants to work under pressure, we can't think clearly,  we try to work faster, making more mistakes than in a normal situation, it sucks I know. In those moments we tend to focus more on delivering at all cost, even sacrificing our reputation...and that's why I wanted to write this post.  &lt;/p&gt;

&lt;p&gt;Keep in mind, when you are coding, maybe alone or within a team, you are building something to solve a problem it doesn't matter how big or small it is, I'm pretty sure that problem will evolve over the time. Having said that, more and more code will be written. This code should be maintainable over the time, therefore, setting rules, design patterns, and conventions are a "&lt;strong&gt;MUST&lt;/strong&gt;".  &lt;/p&gt;

&lt;p&gt;A strong recommendation is to &lt;strong&gt;start wrapping all these settings before writing the first line of code&lt;/strong&gt; because it will be very difficult to clean the mess later. Some examples of simple things to define at the beginning are:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Name conventions for variables and functions (Pascal case, Camel case, etc..)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Curly braces format, find some wise advice &lt;a href="https://softwareengineering.stackexchange.com/questions/2715/should-curly-braces-appear-on-their-own-line" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Line length (horizontal line of code), &lt;a href="https://stackoverflow.com/questions/276022/line-width-formatting-standard" rel="noopener noreferrer"&gt;this questions of SO&lt;/a&gt; it's an interesting starting point&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Indentation style, &lt;a href="https://en.wikipedia.org/wiki/Indentation_style" rel="noopener noreferrer"&gt;here&lt;/a&gt; you have some examples&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Alternatively, and my preferred one, you can &lt;strong&gt;set up a linter&lt;/strong&gt; (a tool that is used to mark the source code with some suspicious and non-structural) and set the rules for the whole team, that will force each member of the team to respect the rules. However, a linter will not help you to write rational algorithms and data structures. For this, I highly recommend you to read &lt;a href="https://dev.to/mejiamanuel57/books-you-must-read-as-a-developer-54c7-temp-slug-6401587"&gt;this set of books&lt;/a&gt; especially the Bob Martin's choice and long hours of code.  &lt;/p&gt;

&lt;p&gt;Also, we could be forced to skip all these rules and conventions to start working right away, but no! stop right there and take couple of hours to set the rules, this will save you a lot of time in the future. Nobody wants to deal with your messy work. After all, it's your code, your responsibility, your reputation. Be aware of all the possible consequence this could trigger, from a bad recommendation for a new position or job opportunity to the unpleasant experience of work with you. I'm sure you don't want to be on that situation, hence  &lt;strong&gt;"Clean Code, even under pressure".&lt;/strong&gt;  &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"To leave the world better than you found it, sometimes you have to pick up other people's trash."&lt;/p&gt;

&lt;p&gt;-Bill Nye&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>cleancode</category>
    </item>
    <item>
      <title>Material Design guidelines,The Lighthouse</title>
      <dc:creator>Manuel Mejia</dc:creator>
      <pubDate>Mon, 08 Jan 2018 14:06:00 +0000</pubDate>
      <link>https://dev.to/mejiamanuel57/material-design-guidelinesthe-lighthouse-5fim</link>
      <guid>https://dev.to/mejiamanuel57/material-design-guidelinesthe-lighthouse-5fim</guid>
      <description>&lt;p&gt;&lt;a href="http://2.bp.blogspot.com/-6L5ijzZd5UA/WlNr5E7kchI/AAAAAAAAMX0/Rb0tlz66qm0LNuurGHst4I0JtBKStSESwCK4BGAYYCw/s1600/lighthouse-background-design_1257-187.jpg"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7peoJ5lF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://2.bp.blogspot.com/-6L5ijzZd5UA/WlNr5E7kchI/AAAAAAAAMX0/Rb0tlz66qm0LNuurGHst4I0JtBKStSESwCK4BGAYYCw/s400/lighthouse-background-design_1257-187.jpg" alt=""&gt;&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Probably, you have been hearing about Material Design for a while and yes it has been with us since 2014. Also,  you have seen it in almost all the Google Apps on your phone and desktop.  &lt;/p&gt;

&lt;p&gt;But... what really is Material Design and why should you take advantage of its &lt;a href="https://material.io/guidelines/"&gt;guidelines&lt;/a&gt;?  &lt;/p&gt;

&lt;p&gt;Well, in a nutshell, Material Design is the way Google describes the best practices of &lt;strong&gt;how your object and everything on your app should look and feel&lt;/strong&gt;. This whole thing about Material Design comes after years of study of how users react to the different interfaces in different apps.  &lt;/p&gt;

&lt;p&gt;Now, the real question is, what are the advantages of reading the &lt;a href="https://material.io/guidelines/"&gt;Material Design guidelines&lt;/a&gt;?  &lt;/p&gt;

&lt;p&gt;Sometimes frontend developers and UX/UI designers meet the problem of how an app should look like on some point of the user interface development and some questions that come to mind  are:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Should be this button here? &lt;/li&gt;
&lt;li&gt;Is this notification in the right place?&lt;/li&gt;
&lt;li&gt;What can I show when I perform an action in this part? &lt;/li&gt;
&lt;li&gt;Is my combination of colors right?&lt;/li&gt;
&lt;li&gt;etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://material.io/guidelines/"&gt;Material Design guidelines&lt;/a&gt; can help you to take those ambiguous decisions by telling you where and what you have to place in your app to make it more intuitive. Let me give you some examples of DOs and DON'Ts:  &lt;/p&gt;

&lt;p&gt;Dealing with Colors:  &lt;/p&gt;

&lt;p&gt;&lt;a href="http://2.bp.blogspot.com/-DFMG-tBx47M/WlK6mo53BMI/AAAAAAAAMWA/Xg-vfopmr90Sks7b0HGM1NqIoiUoiRJzACK4BGAYYCw/s1600/colors.JPG"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--17JBeDNN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://2.bp.blogspot.com/-DFMG-tBx47M/WlK6mo53BMI/AAAAAAAAMWA/Xg-vfopmr90Sks7b0HGM1NqIoiUoiRJzACK4BGAYYCw/s640/colors.JPG" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Positioning floating button:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://2.bp.blogspot.com/-lEljNVacffE/WlK6v082sGI/AAAAAAAAMWQ/RjdeY1KGgDo67gq_XB9HCCHOROYqbASXgCK4BGAYYCw/s1600/buttons.JPG"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--QX5JS5-W--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://2.bp.blogspot.com/-lEljNVacffE/WlK6v082sGI/AAAAAAAAMWQ/RjdeY1KGgDo67gq_XB9HCCHOROYqbASXgCK4BGAYYCw/s640/buttons.JPG" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Showing messages:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/-pFJmmz1it8s/WlK6ueJzQVI/AAAAAAAAMWI/d77hMefJQGoQZlHbKjUlk-5ARDXvIQ2EgCK4BGAYYCw/s1600/writting%2B2.JPG"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AHe9_lbw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://1.bp.blogspot.com/-pFJmmz1it8s/WlK6ueJzQVI/AAAAAAAAMWI/d77hMefJQGoQZlHbKjUlk-5ARDXvIQ2EgCK4BGAYYCw/s640/writting%252B2.JPG" alt=""&gt;&lt;/a&gt;&lt;br&gt;
For each component of your UI they give you examples and an explanation of how to use it, components such as: Data tables, Cards, List, Menus, Tooltips, Buttons, etc. Like a lighthouse which guides the ships through the night, Material Design will give you the right orientation, a huge help for the non-designers skilled developers.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;So don't skip it and give it a read.&lt;/strong&gt; It will save you a lot of time and will make your app more intuitive for the users, I assure you.  &lt;/p&gt;

&lt;p&gt;See also the Material Design implementations for your framework:&lt;br&gt;&lt;br&gt;
&lt;a href="http://www.material-ui.com/#/"&gt;material-ui.com&lt;/a&gt; - React&lt;br&gt;&lt;br&gt;
&lt;a href="https://vuetifyjs.com/"&gt;vuetifyjs.com&lt;/a&gt; - Vue&lt;br&gt;&lt;br&gt;
&lt;a href="https://material.angular.io/"&gt;material.angular.io&lt;/a&gt; - Angular&lt;/p&gt;

</description>
      <category>materialdesign</category>
    </item>
    <item>
      <title>Improve your developer skills with Code Katas</title>
      <dc:creator>Manuel Mejia</dc:creator>
      <pubDate>Sat, 02 Sep 2017 23:59:00 +0000</pubDate>
      <link>https://dev.to/mejiamanuel57/improve-your-developer-skills-with-code-katas-5c22</link>
      <guid>https://dev.to/mejiamanuel57/improve-your-developer-skills-with-code-katas-5c22</guid>
      <description>&lt;p&gt;&lt;a href="http://3.bp.blogspot.com/-5kFzJnG3IEw/WZdWGyzaqpI/AAAAAAAAKMs/47e0Ng-5F28Em5MJ0Dc_4FxoDNiJB8YgQCK4BGAYYCw/s1600/enter-the-dragon-original1.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F3.bp.blogspot.com%2F-5kFzJnG3IEw%2FWZdWGyzaqpI%2FAAAAAAAAKMs%2F47e0Ng-5F28Em5MJ0Dc_4FxoDNiJB8YgQCK4BGAYYCw%2Fs320%2Fenter-the-dragon-original1.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Maybe, the first thing that comes to your mind when you hear the word "KATA" is a movie of Bruce Lee or maybe, the movie Kung Fu Panda 😛. According to Wikipedia Kata is: &lt;/p&gt;

&lt;p&gt;"Japanese word, are detailed choreographed patterns of movements practiced either solo or in pairs. The term form is used for the corresponding concept in non-Japanese martial arts in general."&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In other words, a set of movements very well synchronized which simulate a fight in the real life, and the more you practice those movements, the better you become at fighting.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;But....we are going to talk about &lt;strong&gt;Code Kata&lt;/strong&gt; , instead of practicing how to kick and throw punches, we are going to practice by writing some beautiful code.&lt;/p&gt;

&lt;p&gt;The first time I heard the term "Code Kata" was in the book The Clean Coder by Robert C. Martin, but the original term was credited by Dave Thomas in his book The Pragmatic Programmer.I recommend them both in my post &lt;a href="https://dev.to/mejiamanuel57/books-you-must-read-as-a-developer-54c7-temp-slug-6401587"&gt;Books you must read as a developer&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Code Kata?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It's a code challenge focused on improving skill and technique. Katas come in different ways, some train programming fundamentals, while others focus on complex problem-solving. You can also find katas with mathematic problems, data structure, games, design patterns and puzzles, meant to test your creative problem solving, while others are based on real world coding scenarios. You can do it alone, in a pair or in a group, I love to do it in a group because you can see how others approach the same problem in a different way. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Code Katas are important for any developer?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Let me answer this question with another question: How do you get to be a great runner or great tennis player or great musician? Yeah, you got it, the simple answer is by practicing. It helps to have talent, it helps to know the theories behind... but to be a great developer you need to practice to enhance your code skills. As Robert C. Martin says, it's not enough code from 9 AM to 5 PM in your workplace, to be a great developer you also have to code in your home. Practicing is the key. Therefore, when you are facing a problem in your work or in a side project, you will know which technique suits better for that problem, because you practiced already in a similar kata.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Where can you practice your Code Katas?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;There are many pages where you can improve your code skills, right now I'm using with my friends &lt;a href="http://codewars.com/" rel="noopener noreferrer"&gt;codewars.com&lt;/a&gt;, we set 1 or 2 katas weekly and after everyone finishes it, we compare and give a feedback to each other. I invite you to try it out, you won't be disappointed.&lt;/p&gt;

&lt;p&gt;If you are new doing katas and you want to use codewars.com, I recommend you to start with the low-level difficult katas (Kyu 8) and then select the more difficult ones as you progress:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/-w-SgsxjV7qM/Was4-S8CVTI/AAAAAAAAKgI/rh6Rr3v4E10g-CDjDf0KLVP2Pk7mlcT0QCK4BGAYYCw/s1600/Capture.JPG" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F1.bp.blogspot.com%2F-w-SgsxjV7qM%2FWas4-S8CVTI%2FAAAAAAAAKgI%2Frh6Rr3v4E10g-CDjDf0KLVP2Pk7mlcT0QCK4BGAYYCw%2Fs320%2FCapture.JPG"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here is a list of &lt;a href="https://www.quora.com/What-are-some-good-coding-competition-practice-sites" rel="noopener noreferrer"&gt;coding&lt;/a&gt;&lt;a href="https://www.quora.com/What-are-some-good-coding-competition-practice-sites" rel="noopener noreferrer"&gt;competition/practice sites&lt;/a&gt; if you want something different from my recommendation.&lt;/p&gt;

&lt;p&gt;I will end up with a paragraph from a post of Jeff Atwood, co-founder of &lt;a href="https://en.wikipedia.org/wiki/Stack_Overflow" rel="noopener noreferrer"&gt;Stack Overflow&lt;/a&gt; :&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;" It's an important distinction. I may drive to work every day, but I'm far from a professional driver. Similarly, programming every day may not be enough to make you a professional programmer. So what &lt;em&gt;can&lt;/em&gt; turn someone into a professional driver or programmer? What do you do to practice?..."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/-dFL5J1ifksE/Was7xmspKfI/AAAAAAAAKgU/3s6rg3w9KiofhxuoRnmdrwkdpdyyHgsmQCK4BGAYYCw/s1600/tumblr_nnf33pZFzt1qfcfclo1_500.gif" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F1.bp.blogspot.com%2F-dFL5J1ifksE%2FWas7xmspKfI%2FAAAAAAAAKgU%2F3s6rg3w9KiofhxuoRnmdrwkdpdyyHgsmQCK4BGAYYCw%2Fs320%2Ftumblr_nnf33pZFzt1qfcfclo1_500.gif"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>kata</category>
      <category>code</category>
      <category>cleancode</category>
    </item>
    <item>
      <title>Books you must read as a Developer</title>
      <dc:creator>Manuel Mejia</dc:creator>
      <pubDate>Tue, 11 Jul 2017 18:11:00 +0000</pubDate>
      <link>https://dev.to/mejiamanuel57/books-you-must-read-as-a-developer-1k44</link>
      <guid>https://dev.to/mejiamanuel57/books-you-must-read-as-a-developer-1k44</guid>
      <description>&lt;p&gt;&lt;a href="https://2.bp.blogspot.com/-A-eeRx-5Xmo/WWLk_UBN9uI/AAAAAAAAJjs/ZSxuVYkq328sofNoCDTVdepf6lPmcwoeQCLcBGAs/s1600/allthebooks.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F2.bp.blogspot.com%2F-A-eeRx-5Xmo%2FWWLk_UBN9uI%2FAAAAAAAAJjs%2FZSxuVYkq328sofNoCDTVdepf6lPmcwoeQCLcBGAs%2Fs320%2Fallthebooks.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The title says "Must" but in fact, this is my recommendation for you as a developer. The following books changed my vision and the way I work, this took me from having spaghetti code to a more structured and easier to maintain code base. Also, helped me to improve my way of thinking in front of certain circumstances. Let's start:  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Clean Coder&lt;/strong&gt; by Robert Martin   &lt;/p&gt;

&lt;p&gt;&lt;a href="https://1.bp.blogspot.com/-6VgO0v4NB5k/WWQ4kIs_twI/AAAAAAAAJks/WtzA4mL6ymUD3WkYVyrdL7jkDJSfs5S8wCLcBGAs/s1600/512NzCU0wfL._SX258_BO1%252C204%252C203%252C200_.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F1.bp.blogspot.com%2F-6VgO0v4NB5k%2FWWQ4kIs_twI%2FAAAAAAAAJks%2FWtzA4mL6ymUD3WkYVyrdL7jkDJSfs5S8wCLcBGAs%2Fs200%2F512NzCU0wfL._SX258_BO1%25252C204%25252C203%25252C200_.jpg"&gt;&lt;/a&gt;&lt;br&gt;
Before I talk to you about the book itself, let me explain to you shortly who is the author: Robert Martin a.k.a. Uncle Bob has been writing code since 1970, he is one of the writers of the Agile Manifesto which defines better ways to do the whole development cycle. He is one of the most influential authors in OO programming.  &lt;/p&gt;

&lt;p&gt;The book "The Clean Coder" talks from the perspective of his experience, as I said before he has been coding since the 70's,  a lot of time on the keyboard as you can imagine. The main point of this book is not to show you how to write good code per se, but how to manage certain situations like:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Project estimates&lt;/li&gt;
&lt;li&gt;Best time to write code&lt;/li&gt;
&lt;li&gt;When to say NO&lt;/li&gt;
&lt;li&gt;About working with a team&lt;/li&gt;
&lt;li&gt;Practicing to be a better developer&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Furthermore, the book touches other topics very interesting in my opinion and easy to read. In each chapter, he starts making a story of his experience and what you have to do if that happens to you. You will feel identified with some chapters and scenarios that you live on your daily basis. The book is very short with no more than 200 pages....I really recommend you to read it.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Clean Code&lt;/strong&gt; by Robert Martin  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://2.bp.blogspot.com/-frT-fstCmio/WWQ4zJkdX_I/AAAAAAAAJkw/Zz9oaEaFjWkRa_0wqbeGEea_FdmCg_X1QCLcBGAs/s1600/41TINACY3hL._SX384_BO1%252C204%252C203%252C200_.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F2.bp.blogspot.com%2F-frT-fstCmio%2FWWQ4zJkdX_I%2FAAAAAAAAJkw%2FZz9oaEaFjWkRa_0wqbeGEea_FdmCg_X1QCLcBGAs%2Fs200%2F41TINACY3hL._SX384_BO1%25252C204%25252C203%25252C200_.jpg"&gt;&lt;/a&gt;&lt;br&gt;
In this book, Uncle Bob talks about how to write "beautiful" code, he will focus on how you have to standardize the way you code, no matter if you are working on a team or working alone. In my opinion, this should be treated as the "Bible" for the developers. I'm sure you have worked in projects where you see there isn't any standard: variables with meaningless names, duplication of code, death code, functions that don't really do what the name says should do and so on.  &lt;/p&gt;

&lt;p&gt;No matter if you have 2 months developing or 10 years, I recommend this book for any level. Give it a try and then thanks Uncle Bob.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Imposter's Handbook&lt;/strong&gt; by Rob Conery   &lt;/p&gt;

&lt;p&gt;&lt;a href="https://2.bp.blogspot.com/-HP5uixg7ZCE/WWQ8lY4Tj3I/AAAAAAAAJk4/AHbFoW4nM28x5ReRbVdpgM1GnIyfmBD-ACLcBGAs/s1600/imposter_slide.png" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F2.bp.blogspot.com%2F-HP5uixg7ZCE%2FWWQ8lY4Tj3I%2FAAAAAAAAJk4%2FAHbFoW4nM28x5ReRbVdpgM1GnIyfmBD-ACLcBGAs%2Fs200%2Fimposter_slide.png"&gt;&lt;/a&gt;&lt;br&gt;
If you want to refresh your memory or take a deep dive into some developer content you probably have heard but you haven't paid too much attention, this book is for you. As the title says "Imposter",  the author explains why he wrote the book, because of the &lt;a href="http://vplata.com/b/2016/04/29/the-impostor-syndrome/" rel="noopener noreferrer"&gt;Imposter Syndrome&lt;/a&gt; that affects most of the developers. This book is also highly recommended if you are going to have a  job interview.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The pragmatic programmer&lt;/strong&gt; by Andy Hunt and Dave Thomas  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://4.bp.blogspot.com/-UVtIp2S8PMU/WWQ4_6e2GsI/AAAAAAAAJk0/ITK73L9HZp8bP_yiSP27D4VntlSVpQxgACLcBGAs/s1600/41BKx1AxQWL._SX396_BO1%252C204%252C203%252C200_.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F4.bp.blogspot.com%2F-UVtIp2S8PMU%2FWWQ4_6e2GsI%2FAAAAAAAAJk0%2FITK73L9HZp8bP_yiSP27D4VntlSVpQxgACLcBGAs%2Fs200%2F41BKx1AxQWL._SX396_BO1%25252C204%25252C203%25252C200_.jpg"&gt;&lt;/a&gt;&lt;br&gt;
This book is a little bit similar to the Clean Code, but with other topics that Uncle Bob doesn't touch. This book was the recommendation of one of my professor from my university. The book doesn't only show you theories but also includes a lot of materials for practicing.  &lt;/p&gt;

&lt;p&gt;I really like the content but honestly, I didn't do the exercise, if you want to get your hands dirty, this is for you. Take a look at the content table: &lt;a href="https://pragprog.com/the-pragmatic-programmer/extracts/toc" rel="noopener noreferrer"&gt; https://pragprog.com/the-pragmatic-programmer/extracts/toc&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Cracking the Coding Interview *&lt;/em&gt; by Gayle L. McDowell  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://4.bp.blogspot.com/-HxhaUuXD53s/WWQ-7m0MZ8I/AAAAAAAAJk8/fYjVYLtmyqY24s_fGBNtPEve-lTqXLvvwCLcBGAs/s1600/51F6Lwyq5JL._SX348_BO1%252C204%252C203%252C200_.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F4.bp.blogspot.com%2F-HxhaUuXD53s%2FWWQ-7m0MZ8I%2FAAAAAAAAJk8%2FfYjVYLtmyqY24s_fGBNtPEve-lTqXLvvwCLcBGAs%2Fs200%2F51F6Lwyq5JL._SX348_BO1%25252C204%25252C203%25252C200_.jpg"&gt;&lt;/a&gt;&lt;br&gt;
Every developer has been through the process of an interview to get a new job and as we know sometimes it could be a difficult time. Because of that, it would be a great help some advice from someone with more experience. Gayle L. McDowell will give you some tips on how you have to prepare for that interview, the material you should study, the dress code you have to wear etc... Also, she gives you 189 programming interview questions to practice. Her experiences of interviewing come from the big tech companies such as Google and Apple.  &lt;/p&gt;

&lt;p&gt;This is my short list, hope you like it and get the best of them. If you have others recommendation, let me a comment below.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://1.bp.blogspot.com/-cRQmEPeoPXk/WWQ2exBdHLI/AAAAAAAAJko/3nEIAx9m9ts8bLpeL3yvaDyKpfVwF6OhACEwYBhgL/s1600/67598513.jpg" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2F1.bp.blogspot.com%2F-cRQmEPeoPXk%2FWWQ2exBdHLI%2FAAAAAAAAJko%2F3nEIAx9m9ts8bLpeL3yvaDyKpfVwF6OhACEwYBhgL%2Fs1600%2F67598513.jpg"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>read</category>
      <category>cleancode</category>
    </item>
  </channel>
</rss>
